0

コメントに「いいね」を追加するプラグインがあります。各「いいね」は というテーブルに保存されます。各コメントのいいねの数に従ってlikes_comments出力を並べ替えようとしています。wp_list_comments一番上に表示されるのが好きです。

これが私が呼び出すために使用しているものですwp_list_comments

<?php global $wp_query;
    $comment_arr = $wp_query->comments; usort($comment_arr, 'comment_comparator');
    wp_list_comments('callback=my_callback', $comment_arr);
?>

そして、ここに私の機能があります:

function comment_comparator($a, $b)
{
$compared = 0;
if($a->likes_comments != $b->likes_comments)
{
    $compared = $a->likes_comments < $b->likes_comments ? 1:-1;
}
return $compared;
}
if($a->likes_comments == 0)
{
$compared = $compared2;
}

私はこれに完全に行き詰まっています。どんな助けでも大歓迎です。

4

1 に答える 1

1

これを機能させるには、コードをfunctions.php AND内および内に配置します ( を呼び出す前にcomments.php、正確な配置場所を見つける必要があります)。wp_list_comments()comments.php

functions.php:

function comment_comparator($a, $b)
    {
        $compared = 0;
        if($a->comment_karma != $b->comment_karma)
        {
            $compared = $a->comment_karma < $b->comment_karma ? 1:-1;
        }
        return $compared;
        }

コメント.php:

global $wp_query;
    $comment_arr = $wp_query->comments;
    usort($comment_arr, 'comment_comparator');
    wp_list_comments('callback=gtcn_basic_callback', $comment_arr);

重要な注意: この手順は、プラグインのコメント評価(高評価 - 低評価) を使用する場合に有効です。追加情報はこちらをご覧ください。

于 2014-01-07T13:00:37.137 に答える