使 Id 仅对登录的 wordpress 管理员可见

Make Id only visible for logged in wordpress admin

我希望以下功能能够工作,但不适用于 Wordpress 管理员。

document.getElementById("my_id").style.display = 'none';

有人可以帮我吗?

您不需要 javascript。

如果您以管理员身份登录。 WordPress 将添加 logged-in admin-bar 类 到 body 元素。您可以使用它来更改 style.css 中的显示值以隐藏元素。

#my-id {
  display: none;
}

body.logged-in.admin-bar #my-id {
  /* Admin is logged in */
  display: block;
}

顺序很重要!

如果要使用javascript。使用 PHP 检查用户是否为管理员,并将 javascript 写入文档。添加例如 index.php:

<?php if( !current_user_can('editor') || !current_user_can('administrator') ) {  ?>
    <script>/* Will be there if user is not admin or editor */</script>
<?php } ?>

您可以将其与 else 语句结合使用。