add_submenu_page 在 WordPress 中
add_submenu_page in WordPress
在 WooCommerce 中使用 add_submenu_page
创建新子菜单时,我收到“无法修改 header 信息 - header 已发送”。 add_submenu_page
如下:
public function slp_add_menu_item() {
add_submenu_page(
'woocommerce',
'Shipping Locations',
'Shipping Locations',
'manage_options',
'slp_add_states',
array( $this->slp_settings_page() ),
);
}
将其更改为以下内容会删除“无法修改 header 信息 - header 已发送”错误,但无法正确呈现回调函数:
public function slp_add_menu_item() {
add_submenu_page(
'woocommerce',
'Shipping Locations',
'Shipping Locations',
'manage_options',
'slp_add_states',
array( $this, 'slp_settings_page' ),
);
}
slp_settings_page
回调函数反过来呈现 WP_List_Table
的实例(尽管在上面的屏幕截图中出现,它不是分类法)。 add_submenu_page
是通过 admin_menu
挂钩添加的,没有任何优先级。
对这里发生的事情有什么想法吗?我似乎无法理解它:(
第一个代码块是错误的。根据文档,最后一个参数应该是可调用的。第一个块直接执行函数并将结果存储在数组中(顺便说一下,结果是null
)。因此,将其作为可调用对象传递是行不通的。
我不知道为什么第二个块不能正常工作。也许代码块在错误的时间执行,也许其他地方不对劲。
在 WooCommerce 中使用 add_submenu_page
创建新子菜单时,我收到“无法修改 header 信息 - header 已发送”。 add_submenu_page
如下:
public function slp_add_menu_item() {
add_submenu_page(
'woocommerce',
'Shipping Locations',
'Shipping Locations',
'manage_options',
'slp_add_states',
array( $this->slp_settings_page() ),
);
}
将其更改为以下内容会删除“无法修改 header 信息 - header 已发送”错误,但无法正确呈现回调函数:
public function slp_add_menu_item() {
add_submenu_page(
'woocommerce',
'Shipping Locations',
'Shipping Locations',
'manage_options',
'slp_add_states',
array( $this, 'slp_settings_page' ),
);
}
slp_settings_page
回调函数反过来呈现 WP_List_Table
的实例(尽管在上面的屏幕截图中出现,它不是分类法)。 add_submenu_page
是通过 admin_menu
挂钩添加的,没有任何优先级。
对这里发生的事情有什么想法吗?我似乎无法理解它:(
第一个代码块是错误的。根据文档,最后一个参数应该是可调用的。第一个块直接执行函数并将结果存储在数组中(顺便说一下,结果是null
)。因此,将其作为可调用对象传递是行不通的。
我不知道为什么第二个块不能正常工作。也许代码块在错误的时间执行,也许其他地方不对劲。