特定のメニュー位置のナビゲーションメニューの管理画面から特定の入力フィールドを削除したいです。私はフロントエンド出力をフィルタするためにフィルタを使いましたが、管理出力のためには使っていません。この目的のために利用可能なフィルタはありますか?
たとえば、メニューが 'position-x'で使用されている場合に限り、メニュー項目にtitle
属性を追加するオプションを削除したいと思います。
nav_menu_link_attributes
やwp_nav_menu_args
のようなフィルターはすべてフロントエンドの出力をフィルターするようです。
これらのフィールドはWalker_Nav_Menu_Edit::start_el()
に作成されています。それらを変更または削除するには、Walker_Nav_Menu_Edit
を拡張して他のフィールドまたはそれ以下のフィールドを使用するカスタムウォーカー( を別のウォーカー の例)として作成します。
それからwp_edit_nav_menu_walker
をフィルターにかけ、あなたの歩行者のクラス名を返します。
擬似コード
class Walker_Nav_Menu_Edit_Simple extends Walker_Nav_Menu_Edit {
public function start_el( &$output, $item, $depth = 0, $args = array(), $id = 0 )
{ /* Magic here. */}
}
add_filter( 'wp_edit_nav_menu_walker', function() {
return 'Walker_Nav_Menu_Edit_Simple';
});