私はバックエンドから管理者以外のユーザーのいくつかのメニュー項目を削除する小さなプラグインを書いていて、コードで優先度を指定しない限り、私のプラグインは何もしないことがわかりました:
add_action('admin_bar_menu', 'remove_toolbar_items', 999);
なしでは999
、コードは私のremove_toolbar_items
関数の項目を削除せず、それでうまく機能します:
function remove_toolbar_items( $wp_admin_bar ) {
if ( !current_user_can( 'manage_options' ) ) {
$wp_admin_bar->remove_node('new-post');
$wp_admin_bar->remove_node('comments');
}
}
優先度パラメータの状態に関するドキュメント:
特定のアクションに関連付けられた関数が実行される順序を指定するために使用されます。小さい番号は以前の実行に対応し、同じ優先順位の関数は、アクションに追加された順に実行されます。デフォルト値:10
ただし、どの優先順位を使用するかを決定する方法を説明するものは見つかりませんでした。いつ優先度を使用するか、どの優先度を使用するかをどのように決定しますか?優先度パラメータをいじっていなければ、何時間も頭を悩ませていたような気がします。
また、デフォルトの優先順位は10であることがわかりましたが、既知の優先順位値の範囲はありますか?