WordPressマルチサイトのサイト一覧画面にblog IDを追加する

以下のサイトにコードが掲載されていました。

View Blog ID in WordPress Multisite

こんな感じでプラグインとして使えば良いようです。

<?php
/*
Plugin Name: Add Blog ID for Multisite
Plugin URI: http://wpengineer.com/2188/view-blog-id-in-wordpress-multisite/
Description: ネットワーク管理者のサイト一覧画面に各ブログのIDを追加します。
Author: WPengineer.com
Version: 1.0
Author URI: http://wpengineer.com/
*/
class Add_Blog_ID {
	public static function init() {
		$class = __CLASS__ ;
		if ( empty( $GLOBALS[ $class ] ) )
			$GLOBALS[ $class ] = new $class;
	}
	public function __construct() {
		add_filter( 'wpmu_blogs_columns', array( $this, 'get_id' ) );
		add_action( 'manage_sites_custom_column', array( $this, 'add_columns' ), 10, 2 );
		add_action( 'manage_blogs_custom_column', array( $this, 'add_columns' ), 10, 2 );
		add_action( 'admin_footer', array( $this, 'add_style' ) );
	}
	public function add_columns( $column_name, $blog_id ) {
		if ( 'blog_id' === $column_name )
			echo $blog_id;
		return $column_name;
	}
	// Add in a column header
	public function get_id( $columns ) {
		$columns['blog_id'] = __('ID');
		return $columns;
	}
	public function add_style() {
		echo '<style>#blog_id { width:7%; }</style>';
	}
}
add_action( 'init', array( 'Add_Blog_ID', 'init' ) );
?>

上記のコードを「add_blog_id.php」とでも名前をつけて保存し、
「/wp-content/mu-plugins/」以下にアップロードすればネットワーク管理者のサイト一覧画面にblogIDのカラムが追加されます。(mu-pluginsディレクトリが無い場合は追加してください。)

今日が人生最後の日だとしたら

スティーブ・ジョブズのスピーチで有名なアレをJQueryとPHPとSQLite3で簡単なサービスにしました。

 

【人生最後の日  http://alpha-version.com/last-day/

 

最初は一日ごとに記録が付けられるようなカレンダー形式にしようと思ってましたが、気が滅入りそうだし認証部分の実装が面倒くさいので止めました。

多言語化も考えてましたが、ドメインごとに自動判定したり、タイムゾーンの設定や判定も考慮すると非常に面倒くさいのでこれも中止です。

 

ブラウザのホーム画面にでも設定して日々焦燥感に駆られる素敵な日常を送って下さい。

超個人的な備忘録:Html KickStartをWordPressテーマに組み込みtheme my loginを有効にするとIEではエラーメッセージが表示されない

【原因】

kickstart.js に組み込まれている 「Placeholder plugin for jQuery」が原因っぽい。118行目付近の以下のjQueryを無効化すると正常になる。

//$('input, textarea').placeholder();

【追記:2012/02/15】

twitterのプロフィールウィジェットを組み込むとkickstart.jsの以下のコードが引っかかってページ自体が表示されなくなる。(バージョン0.91beta)

$('[class*=col_]').addClass('column').wrapInner('
');

上記のコードはHtml KickStartのレイアウトシステムの基盤であるため、プレースホルダーのように無効化することは困難。レイアウト外に書き込めばtwitterのウィジェットは正常に動作するが、レイアウトの修正が非常に面倒。

そのため、twitterのプロフィールウィジェットのみを表示するhtmlファイルを用意してiframeで読み込む事で対処した。

IT起業アカデミア