繁体   English   中英

如何通过 wordpress 中的用户名添加管理员 css

[英]How I can add admin css by username in wordpress

我正在尝试为管理员添加自定义 css,如下所示

    add_action('admin_head', 'hey_custom_admin_css');
    function hey_custom_admin_css() {
            global $current_user;
            $user_id = get_current_user_id();
            if(is_admin() && $user_id != '1'){
                echo "<style>#wpwrap{background-color:red;}</style>";
                }
    }

并且工作完美,但我想将它用于用户名,而不是用户 ID

有可能吗? 如果是,请给我建议

谢谢


编辑代码

第一... Css 工作,但适用于所有用户。 包括代码中列出的。

<?php 
/** 
 * Plugin Name: My Plugin 
 * Plugin URI: https://google.com 
 * Description: Me 
 * Version: 1.0 
 * Author: Plugin 
 * Author URI: https://google.com 
 */ 
 
 
add_action('admin_head', 'hey_custom_admin_css');
function hey_custom_admin_css() {
global $current_user;  
wp_get_current_user(); 
$username = $current_user->user_login; 
if(is_admin() && ($username != 'xyz' || $username != 'abc')){ 

  echo " 
    <style> 
        #wpwrap{background-color:red;} 
    </style>"; 

 } }

第二...给出错误

<?php 
/** 
 * Plugin Name: My Plugin 
 * Plugin URI: https://google.com 
 * Description: Me 
 * Version: 1.0 
 * Author: Plugin 
 * Author URI: https://google.com 
 */ 
 
 
global $current_user;  
wp_get_current_user();  //Error on this line
$username = $current_user->user_login; 
if(is_admin() && ($username != 'xyz' || $username != 'abc')){ 

  echo " 
    <style> 
        #wpwrap{background-color:red;} 
    </style>"; 

 }

给定第二个错误

致命错误:未捕获错误:调用未定义的 function wp_get_current_user() in /home/dh_w4i633/site.com/wp-content/plugins/me/me.php:13 堆栈跟踪:46 堆栈跟踪:#0 /site.com// wp-settings.php(371): include_once() #1 /home/dh_w4i633/site.com/wp-config.php(106): require_once('/home/dh_w4i633...') #2 /home/dh_w4i633 /site.com/wp-load.php(37): require_once('/home/dh_w4i633...') #3 /home/dh_w4i633/site.com/wp-admin/admin.php(34): require_once( '/home/dh_w4i633...') #4 /home/dh_w4i633/site.com/wp-admin/plugins.php(10): require_once('/home/dh_w4i633...') #5 {main} 抛出在第 13 行的 /home/dh_w4i633/site.com/wp-content/plugins/me/me.php

<?php
  global $current_user; 
  wp_get_current_user();

  $username = $current_user->user_login;
  if(is_admin() && ($username == 'username' || $username == 'another_username')){

      echo "<style>#wpwrap{background-color:red;}</style>";

  }
?>

编辑:

您编辑中的第二个代码给您一个错误,因为您一直在运行它而不是将它附加到挂钩上,因此出现错误。

您编辑中的第一个代码似乎是正确的,所以让我们坚持下去。 它为所有用户(包括您不需要的用户)更改 css 的原因是因为 OR || 操作员。 您需要用 AND &&运算符替换它。 你的情况会变成:

if(is_admin() && $username != 'xyz' && $username != 'abc')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM