是否可以在管理中为导航菜单项的输出添加过滤器?

时间:2014-04-14 作者:tommyf

我想删除特定菜单位置导航菜单管理屏幕上的某些输入字段。我使用过滤器来过滤前端输出,但不用于管理输出。是否有可用于此目的的过滤器?

例如,我想删除添加title 属性设置为菜单项,仅当菜单用于“position-x”时。

过滤器,如nav_menu_link_attributeswp_nav_menu_args 所有这些似乎都是为了过滤前端输出。

1 个回复
最合适的回答,由SO网友:fuxia 整理而成

这些字段是在中创建的Walker_Nav_Menu_Edit::start_el(). 要更改或删除它们,请创建自定义walker(example for another walker) 这延伸了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\';
});

结束

相关推荐

Filters on Login Page

我正在尝试使用修改登录页built in filters. add\\u操作按预期工作,但我无法使筛选器工作。这是我函数中的代码。php:add_filter( \'login_form_top\', \'filter_top_login\' ); function filter_top_login( $content ) { return \'This is what I want it to say!\'; } 但当我加载wp登录时,它似乎没有做任何