1

特定のユーザーの管理バーを非表示にする関数を作成しようとしています。非表示の管理バープラグインからコードを借りています。サーバーエラーが発生する次のように記述しました。

<?php
/*Hides the Admin Bar in WordPress 3.1+
Tweaked Hide Admin Bar plugin */

if (  current_user_can('moderate_comments')  ) {
    function hide_admin_bar_prefs() {
        ?>

        <style type="text/css">
            .show-admin-bar {display: none;}
        </style> 

    <?php 
    }

    add_action( 'admin_print_scripts-profile.php', 'hide_admin_bar_prefs' );
    add_filter( 'show_admin_bar', '__return_false' );
}

?>

ifステートメントをtrueまたはfalseの方程式に変更すると、正しく機能します。たとえば、私が使用する場合

if (1 == 1) {... 
or 
if (1 == 2) {... 

それは私が期待するように動作します。私は何が欠けていますか?

4

1 に答える 1

0

hide_admin_bar_prefs()別のプラグインからコピー&ペーストしているため、ここで関数を再宣言している可能性はありますか? このコードのコピー元のプラグインを無効にすることで、この問題が解決するかどうかを確認してください。その場合は、別の関数名を使用すると問題が解決する可能性が高くなります (それにadd_action()応じて、呼び出しの 2 番目のパラメーターを必ず変更してください)。

于 2013-01-07T23:59:56.057 に答える