web-dev-qa-db-ja.com

現在のユーザーのコメントをハイライトする

私はこれが可能であるかどうかわからない、私は周りを検索したが手短になった。基本的に、私は彼のコメントを見るためにコメントしている現在のユーザーが他の人とは少し違うことを必要としています。

私は管理者/モデレータのためにこれをやっています、しかし事はすべてのユーザがadmin/modによって作られたハイライトされたコメントを見るということです。

1
Tommy

あなたのテーマはcomment_class()を使っていると仮定します。

例(あなたのテーマのfunctions.phpに追加されます):

add_filter( 'comment_class', 'comment_class_logged_in_user' );

function comment_class_logged_in_user( $classes ) {
    global $comment;
    if ( $comment->user_id > 0 && is_user_logged_in() ) {
        global $current_user; get_currentuserinfo();
        $logged_in_user = $current_user->ID;
        if( $comment->user_id == $logged_in_user ) $classes[] = 'comment-author-logged-in';
    }
return $classes;
}

cSSクラスのフォーマットが必要です。

.comment-author-logged-in { }

私は最近私のサイトに プラグイン版を投稿しました

2
Michael

まず、コメントクラスを見ると、byuserというクラスがあります。そのクラスは comment_class によって追加されたデフォルトクラスの1つです。それだけで十分です。あなたはCSSであなたが望むけれどもそれをスタイルすることができます。

あなたのテーマがcomment_classを使っていないのであれば...

テーマのcomments.phpwp_list_commentsという名前の関数を探します。 Twenty 12では、これはwp_list_comments( array( 'callback' => 'twentytwelve_comment', 'style' => 'ol' ) );のように見えます。

そのcallbackの部分はここで重要な部分です。テーマの関数呼び出しにコールバックがある場合は、それを変更する必要があります。コールバックがない場合はWordPressのデフォルトが使用されますので問題ありません。 comment_classは既に使用されているはずです。

テーマには、上記のコードのコールバックの値と同じ名前の関数が必要です。 Twelve 12では、 twentytwelve_comment で定義されているのはfunctions.phpです。それは実際のコメントリストをフォーマットして表示します。あなたがする必要があるのは、その関数を複製/編集し、comment_class関数を追加することです、 こっちに

0
s_ha_dum