如何在 WordPress 中重新排序管理菜单项?

已发表: 2024-09-04

如果您希望重新排序 WordPress 管理菜单以使仪表板更好地为您工作或为不同用户创建自定义管理菜单,那么您来对地方了!

我们将介绍两种方法:一种非常简单,非常适合初学者,另一种则更高级(如果您想进行一些编码)。让我们深入了解如何在 WordPress 中重新排序管理菜单的分步指南。


目录
方法 1:使用插件(管理菜单编辑器)
方法2:通过代码手动重新排序
完全自定义 WordPress 管理菜单
概括

方法 1:使用插件(管理菜单编辑器)

重新排序管理菜单的最简单且适合初学者的方法之一是使用“管理菜单编辑器”插件。

就像任何其他 WordPress 插件一样,安装和激活过程是相同的,例如,

  • 安装插件:
  • 转到 WordPress 仪表板并导航到插件 > 添加新插件
Installing Admin Menu Editor
安装管理菜单编辑器
  • 搜索“管理菜单编辑器” > 单击“立即安装” ,然后单击“激活”
  • 激活后,转到仪表板中的“设置”>“菜单编辑器”
Menu Editor
菜单编辑器
  • 您将看到一个包含当前管理菜单项的拖放界面。
  • 拖放项目以根据您的喜好重新排序。
Drag and drop interface in menu editor
在菜单编辑器中拖放界面
  • 您还可以单击菜单项来调整其设置,例如其名称或访问权限。
Menu Editor Settings
菜单编辑器设置
  • 进行更改后,单击“保存更改”

Discover-the-WPOven-difference-Get-started-today

方法2:通过代码手动重新排序

如果您不想依赖插件,插件有时会耗尽服务器资源并影响网站性能,您可以通过将自定义代码直接添加到主题的functions.php 文件来重新排序管理菜单。您可以这样做:

第1步访问functions.php

  • 转到 WordPress 仪表板中的外观 > 主题编辑器
  • 从主题文件列表中选择functions.php并打开它。
  • 现在在functions.php文件末尾添加以下代码片段:

add_filter( 'custom_menu_order', 'dgtlnk_custom_menu_order', 10, 1 );

add_filter( 'menu_order', 'dgtlnk_custom_menu_order', 10, 1 );

function dgtlnk_custom_menu_order( $menu_ord ) {

if ( !$menu_ord ) return true;

return array(

'index.php', // Dashboard

'separator1', // First separator

'edit.php?post_type=page', // Pages

'edit.php', // Posts

);

}

该守则将做什么?

以下代码将重新排序 WordPress 管理菜单,以便项目按照您定义的特定顺序显示。

  • 第一行 add_filter( 'custom_menu_order', 'dgtlnk_custom_menu_order', 10, 1 ); 挂钩到 custom_menu_order 并让 WordPress 知道您想要为管理菜单设置自定义顺序。
  • 这告诉 WordPress 您想要对管理菜单使用自定义顺序。 dgtlnk_custom_menu_order 函数将处理此排序。
  • 第二行 add_filter( 'menu_order', 'dgtlnk_custom_menu_order', 10, 1 ); 挂钩到 menu_order。
  • 此挂钩通过函数 dgtlnk_custom_menu_order 设置绕过菜单项的自定义顺序。
  • 函数 dgtlnk_custom_menu_order 被定义为对管理菜单项重新排序。
  • 它接受一个参数 $menu_ord,它是当前菜单项的数组。
  • 该行 if ( !$menu_ord ) return true;检查 $menu_ord 是否为空或未设置。如果为空,则返回true,不做任何改变继续。
  • 返回数组(...);部分返回一个新数组,其中包含所需菜单项的特定顺序:
    • “index.php”:这是仪表板链接。
    • 'separator1':用于在视觉上分隔菜单部分的分隔线。
    • 'edit.php?post_type=page':页面的链接。
    • 'edit.php':帖子的链接。

如果您想从 WP Admin 中删除帖子菜单(例如所有帖子、添加新帖子等),您需要将以下代码添加到functions.php 文件中。

function jh_remove_posts_menu( $menu_ord ) {

if (($key = array_search('edit.php', $menu_ord)) !== false) {

unset($menu_ord[$key]);

}

return $menu_ord;

}

add_filter( 'menu_order', 'jh_remove_posts_menu', 10, 1 );

  • jh_remove_posts_menu 函数用于从管理菜单中删除“帖子”菜单项。
  • 它在菜单项列表中搜索菜单项“edit.php”,如果找到则将其删除,然后返回更新的菜单顺序。
  • add_filter 函数将此自定义函数挂钩到 menu_order 过滤器,允许 WordPress 在生成管理菜单时应用自定义菜单顺序。

WPOven Dedicated Hosting

完全自定义 WordPress 管理菜单

利用上述功能很容易对项目的菜单项进行重新排序。您只需遵循下面提到的这些提示即可:

重新排列管理菜单

1.选择菜单项

– 首先,决定您想要在 WordPress 管理区域中移动哪些菜单项。这些是您在仪表板左侧看到的选项,例如仪表板、帖子、页面等。

2.查找 URL Slug:

– 对于要重新排列的每个菜单项,您需要获取其 URL slug。 URL slug 是 URL 中位于/wp-admin/之后的部分。

– 例如,如果您查看“页面”菜单项的 URL,它是https://example.com/wp-admin/edit.php?post_type=page ,则您需要的 slug 是edit.php?post_type=page

3.重新排序菜单项

– 使用您收集的数据块,您可以指定这些菜单项的新顺序。您将按照您希望它们在管理菜单中出现的顺序排列这些 slugs。

– 如果需要,您还可以添加分隔符将相关项目分组在一起。这有助于保持菜单的视觉组织。

4.处理未列出的物品

– 如果您选择不在自定义菜单订单中包含某个项目,或者您没有将其从菜单中完全删除,则该项目将显示在您重新排序的项目下方。

– 例如,如果您仅对菜单中的前几个项目重新排序,则其余项目将保留在自定义项目下方的原始顺序。

删除菜单项

1.使用remove_menu_page

– 要从管理菜单中完全删除菜单项,请将remove_menu_page函数与要隐藏的页面的slug 一起使用。

– 例如,如果您想删除“评论”菜单项,请使用remove_menu_page('edit-comments.php') 。这告诉 WordPress 隐藏该特定的菜单项。

2.删除多个项目:

– 如果您需要删除多个菜单项,您可以多次调用remove_menu_page函数,每次为您要删除的页面使用不同的slug。

– 例如,要删除评论和媒体库项目,您可以在代码中使用remove_menu_page('edit-comments.php')remove_menu_page('upload.php')

尖端:

  • 更改前备份:在更改functions.php 文件或安装新插件之前,请务必备份您的网站。
  • 测试更改:重新排序后,浏览管理菜单以确保一切按预期运行。

概括

当我们考虑网站管理时,很容易只专注于为访问者创建内容。但是后端呢?尽管组织良好的后端可以使您的任务变得更加轻松,但它经常被忽视。

改善后端体验的一种方法是自定义 WordPress 仪表板。想象一下,所有重要的快捷方式、图表和 Google Analytics 等工具都触手可及。此外,添加待办事项列表可以帮助您保持井然有序并跟踪您的内容创意和截止日期。

您探索过“WordPress 管理菜单编辑器”插件吗?它允许您调整管理菜单以适合您的工作流程。它足够用户友好吗? WordPress 应该有内置的管理菜单编辑功能吗?这些小的调整可以将后端变成一个完全适合您工作方式的空间,使您的工作更易于管理。