Index: branches/XPressMU/xpressme_integration_kit/include/add_xpress_process.php
===================================================================
--- branches/XPressMU/xpressme_integration_kit/include/add_xpress_process.php	(revision 428)
+++ branches/XPressMU/xpressme_integration_kit/include/add_xpress_process.php	(revision 451)
@@ -14,4 +14,5 @@
 
 	require_once $xoops_config->xoops_mainfile_path; //It is necessary to execute it for the user attestation before wp-settings.php. 
+	unset($offset);
 	require_once(ABSPATH.'wp-settings.php');
 	if (!is_object($xoopsUser)){	// before login auth cookie clear
Index: branches/XPressMU/xpressme_integration_kit/include/xpress_block_render.php
===================================================================
--- branches/XPressMU/xpressme_integration_kit/include/xpress_block_render.php	(revision 428)
+++ branches/XPressMU/xpressme_integration_kit/include/xpress_block_render.php	(revision 451)
@@ -137,15 +137,4 @@
 	}
 	
-	function get_block_file_path($mydirname,$file_name)
-	{
-		global $xoops_config;
-		$mydirpath = $xoops_config->xoops_root_path . '/modules/' . $mydirname;
-		$select_theme = get_xpress_theme_name($mydirname);
-		$block_file = $mydirpath . '/wp-content/themes/' . $select_theme . '/blocks/' . $file_name;
-
-		if (!file_exists($block_file))
-			$block_file =  $xoops_config->xoops_root_path . '/modules/' .$mydirname . '/wp-content/themes/xpress_default/blocks/' . $file_name;
-		return $block_file;
-	}
 	
     function xpress_block_cache_found($mydirname,$block_name)
@@ -184,6 +173,8 @@
 		if (strstr($call_url,$this_url)){			
 			$block_theme_file = get_block_file_path($mydirname,$inc_theme_file_name);
-			require_once $block_theme_file;
+			require_once $block_theme_file['file_path'];
 			$block = $call_theme_function_name($options);		//The block name and the called function name should be assumed to be the same name. 
+			if (!empty($block_theme_file['error']))
+				$block['err_message'] = $block_theme_file['error'];
 		} else {
 			if (xpress_block_cache_found($mydirname,$cache_title. $blockID)){
@@ -227,8 +218,10 @@
 
 			$block_theme_file = get_block_file_path($mydirname,$inc_theme_file_name);
-			require_once $block_theme_file;
+			require_once $block_theme_file['file_path'];
 			$render = $call_theme_function_name($options);		//The block name and the called function name should be assumed to be the same name. 			
 			$render_array['block'] = $render;
 			$render_array['block']['options'] = $block->options;
+			if (!empty($block_theme_file['error']))
+				$render_array['block']['err_message'] = $block_theme_file['error'];
 			if (xpress_block_cache_found($mydirname,$cache_title. $blockID)){	
 				$render_serialize = xpress_XML_serialize($render_array);
@@ -295,5 +288,5 @@
 		}
 	}
-
+	
 }	
 ?>
Index: branches/XPressMU/xpressme_integration_kit/include/xpress_breadcrumbs.php
===================================================================
--- branches/XPressMU/xpressme_integration_kit/include/xpress_breadcrumbs.php	(revision 428)
+++ branches/XPressMU/xpressme_integration_kit/include/xpress_breadcrumbs.php	(revision 451)
@@ -1,3 +1,4 @@
 <?php
+function get_breadcrumbs(){
 //	$xoops_breadcrumbs[0] = array( 'name' => get_bloginfo('description') , 'url' => get_settings('home'));
 	$xoops_breadcrumbs[0] = array( 'name' => get_bloginfo('name') , 'url' => get_settings('home'));
@@ -46,4 +47,5 @@
 		}
 	}
-	$xoopsTpl->assign('xoops_breadcrumbs', $xoops_breadcrumbs);
+	return $xoops_breadcrumbs;
+}
 ?>
