WordPress管理画面 ロールによって『公開』ボタンを制御


WordPress管理画面の『公開』『更新』ボタンを制御する方法を記載します。、例として『1度公開した記事については、『更新』ボタンを表示しない』場合です。


/*----------------------------------------------------*/
/* 【管理画面】編集者・寄稿者は公開ページ「更新」ボタン非表示
/*----------------------------------------------------*/
add_action('admin_print_styles', 'admin_preview_css_custom');
function admin_preview_css_custom() {
global $post;

$ID = $post->ID;

if(empty($ID))return ; // update post
   $post = get_post($ID); // 現POST情報

// 「公開中」した記事には「更新」ボタンを表示させない
   if($post->post_status == 'publish'){
     echo '<style>input#publish {display: none;}</style>';
   }
 }

admin_print_styles のアクションフィルタは管理画面のStyle設置時のフィルターのようです。これで1度公開した記事は更新できなくなります。。。管理者以外に適用する場合は、管理者かどうか判断して適用してください。


global $current_user; // 現在のユーザ

$is_admin = in_array('administrator', $current_user->roles);


投稿者: cova

ザムウ取締役CTO。2010年に大阪から香川へ移住しフリーランスSEとして活動をはじめる。領域としてWeb系から組込み系+サーバ構築。中小企業基盤整備機構にて中小企業の経営支援と、小学校にてICT講習を務める。2021年現在、子育て支援NPO理事、短大専任講師を兼任する。 【主な資格】経営学修士(MBA)修了、国家試験応用情報技術者、国内初の夫婦ITコーディネーター。 その他、2021年4月:2児(3歳・0歳)の父に就任。 #赤ちゃんから学ぶ経営学 を配信。

「WordPress管理画面 ロールによって『公開』ボタンを制御」への1件のフィードバック

コメントを残す

メールアドレスが公開されることはありません。