Index: /trunk/extras/xpress_i18n/portuguese-br/xpressme_modules_root/language/pt-br_utf8/blocks.php
===================================================================
--- /trunk/extras/xpress_i18n/portuguese-br/xpressme_modules_root/language/pt-br_utf8/blocks.php	(revision 532)
+++ /trunk/extras/xpress_i18n/portuguese-br/xpressme_modules_root/language/pt-br_utf8/blocks.php	(revision 533)
@@ -142,4 +142,11 @@
 	define("_MB_XP2_ENHACED_FILE","Nome do rquivo a ser exibido no bloco personalizado.");
 	define("_MB_XP2_MAKE_ENHACED_FILE","Crie o arquivo no diretório de blocos dentro do diretório do tema.");
+
+// blog_list
+	define("_MB_XP2_BLOG_ORDERBY","Ordenar blogs por");
+	define("_MB_XP2_BLOG_NAME","nome");
+	define("_MB_XP2_BLOG_COUNT","n° de posts");
+	define("_MB_XP2_BLOG_ID","ID");
+
 }
 ?>
Index: /trunk/extras/xpress_i18n/portuguese-br/xpressme_modules_root/language/pt-br_utf8/modinfo.php
===================================================================
--- /trunk/extras/xpress_i18n/portuguese-br/xpressme_modules_root/language/pt-br_utf8/modinfo.php	(revision 532)
+++ /trunk/extras/xpress_i18n/portuguese-br/xpressme_modules_root/language/pt-br_utf8/modinfo.php	(revision 533)
@@ -49,4 +49,5 @@
 	define("_MI_XP2_BLOCK_WIDGET","Widgets");
 	define("_MI_XP2_BLOCK_ENHANCED","Bloco avançado");
+	define("_MI_XP2_BLOCK_BLOG_LIST","Blogs Lista");
 	
 	// Notify Categories
Index: /trunk/extras/xpress_i18n/template/xpressme_modules_root/language/english/blocks.php
===================================================================
--- /trunk/extras/xpress_i18n/template/xpressme_modules_root/language/english/blocks.php	(revision 532)
+++ /trunk/extras/xpress_i18n/template/xpressme_modules_root/language/english/blocks.php	(revision 533)
@@ -141,4 +141,11 @@
 	define("_MB_XP2_ENHACED_FILE","Input the file name used in the custom block.");
 	define("_MB_XP2_MAKE_ENHACED_FILE","Please make the file specified here in the block directory of the theme.");
+
+// blog_list
+	define("_MB_XP2_BLOG_ORDERBY","Order of the blogs");
+	define("_MB_XP2_BLOG_NAME","name");
+	define("_MB_XP2_BLOG_COUNT","count");
+	define("_MB_XP2_BLOG_ID","ID");
+
 }
 ?>
Index: /trunk/extras/xpress_i18n/template/xpressme_modules_root/language/english/modinfo.php
===================================================================
--- /trunk/extras/xpress_i18n/template/xpressme_modules_root/language/english/modinfo.php	(revision 532)
+++ /trunk/extras/xpress_i18n/template/xpressme_modules_root/language/english/modinfo.php	(revision 533)
@@ -49,4 +49,5 @@
 	define("_MI_XP2_BLOCK_WIDGET","Widget");
 	define("_MI_XP2_BLOCK_ENHANCED","Enhanced");
+	define("_MI_XP2_BLOCK_BLOG_LIST","Blogs List");
 
 	// Notify Categories