Index: branches/XPressMU/xpressme_integration_kit/include/xpress_render.php
===================================================================
--- branches/XPressMU/xpressme_integration_kit/include/xpress_render.php	(revision 428)
+++ branches/XPressMU/xpressme_integration_kit/include/xpress_render.php	(revision 451)
@@ -11,7 +11,8 @@
 
 	$pattern = "<head[^>]*?>(.*)<\/head>";
-	preg_match("/".$pattern."/s",  $body_cut, $head_matches);
-	$head_str = $head_matches[1];
-	
+	$head_str = '';
+	if (preg_match("/".$pattern."/s",  $body_cut, $head_matches)){
+		$head_str = $head_matches[1];
+	}
 	$pattern = '<head[^>]*?>';
 	$head_str = preg_replace("/".$pattern."/s" , '' , $head_str);
@@ -51,6 +52,8 @@
 {
 	$pattern = '<title[^>]*?>(.*)<\s*\/\s*title\s*>';
-	preg_match("/".$pattern."/i",  $contents, $head_matches);
-	$title_str = $head_matches[1];
+	$title_str = '';
+	if (preg_match("/".$pattern."/i",  $contents, $head_matches)){
+		$title_str = $head_matches[1];
+	}
 	return $title_str;
 }
@@ -59,6 +62,8 @@
 {
 	$pattern = '<\s*meta\s+name\s*=\s*["\']' . $name . '["\']\s*content\s*=\s*[\'"](.*)[\'"]\s*\/\s*>';
-	preg_match("/".$pattern."/i",  $contents, $head_matches);
-	$meta = $head_matches[1];
+	$meta = '';
+	if (preg_match("/".$pattern."/i",  $contents, $head_matches)){
+		$meta = @$head_matches[1];
+	}
 	return $meta;
 }
@@ -89,7 +94,8 @@
 	$xpess_config = new XPressME_Class();
 	$pattern = "<body[^>]*?>(.*)<\/body>";
-	preg_match("/".$pattern."/s",  $contents, $body_matches);
-	$body = $body_matches[1];
-
+	$body = '';
+	if(preg_match("/".$pattern."/s",  $contents, $body_matches)){
+		$body = $body_matches[1];
+	}
 	if (!$xpess_config->is_theme_sidebar_disp){
 		$side_panel = get_sidebar_rander();
@@ -151,8 +157,10 @@
 	
 	require_once( ABSPATH .'/include/xpress_breadcrumbs.php' );
-	
+	$xoops_breadcrumbs = get_breadcrumbs();
+
 	xpress_remake_global_for_permlink();
 	$mydirname = basename(dirname(dirname(__FILE__)));
 	include $xoops_config->xoops_root_path ."/header.php";
+	$xoopsTpl->assign('xoops_breadcrumbs', $xoops_breadcrumbs);
 	$xoopsTpl->assign('xoops_module_header', get_xpress_module_header($contents));
 	$page_title = $GLOBALS["xoopsModule"]->getVar("name"). ' &raquo;'. get_xpress_title($contents);
@@ -216,6 +224,6 @@
 	$xpress_data['body_contents'] = get_body($contents);
 	// used $GLOBALS. becose xpress_left_arrow_post_link() and xpress_right_arrow_post_link() is other loop in this position
-	$xpress_data['left_post_link'] = $GLOBALS['left_arrow_post_link'];
-	$xpress_data['right_post_link'] = $GLOBALS['right_arrow_post_link'];
+	$xpress_data['left_post_link'] = @$GLOBALS['left_arrow_post_link'];
+	$xpress_data['right_post_link'] = @$GLOBALS['right_arrow_post_link'];
 	$xpress_data['left_posts_link'] =  str_replace('&laquo;','',xpress_left_arrow_posts_link('echo=0'));
 	$xpress_data['right_posts_link'] = str_replace('&raquo;','',xpress_right_arrow_posts_link('echo=0'));
