仅向超级管理员显示css

时间:2015-12-02 10:58:59

标签: php css wordpress

我的目标是在除了超级管理员之外的所有用户中使用CSS在WordPress仪表板上隐藏特定表。

<?php is_super_admin( $user_id ); ?>

add_action( 'admin_head', 'my_custom_function' );
function my_custom_function() {
 if ( ! current_user_can( 'update_core' ) ) {
   echo '<style>p.smush-status {
   display: none;
   }
   button.button.wp-smush-send  {
   display: none;
   }
   #smushit {
   display:none;
   }</style>';
 }
});

但是,当我将此代码添加到mu-plugins时,我收到以下错误:

  

致命错误:调用未定义的函数wp_get_current_user()   /home/.../public_html/domain.com/wp-includes/capabilities.php在线   1614

capabilities.php它的WordPress核心文件。

请您看看并告诉我如何改进此代码?

谢谢

1 个答案:

答案 0 :(得分:0)

不要使用css隐藏部分管理信息中心,这是一个安全漏洞。 您必须使用主题functions.php中添加的函数取消设置:

// Create the function to use in the action hook

function remove_dashboard_widgets() {


    global $wp_meta_boxes;

    // Remove the quickpress widget

    unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_quick_press']);

    // Remove the incomming links widget

    unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links']);
} 

// Hoook into the 'wp_dashboard_setup' action to register our function
if(!is_admin()){
add_action('wp_dashboard_setup', 'remove_dashboard_widgets' );
}

编辑:并且不要编辑wordpress核心文件,否则你将因为更新而失去一切。