Index: /trunk/xpressme_integration_kit/blocks/blog_list_block.php
===================================================================
--- /trunk/xpressme_integration_kit/blocks/blog_list_block.php	(revision 533)
+++ /trunk/xpressme_integration_kit/blocks/blog_list_block.php	(revision 533)
@@ -0,0 +1,74 @@
+<?php
+if( ! defined( 'XOOPS_ROOT_PATH' ) ) exit ;
+$mydirname = basename( dirname( dirname( __FILE__ ) ) ) ;
+
+eval( '
+function b_'.$mydirname.'_blog_list_show($options){
+	return _b_blog_list_show($options) ;
+}
+function b_'.$mydirname.'_blog_list_edit($options){
+	return _b_blog_list_edit($options) ;
+}
+' ) ;		
+	
+if( ! defined( 'XPRESS_BLOG_LIST_BLOCK_INCLUDED' ) ) {
+	define( 'XPRESS_BLOG_LIST_BLOCK_INCLUDED' , 1 ) ;
+
+	function _b_blog_list_edit($options)
+	{
+
+		$mydirname = empty( $options[0] ) ? 'xpress' : $options[0] ;
+		$this_template = empty( $options[1] ) ? 'db:'.$mydirname.'_blog_list_block.html' : trim( $options[1] );
+		$orderby = empty( $options[2] ) ? 'name' : $options[2] ;
+		$order = empty( $options[3] ) ? 'ASC' : $options[3] ;
+		
+		require_once(XOOPS_ROOT_PATH.'/modules/'.$mydirname.'/blocks/block_common.php');	
+
+		$form  = javascript_check();
+		$form .= "MyDirectory <input type='text' name='options[0]' value='" . $mydirname . "' /><br />\n";
+		$form .= block_template_setting($mydirname,'options[1]',htmlspecialchars($this_template,ENT_QUOTES));
+		$form .= "<br />";
+		$form .= _MB_XP2_BLOG_ORDERBY .": ";
+		$form .=  "<select name='options[2]'>";
+		if ($orderby =='name')
+			$form .=  "<option value='name' selected='selected'>". _MB_XP2_BLOG_NAME;
+		else
+			$form .=  "<option value='name'>". _MB_XP2_BLOG_NAME;
+		if ($orderby =='count')
+			$form .=  "<option value='count' selected='selected'>". _MB_XP2_BLOG_COUNT;
+		else
+			$form .=  "<option value='count'>". _MB_XP2_BLOG_COUNT;
+		if ($orderby =='ID')
+			$form .=  "<option value='ID' selected='selected'>". _MB_XP2_BLOG_ID;
+		else
+			$form .=  "<option value='ID'>". _MB_XP2_BLOG_ID;
+		$form .=  "</select><br/>";
+		
+		$form .= _MB_XP2_SORT_ORDER .": ";
+		$form .=  "<select name='options[3]'>";
+		if ($order =='ASC')
+			$form .=  "<option value='ASC' selected='selected'>" . _MB_XP2_SORT_ASC;
+		else
+			$form .=  "<option value='ASC'>" . _MB_XP2_SORT_ASC;
+		if ($order =='DESC')
+			$form .=  "<option value='DESC' selected='selected'>" . _MB_XP2_SORT_DESC;
+		else
+			$form .=  "<option value='DESC'>" . _MB_XP2_SORT_DESC;
+		$form .=  "</select><br/>";
+		
+		return $form;
+	}
+	
+	function _b_Blog_list_show($options)
+	{
+		$mydirname = empty( $options[0] ) ? 'xpress' : $options[0] ;
+		$mydirpath = XOOPS_ROOT_PATH . '/modules/' . $mydirname;
+		$block_function_name = basename( __FILE__ );
+		
+		require_once $mydirpath.'/include/xpress_block_render.php';
+		return xpress_block_render($mydirname,$block_function_name,$options);
+	}
+	
+}
+
+?>
Index: /trunk/xpressme_integration_kit/include/xpress_templates_make.php
===================================================================
--- /trunk/xpressme_integration_kit/include/xpress_templates_make.php	(revision 532)
+++ /trunk/xpressme_integration_kit/include/xpress_templates_make.php	(revision 533)
@@ -107,4 +107,5 @@
 		'widget_block.html' ,
 		'enhanced_block.html' ,
+		'blog_list_block.html' ,
 		'index.html',
 	);
Index: /trunk/xpressme_integration_kit/language/english/blocks.php
===================================================================
--- /trunk/xpressme_integration_kit/language/english/blocks.php	(revision 532)
+++ /trunk/xpressme_integration_kit/language/english/blocks.php	(revision 533)
@@ -141,4 +141,11 @@
 	define("_MB_XP2_ENHACED_FILE","Input the file name used in the custom block.");
 	define("_MB_XP2_MAKE_ENHACED_FILE","Please make the file specified here in the block directory of the theme.");
+
+// blog_list
+	define("_MB_XP2_BLOG_ORDERBY","Order of the blogs");
+	define("_MB_XP2_BLOG_NAME","name");
+	define("_MB_XP2_BLOG_COUNT","count");
+	define("_MB_XP2_BLOG_ID","ID");
+
 }
 ?>
Index: /trunk/xpressme_integration_kit/language/english/modinfo.php
===================================================================
--- /trunk/xpressme_integration_kit/language/english/modinfo.php	(revision 532)
+++ /trunk/xpressme_integration_kit/language/english/modinfo.php	(revision 533)
@@ -49,4 +49,5 @@
 	define("_MI_XP2_BLOCK_WIDGET","Widget");
 	define("_MI_XP2_BLOCK_ENHANCED","Enhanced");
+	define("_MI_XP2_BLOCK_BLOG_LIST","Blogs List");
 
 	// Notify Categories
Index: /trunk/xpressme_integration_kit/language/ja_utf8/blocks.php
===================================================================
--- /trunk/xpressme_integration_kit/language/ja_utf8/blocks.php	(revision 532)
+++ /trunk/xpressme_integration_kit/language/ja_utf8/blocks.php	(revision 533)
@@ -142,4 +142,11 @@
 	define("_MB_XP2_ENHACED_FILE","カスタムブロックを表示するファイル名を入力してください。");
 	define("_MB_XP2_MAKE_ENHACED_FILE","ここで指定したファイルをテーマ内のブロックディレクトリーに作成してください。");
