WordPressの管理画面に設定したアイキャッチを表示させる方法

WordPressではアイキャッチ画像を設定することができます。トップページやシングルページ、関連記事などのサムネイル画像として表示されます。
でも管理画面の投稿一覧には表示されないので、どこまでアイキャッチを設定したのか把握しにくいんですよね。
簡単に管理画面にアイキャッチを表示させる方法がありましたので紹介します。
sponsored link
プラグインをインストールする
今回紹介する方法でアイキャッチを管理画面に表示させるとこのようになります。
タイトルの左側に表示されるので見やすくなりますね。
今回使用するプラグインとコードはホホ冢次男さん(@hayashikejinan)が作成されたものです。ありがとうございます!まるっと使わせてもらいます。
プラグインはWordPressで公式に配布されているものではないのでリンク先の記事をしっかり読んで自己責任でお願いします。
セキュリティ面で心配な方は後述するfunctions.phpを使用する方法を試してみてください。プラグインは有効化するだけでOKです。
functions.phpに追記する
functions.phpに以下のコードをコピペしてもアイキャッチを表示させることができます。(コードはホホ冢次男さんのものをそのままお借りしました)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
// カラムタイトルにフック add_filter( 'manage_posts_columns', 'add_thumb_columns' ); // 各カラム行にフック add_filter( 'manage_posts_custom_column', 'add_thumb_column', 10, 2 ); /** * 投稿一覧の行タイトルに thumb を配列キーとした dashicon を追加 * * @param $columns * * @return mixed */ function add_thumb_columns( $columns ) { // サムネイル用のスタイル echo '<style>.column-thumb{width:80px;}</style>'; // サムネイルをカラム先頭に追加するため array_reverse で挟み込んで追加 $columns = array_reverse( $columns, true ); $columns['thumb'] = '<div class="dashicons dashicons-format-image"></div>'; $columns = array_reverse( $columns, true ); return $columns; } /** * 投稿一覧の各行にサムネイル出力 * * @param $column * @param $post_id */ function add_thumb_column( $column, $post_id ) { switch ( $column ) { // 行のキーが thumb なら アイキャッチ を出力 case 'thumb': // アイキャッチがある場合 if ( $thumb = get_the_post_thumbnail( $post_id, array( 80, 80 ) ) ) { // 編集権限、ゴミ箱内かどうかの判別用変数 $user_can_edit = current_user_can( 'edit_post', $post_id ); $is_trash = isset( $_REQUEST['status'] ) && 'trash' == $_REQUEST['status']; // 編集権限があり、ゴミ箱でないなら画像をリンクつきに if ( ! $is_trash || $user_can_edit ) { $thumb = sprintf( '%s', get_edit_post_link( $post_id, true ), esc_attr( sprintf( __( 'Edit “%s”', 'default' ), _draft_or_post_title() ) ), $thumb ); } // 出力 echo $thumb; } break; default: break; } } |
functions.phpのいちばん下にある終了タグの?>の直前に記述します。
このままコピペするとアイキャッチ画像の表示サイズは長辺80pxです。変更したい場合は以下のコードを検索、80を任意の値(px)に書き換えてください。
1 2 |
// アイキャッチがある場合 if ( $thumb = get_the_post_thumbnail( $post_id, array( 80, 80 ) ) ) { |
WordPressのバージョンが3.8未満だとコピペするだけではうまく動作しないようですので、注意してください。
僕の場合は子テーマに貼り付けて記事内の関連記事と同じ75pxに指定しました。
管理画面はよく使うことになるので自分が使いやすいようにしておくと管理しやすくなります。
functions.phpを変更するのでバックアップを取って慎重に作業してくださいね。