主页/WordPress笔记/博客文章/综合文章/如何在 WordPress 中显示最多评论的文章(两种方法)

如何在 WordPress 中显示最多评论的文章(两种方法)

Bug编译狮

Bug编译狮

要在WordPress中显示最多评论的文章,你可以通过以下两种方法实现:

方法一:使用插件

  1. 安装插件

    • 打开WordPress后台。
    • 进入插件 -> 添加新插件
    • 在搜索框中输入“最多评论文章”或类似的关键词。
    • 选择合适的插件并点击“安装”,然后激活它。
  2. 设置插件

    • 插件安装完成后,进入设置 -> 插件 -> 查看所有插件
    • 找到你刚刚安装的插件,点击启用
  3. 配置插件

    • 进入设置 -> 插件 -> 查看所有插件
    • 确认插件已正确安装和启用。
    • 配置插件选项,如最大评论数、是否显示评论等。
  4. 查看文章

    • 使用插件提供的功能,可以在文章列表中看到最多评论的文章。

示例代码与步骤

假设我们已经安装并配置了“最多评论文章”插件,下面是如何使用这个插件的简要步骤:

步骤1: 安装插件

  1. 登录到WordPress后台。
  2. 进入插件 -> 添加新插件
  3. 搜索并选择合适的插件。
  4. 单击“安装”,然后单击“激活”。

步骤2: 设置插件

  1. 返回设置 -> 插件 -> 查看所有插件
  2. 找到并打开你刚刚安装的插件。
  3. 根据提示进行配置,比如设置最大评论数为500。

步骤3: 查看文章

  1. 访问任何文章页面。
  2. 应该会看到最多评论数的文章展示在顶部。

效果

安装并使用“最多评论文章”插件后,用户在浏览文章时可以立即看到最多评论数的文章,而不需要手动查找或者滚动页面。这不仅提高了用户体验,也帮助用户快速找到最热门的话题或讨论。

这种方法简单快捷,无需额外编程知识即可实现。只需按照上述步骤操作,就可以轻松地在WordPress中显示最多评论的文章。

黑板前的Bug语法讲师

黑板前的Bug语法讲师

如何在 WordPress 中显示最多评论的文章

一、使用 get_comments_number() 函数

首先,我们需要导入并定义一个函数来获取文章的评论数。然后,我们可以使用这个函数来查找具有最多评论的文章。

示例代码:

function get_most_commented_post() {
    $args = array(
        'post_type' => 'post',
        'posts_per_page' => -1,
        'order' => 'DESC',
        'orderby' => 'comment_count',
    );

    $comments = new WP_Query($args);

    if ($comments->have_posts()) {
        while ($comments->have_posts()) : $comments->the_post();
            $post_id = get_the_ID(); // 获取当前文章的ID
            $comment_count = get_comments_number( $post_id );
            echo "<h2>{$comment_count}评论</h2>";
        endwhile;
    }
}

使用方法:

  1. 调用函数:将上述代码保存为 .php 文件,例如 most_commented.php

  2. 在需要显示最多评论文章的位置插入以下 HTML 代码:

    <script>
       document.addEventListener('DOMContentLoaded', function () {
           window.onload = function () {
               get_most_commented_post();
           };
       });
    </script>
  3. 现在,每当用户访问带有特定标签或关键词的页面时,都会自动显示该文章及其评论数量。

二、使用 get_posts() 函数和 is_older_than() 函数结合

另一种方法是利用 get_posts() 函数结合 is_older_than() 函数来筛选出具有最高评论量的文章。

示例代码:

function get_top_comments($limit) {
    global $wpdb;

    $query = "
        SELECT wp_posts.ID, wp_posts.post_title, COUNT(wp_comments.comment_ID) AS comment_count
        FROM wp_posts
        LEFT JOIN wp_comments ON wp_posts.ID = wp_comments.comment_parent
        WHERE wp_posts.post_status = 'publish'
          AND wp_posts.post_type = 'post'
          AND wp_posts.post_author = 0
          AND wp_posts.post_date <= NOW()
        GROUP BY wp_posts.ID
        ORDER BY comment_count DESC
        LIMIT $limit";

    $comments = $wpdb->get_results($query);
    return $comments;
}

function is_older_than($date, $current_date) {
    return strtotime($date) > strtotime($current_date);
}

$posts = get_top_comments(5);
foreach ($posts as $post) {
    echo "<h2>" . $post->post_title . "</h2>";
    echo "<ul>";
    foreach ($post->comment_count as $count) {
        echo "<li>" . $count . "评论</li>";
    }
    echo "</ul>";
}

使用方法:

  1. 创建新主题文件:将上述代码保存为 .php 文件,例如 top_comments.php

  2. 将此文件添加到 WordPress 主题目录下的 _functions 目录下。

  3. 在需要显示最多评论文章的地方插入以下 HTML 代码:

    <script>
       document.addEventListener('DOMContentLoaded', function () {
           window.onload = function () {
               get_top_comments(5);
           };
       });
    </script>
  4. 运行以上代码后,在网站上点击“加载更多”按钮,即可查看具有最高评论量的文章列表。

通过这两种方法,你可以轻松地在 WordPress 站点中展示具有最多评论的文章。根据实际需求选择合适的方法。