+
+// blog_list
+	define("_MB_XP2_BLOG_ORDERBY","ブログのソート項目");
+	define("_MB_XP2_BLOG_NAME","ブログ名");
+	define("_MB_XP2_BLOG_COUNT","ブログの投稿数");
+	define("_MB_XP2_BLOG_ID","ブログID");
+
 }
 ?>
Index: /trunk/xpressme_integration_kit/language/ja_utf8/modinfo.php
===================================================================
--- /trunk/xpressme_integration_kit/language/ja_utf8/modinfo.php	(revision 532)
+++ /trunk/xpressme_integration_kit/language/ja_utf8/modinfo.php	(revision 533)
@@ -49,4 +49,5 @@
 	define("_MI_XP2_BLOCK_WIDGET","ウィジェット");
 	define("_MI_XP2_BLOCK_ENHANCED","拡張ブロック");
+	define("_MI_XP2_BLOCK_BLOG_LIST","ブログリスト");
 	
 	// Notify Categories
Index: /trunk/xpressme_integration_kit/language/japanese/blocks.php
===================================================================
--- /trunk/xpressme_integration_kit/language/japanese/blocks.php	(revision 532)
+++ /trunk/xpressme_integration_kit/language/japanese/blocks.php	(revision 533)
@@ -141,4 +141,11 @@
 	define("_MB_XP2_ENHACED_FILE","¥«¥¹¥¿¥à¥Ö¥í¥Ã¥¯¤òÉ½¼¨¤¹¤ë¥Õ¥¡¥¤¥ëÌ¾¤òÆþÎÏ¤·¤Æ¤¯¤À¤µ¤¤¡£");
 	define("_MB_XP2_MAKE_ENHACED_FILE","¤³¤³¤Ç»ØÄê¤·¤¿¥Õ¥¡¥¤¥ë¤ò¥Æ¡¼¥ÞÆâ¤Î¥Ö¥í¥Ã¥¯¥Ç¥£¥ì¥¯¥È¥ê¡¼¤ËºîÀ®¤·¤Æ¤¯¤À¤µ¤¤¡£");
+
+// blog_list
+	define("_MB_XP2_BLOG_ORDERBY","¥Ö¥í¥°¤Î¥½¡¼¥È¹àÌÜ");
+	define("_MB_XP2_BLOG_NAME","¥Ö¥í¥°Ì¾");
+	define("_MB_XP2_BLOG_COUNT","¥Ö¥í¥°¤ÎÅê¹Æ¿ô");
+	define("_MB_XP2_BLOG_ID","¥Ö¥í¥°ID");
+
 }
 ?>
Index: /trunk/xpressme_integration_kit/language/japanese/modinfo.php
===================================================================
--- /trunk/xpressme_integration_kit/language/japanese/modinfo.php	(revision 532)
+++ /trunk/xpressme_integration_kit/language/japanese/modinfo.php	(revision 533)
@@ -49,4 +49,5 @@
 	define("_MI_XP2_BLOCK_WIDGET","¥¦¥£¥¸¥§¥Ã¥È");
 	define("_MI_XP2_BLOCK_ENHANCED","³ÈÄ¥¥Ö¥í¥Ã¥¯");
+	define("_MI_XP2_BLOCK_BLOG_LIST","¥Ö¥í¥°¥ê¥¹¥È");
 	
 	// Notify Categories
