WordPressのテーマやプラグイン開発・JavaScriptなどのナレッジブログ

WordPressの投稿一覧で新規追加ボタンや行の編集などを非表示にする方法

WordPressの投稿一覧で新規追加ボタンや行の編集などを非表示にする方法

新規追加ボタンの非表示

新規追加ボタンは、admin_enqueue_scriptsフックポイントで、CSSを出力して非表示にする方法で実装します。

function hide_post_new_button( $hook ) {
  if ( $hook === 'edit.php' || $hook === 'post.php' ){
    echo '';
  }
}
add_action( 'admin_enqueue_scripts', 'hide_post_new_button' );

編集・クイック編集・ゴミ箱へ移動・表示の項目を非表示

続いて、投稿情報(行)のカスタマイズ。これはpost_row_actionsというフィルターフックで、編集・クイック編集・ゴミ箱へ移動・表示の各項目を引数で取得できるので非表示にしたい要素をunset()で配列から削除します。そしてそれをreturnします。

function hide_row_post( $actions, $post ) {
  unset( $actions['edit'] );                 // 編集
  unset( $actions['inline hide-if-no-js'] ); // クイック編集
  unset( $actions['trash'] );                // ゴミ箱へ移動
  unset( $actions['view'] );                 // 表示

  return $actions;
}
add_filter( 'post_row_actions', 'hide_row_post', 10, 2 );

できた!\(^o^)/
第二引数の$postで、WP_Postのインスタンが取得できるので、特定のIDやユーザーなどの時に非表示なんていうのもできるな。便利。

参考サイト

Developer Resources: admin_enqueue_scripts
https://developer.wordpress.org/reference/hooks/admin_enqueue_scripts/
Developer Resources: post_row_actions
https://developer.wordpress.org/reference/hooks/post_row_actions/

Author:  高見 和也

株式会社まなびと」の代表取締役はじめました。宮崎県で活動するフロントエンドエンジニア。フロントエンド業の傍らWordPressのプラグイン開発や公式テーマレビュー、Webマーケティングやプログラミング教室の講師などのいろいろなお仕事をしてます。お仕事相談受付中。JSerでPHPer。

同じカテゴリーの記事

コメントを残す

two + 18 =

WordPress制作関連記事

最近の投稿

イベント参加レポート

イベント動画レポート

記事カテゴリー

月別集計

投稿カレンダー

2025年1月
 1234
567891011
12131415161718
19202122232425
262728293031 

最近のコメント

投稿タグ

メタ情報