php - 如何将自定义 HTML 类名称添加到管理屏幕子菜单项?

标签 php wordpress wp-admin

这是帖子菜单下的这些子菜单项

enter image description here

我检查了代码,发现它的标记是这样的

<ul class="wp-submenu wp-submenu-wrap">
  <li class="wp-submenu-head" aria-hidden="true">Posts</li>
  <li class="wp-first-item current"><a href="edit.php" class="wp-first-item current">All Posts</a></li>
  <li><a href="post-new.php">Add New</a></li>
  <li><a href="edit-tags.php?taxonomy=category">Categories</a></li>
  <li><a href="edit-tags.php?taxonomy=post_tag">Tags</a></li>
</ul>

我想做的是添加一个自定义类 my-custom-class<li> 上标签(在服务器端处理),这样它就会变成这样

<ul class="wp-submenu wp-submenu-wrap">
  <li class="wp-submenu-head" aria-hidden="true">Posts</li>
  <li class="wp-first-item current my-custom-class"><a href="edit.php" class="wp-first-item current">All Posts</a></li>
  <li class="my-custom-class"><a href="post-new.php">Add New</a></li>
  <li class="my-custom-class"><a href="edit-tags.php?taxonomy=category">Categories</a></li>
  <li class="my-custom-class"><a href="edit-tags.php?taxonomy=post_tag">Tags</a></li>
</ul>

有没有办法将自定义 HTML 类名添加到管理屏幕子菜单项?

最佳答案

您可以在页面加载之前对 html 执行 str_replace:

只需要计算出选择器或者用 DOMDocument 解析它

function callback($buffer) {

    $buffer = str_replace('wp-first-item', 'wp-first-item my-custom-class', $buffer);

    return $buffer;
}

function buffer_start() { ob_start("callback"); }

function buffer_end() { ob_end_flush(); }

add_action('admin_head', 'buffer_start');
add_action('admin_footer', 'buffer_end');

关于php - 如何将自定义 HTML 类名称添加到管理屏幕子菜单项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43454330/

相关文章:

php - WordPress 后端显示具有特定评论数的帖子

php - 禁用 wp-admin 到 wp-login 规范重定向(wordpress)

php - 以表单上传图片和视频,并将数据存储到mysql中

php - 取消订阅每月定期付款?

jquery - WordPress 类别菜单 jQuery/CSS 悬停

wordpress - 获取 WordPress 中排队脚本的列表?

php - 从 HTTP 版本没有重定向或规范到 HTTPS 主页

javascript - Yii2 ActiveForm 文本输入 onChange

wordpress - 我怎样才能使这个 WordPress 网站响应更快或更流畅?

php - 如何重命名我的 WordPress 实时主题文件夹