Index: /trunk/xpressme_integration_kit/templates/source/blog_list_block.html
===================================================================
--- /trunk/xpressme_integration_kit/templates/source/blog_list_block.html	(revision 533)
+++ /trunk/xpressme_integration_kit/templates/source/blog_list_block.html	(revision 533)
@@ -0,0 +1,26 @@
+<{* **************************  usage ****************************
+ 	The template tag of the following list can be used. 
+ 		<{$block.err_message}> 					// When the block cannot be displayed, this outputs the reason. Please do not delete it.
+		<{$block.data_count}>					// The number of contents is displayed. 
+		<{$block.contents}>						// Data array of contents. 
+		// Examples of <{$block.contents}>
+		<{foreach from=$block.contents item=content}>	// Loop
+		<{$content.blog_id}>					// Displays the numeric ID of the blog.
+		<{$content.blog_name}>					// Displays the blog's link, where the link text value is the blog name.
+		<{$content.post_count}>			// Displays the modified date of a post. Format at date set by general setting of Wordpress.
+		<{/foreach}>							// End of Loop
+************************* End of usage ************************ *}>
+<{* Start Template *}>
+
+<div class="xpress_block">
+	<{$block.err_message}>
+	<div class="xpress_blog_list_block">
+		<ul>
+		<{foreach from=$block.contents item=content}>
+			<li>
+			<{$content.blog_name}>&nbsp;(<{$content.post_count}>)
+			</li>
+		<{/foreach}>
+		</ul>
+	</div>
+</div>
Index: /trunk/xpressme_integration_kit/wp-content/themes/xpress_default/blocks/blog_list_block_theme.php
===================================================================
--- /trunk/xpressme_integration_kit/wp-content/themes/xpress_default/blocks/blog_list_block_theme.php	(revision 533)
+++ /trunk/xpressme_integration_kit/wp-content/themes/xpress_default/blocks/blog_list_block_theme.php	(revision 533)
@@ -0,0 +1,92 @@
+<?php
+// Block Version: 1.0
+function blog_list_block($options)
+{
+	$mydirname = empty( $options[0] ) ? 'xpress' : $options[0] ;
+	$this_template = empty( $options[1] ) ? 'db:'.$mydirname.'_block_category.html' : trim( $options[1] );
+	$orderby = empty( $options[2] ) ? 'name' : $options[2] ;
+	$order = empty( $options[3] ) ? 'ASC' : $options[3] ;
+
+	$blogs = get_blog_list(0,'all');
+	$data = array();
+	foreach ($blogs AS $blog) {
+		$url =  get_blog_option($blog['blog_id'],'siteurl');
+		$blog_name = get_blog_option( $blog['blog_id'], 'blogname' );
+		$blog_link = "<a href=\" $url \"> $blog_name </a>";
+		$blog_id = $blog['blog_id'];
+		$post_count = $blog['postcount'];
+		$last_post_date = '';
+		$last_post_time = '';
+		$last_post_date_time = '';
+			
+		$row_data = array(
+			'blog_id'		=> $blog_id ,
+			'blog_name'	=> $blog_link ,
+			'last_post_date' => $last_post_date ,
+			'last_post_time' => $last_post_time ,
+			'post_date_time' => $last_post_date_time ,
+			'last_post_date_time' => $post_modified_date ,
+			'post_count' => $post_count
+		);
+		$data[] = $row_data;
+	}
+	if (strcmp($order,'ASC') == 0){
+		switch($orderby){
+			case 'count':
+				usort($data, "r_post_count_cmp");
+				break;
+			case 'ID' :
+				usort($data, "r_blog_id_cmp");
+				break;
+			default :
+				usort($data, "r_blog_name_cmp");
+		}
+	} else {
+		switch($orderby){
+			case 'count':
+				usort($data, "post_count_cmp");
+				break;
+			case 'ID' :
+				usort($data, "blog_id_cmp");
+				break;
+			default :
+				usort($data, "blog_name_cmp");
+		}
+	}
+	
+	$block = array();
+	$item_no = 0;	
+	foreach ($data AS $row) {
+		$block['contents']['item'.$item_no] = $row;
+		$item_no++;
+	}// end of foreach
+	$block['data_count'] = $item_no;  //xml unserialise error
+	return $block ;
+}
+function blog_name_cmp($a, $b)
+{
+    return - strcasecmp($a["blog_name"], $b["blog_name"]);
+}
+function blog_id_cmp($a, $b)
+{
+    return $b["blog_id"] - $a["blog_id"];
+}
+function post_count_cmp($a, $b)
+{
+    return $b["post_count"] - $a["post_count"];
+}
+
+function r_blog_name_cmp($a, $b)
+{
+    return strcasecmp($a["blog_name"], $b["blog_name"]);
+}
+function r_blog_id_cmp($a, $b)
+{
+    return $a["blog_id"] - $b["blog_id"];
+}
+function r_post_count_cmp($a, $b)
+{
+    return $a["post_count"] - $b["post_count"];
+}
+
+?>
Index: /trunk/xpressme_integration_kit/xoops_version.php
===================================================================
--- /trunk/xpressme_integration_kit/xoops_version.php	(revision 532)
+++ /trunk/xpressme_integration_kit/xoops_version.php	(revision 533)
@@ -347,4 +347,17 @@
 );
 
+if (wp_version_compare($wp_version, '>=','2.9')){
+	$b_no++;
+	$modversion['blocks'][$b_no] = array(
+		'file' 			=> 'blog_list_block.php' ,
+		'name' 			=> constant('_MI_XP2_BLOCK_BLOG_LIST') ,
+		'description'	=> '' ,
+		'show_func' 	=> "b_". $mydirname . "_blog_list_show" ,
+		'edit_func' 	=> "b_". $mydirname . "_blog_list_edit" ,
+		'options'		=> $mydirname. '||name|ASC' ,
+		'can_clone'		=> false ,
+		'func_num'		=> $b_no,
+	);
+}
 
 // Notification
