WordPress搜索统计分析插件 Search Analytics(已汉化)

前些天推荐的WordPress搜索统计插件 Search Meter存在一些bug,比如统计不准确;后来发布了相关文章,但搜索结果数不更新……总之就是用着不爽。所以,今天倡萌推荐另外一款插件 Search Analytics。

Search Analytics 将记录用户的搜索记录,并分组统计这些搜索词的次数以及相关文章结果数等信息。通过这些统计分析信息,我们可以很清楚地了解到用户想要什么内容,以便针对性地发布相关的内容,提高用户满意度。

Search Analytics 特性

  • 记录通过WordPress内置的搜索表单进行的所有搜索查询。
  • 排除具有特定用户角色特定IP地址的用户进行的搜索
  • 排除在某些条件下进行的重复搜索(符合GDPR要求)
  • 选择允许哪些用户角色可以查看统计信息
  • 时间段过滤统计信息,有/没有搜索结果
  • 查看每个搜索词的个人统计数据
  • 将当前视图中的数据导出到CSV
  • 轻松从历史记录中删除某些搜索词
  • 如果需要重置,可轻松从数据库删除所有历史记录
  • 轻松清除历史记录,而无需进行一般清理
  • 仪表板小工具可快速浏览上周的搜索统计信息
  • 多站点兼容
  • 国家地理定位

Search Analytics 预览

搜索统计信息界面
插件设置界面

Search Analytics 下载

你可以在WordPress后台搜索 Search Analytics 进行在线安装,或者到这里下载:http://wp101.net/plugins/search-analytics/。倡萌已将该插件汉化,点击下载简体中文包,解压后将里面的 .mo 和 .po 文件上传到 /wp-content/languages/plugins 目录即可生效。

调用搜索最多的词

项目需要调用用户近期热搜的词,但是插件自身没有提供现成的函数,所以倡萌就自己写了一个,代码如下:

/**
 * 获取热搜词
 */
function wpkj_get_popular_searches( $month = 3, $limit = 10, $title = false ){

    if( !class_exists('MWTSA') ) return;

    global $wpdb;

    $sql = "SELECT t.term, t.total_count FROM `{$wpdb->prefix}mwt_search_terms` t 
            INNER JOIN `{$wpdb->prefix}mwt_search_history` h ON t.id = h.term_id 
            WHERE h.count_posts > 0 AND DATE_SUB( CURDATE(), INTERVAL {$month} month ) <= h.datetime GROUP BY h.term_id 
            ORDER BY t.total_count DESC LIMIT {$limit}";

    $results = $wpdb->get_results($sql, ARRAY_A);

    if( $results && !is_wp_error( $results ) ){

        $html = '<div class="popular-searches">';
        if( $title ) $html .= '<h2 class="searches-title">'. htmlspecialchars($title) .'</h2>';
        $html .= '<ul class="searches-ul">';
        $home_url_slash = get_option('home') . '/';
        $i = 1;
        foreach( $results as $result ) {
            //var_dump($result);
            $span_class ='item-'.$i;
            if( $i > 4 ) $span_class ='item-'.$i.' span-gray';
            $html .= '<li class="search-item"><span class="'.$span_class.'">'.$i.'</span><a href="'. $home_url_slash . '?s=' . $result['term'] . '">'. htmlspecialchars($result['term']) .'</a></li>';
            $i++;
        }
        $html .= '</ul>';
        $html .= '</div>';

        return $html;
    }

}

将上面的代码添加到你的主题的 functions.php 文件,然后在希望显示这些热搜词的地方,通过下面的代码进行调用即可:

if(function_exists('wpkj_get_popular_searches')) {
    echo wpkj_get_popular_searches( 3, 10, '热搜'); 
}

如上所示,函数 wpkj_get_popular_searches()支持3个参数:

  • $month :月数,默认为查询最近3个月的数据
  • $limit :显示的词数,默认为10个词
  • $title :标题,默认为空

样式什么的,就自己去弄吧。以下是倡萌这边项目的一个效果图:

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
欢迎关注我们的微信公众号:WPDAXUE

倡萌

一个文科IT宅男,喜欢折腾WordPress和被它折腾 ^_^

1 条评论

发表评论