我记得今年三月我回答了一个问题,所以你可能想看看here, 但要突出您的;“登录页”;菜单项,您可以这样做:
Note: 如何在类中实现代码将取决于您,但如果您对代码有任何疑问,请告诉我。
添加自定义菜单项:
function add_landing_pages_admin_menu() {
$slug = \'edit.php?post_type=page&libray_type=landing_page\';
add_menu_page( \'Landing Pages\', \'Landing Pages\', \'manage_options\', $slug );
}
add_action( \'admin_menu\', \'add_landing_pages_admin_menu\' );
更改;“页码”;和;“所有页面”;菜单项,使其不会突出显示,但请注意,我们没有更改(全局)
$parent_file
此处的值(请参阅步骤#3了解该部分)。
function fix_admin_parent_file_override( $menu ) {
global $pagenow, $submenu, $parent_file;
// If we\'re not on the edit.php page, do nothing.
if ( ! is_admin() || \'edit.php\' !== $pagenow ||
\'edit.php?post_type=page\' !== $parent_file
) {
return $menu;
}
// Same as in the above add_landing_pages_admin_menu().
$slug = \'edit.php?post_type=page&libray_type=landing_page\';
// Make sure the $parent_file is not overriden (by WordPress) to the \'Pages\' menu.
if ( isset( $_GET[\'libray_type\'] ) && \'landing_page\' === $_GET[\'libray_type\'] ) {
// Add an empty libray_type query to the \'Pages\' URL.
$menu[20][2] .= \'&libray_type=\';
$submenu[ $menu[20][2] ] = $submenu[\'edit.php?post_type=page\'];
// Then set the \'All Pages\' URL to the same as the \'Pages\' URL.
$submenu[ $menu[20][2] ][5][2] = $menu[20][2];
unset( $submenu[\'edit.php?post_type=page\'] );
}
return $menu;
}
add_filter( \'add_menu_classes\', \'fix_admin_parent_file_override\' );
现在更改
$parent_file
然后突出显示通过上述步骤#1添加的自定义菜单项。
function highlight_landing_pages_admin_menu( $parent_file ) {
if ( isset( $_GET[\'libray_type\'] ) && \'landing_page\' === $_GET[\'libray_type\'] &&
\'edit.php?post_type=page\' === $parent_file
) {
// Return the $slug value as in the above add_landing_pages_admin_menu()
return \'edit.php?post_type=page&libray_type=landing_page\';
}
return $parent_file;
}
add_filter( \'parent_file\', \'highlight_landing_pages_admin_menu\' );
顺便说一句
libray_type
似乎是个拼写错误。。你是说
library_type
?