WordPressのバージョンが上がるごとに複雑化するダッシュボードである。できることが増えて便利な反面、ユーザには分かりづらくなってくる。ダッシュボードにログインすると「ワーッ!」ってなっちゃうというのだ。
mixi日記レベルと思っていたWordPressの更新作業であるが、ユーザはそんな気持ちをかかえていたのか。ダッシュボードが地味すぎるのがダメなのか?このように訴えるクライアントが続けて2件あったため、なんとかしようと思い立った。
そこで思い出したのが、年末に見せていただいた「WordCamp Tokyo アンケート集計サイト」だ。投稿画面を大胆にカスタマイズして、アンケート集計に撤したものである。そこにはチェックボックスとラジオボタンが並び、本文フィールドは消えていた。見たときには、こんなことができるんだ!使い道がわからないけどなんかかっこいい!ぐらいに思っていた。いざ、アレを使うとき。
まずは、投稿画面の抜粋やディスカッション、サイドバーのカテゴリ、タグなどわかりずらくて不要と思われるボックスを削除する。削除のタイミングは、ボックスを追加する際と同じアクションフッック add_meta_boxes を利用する。
[PHP]
add_action(‘add_meta_boxes’, ’my_add_meta_boxes’, 10, 2 );
function my_add_meta_boxes($post_type, $post) {
$meta_boxes = array(
‘side’ => array( ‘tagsdiv-post_tag’, ‘categorydiv’, ‘durationdiv’, ‘postimagediv’, ‘formatdiv’ ),
‘normal’ => array( ‘trackbacksdiv’, ‘commentstatusdiv’, ‘commentsdiv’, ‘postexcerpt’, ‘postcustom’, ‘slugdiv’, ‘authordiv’, ‘revisionsdiv’ )
);
foreach ( $meta_boxes as $position => $boxes ) {
foreach ( $boxes as $box ) {
remove_meta_box( $box, $post_type, $position );
}
}
}
[/PHP]
かなりすっきりした!
さらに本文フィールドを消す場合には、別のアクションフック init を利用する。
[PHP]
add_action( ‘init’ , ‘my_remove_post_editor_support’ );
function my_remove_post_editor_support() {
remove_post_type_support( ‘post’, ‘editor’ );
}
[/PHP]
こうなるともうなんでWordPressでやるの?って感じになってくる。好きだからよいのだ。
[…] 先日の投稿画面の不要なボックスを削除でディスカッションの欄を非表示にしたはいいものの、これでは投稿へのコメントが不許可になってしまうことがわかった。 投稿へのコメントを強制的に許可するようにした。 […]