魔改Typecho插件Digg,实现ajax评分

4
(3)

又是一篇旧站文章,之前用来实现Google的富媒体搜索结果(结构化标记),即通过这种方式可以实现谷歌搜索结果出现文章评分。文中,通过Digg插件的一些魔改操作,实现了Typecho的ajax评分功能。

以前用PostRating这款插件实现过评分功能,然后我为了实现一个其他功能,貌似是图片延迟加载功能,引入了一个jquery库,与PostRating自带的冲突,甚至还有一些其他问题。昨天,恰好看到一款顶踩插件Digg,脑回路运转,发现可以实现评分。然后,就尝试改写了部分代码。废话到此为止,下面进入正文。

魔改Typecho插件Digg,实现ajax评分

Digg使用方法

下载什么的,不说了,网上很多下载渠道的。主要说下使用方法,上传插件到网站plugins目录,该插件命名为Digg。后台启用插件,修改css及javascript,主要是注意下https问题。然后,将淡黄色提示框里的内容,填写到插件目录下的digg.js里,如下图所示。

魔改Typecho插件Digg,实现ajax评分

然后,在主题目录post.php适当位置插入如下代码

<?php Digg_Plugin::output(); ?>

这时,顶踩插件就可以用了。

Digg魔改

插件设置,项目存储id修改为1|2|3|4|5,项目中文输出修改为1分|2分|3分|4分|5分。然后,就是修改插件的输出函数部分了。打开digg插件目录下的Plugin.php文件,找到大约第157行代码,修改为如下代码。如果找不到代码具体位置,请搜索<?php Digg_Plugin::output(); ?>,即可定位。关于魔改的部分已用//标记

        /* 用法1 <?php Digg_Plugin::output(); ?>       按插件自定义格式输出 也可自己修改输出格式*/
if (!$return) {
    $sum=0;  //新增分数求和变量
    $num=0;  //新增评分个数变量
    echo "<div id=\"digg\" class=\"clearfix\"><font style=\"font-size:16px;color:darkcyan;\">给文章评分:</font>";  //修改样式
    foreach ($items as $k => $v) {
        echo '<a href="javascript:digg(\'' . $v . '\',\'' . $cid . '\');" id="digg-' .$v. '">';
        echo $result['items'][$v];
        echo '(<span id="' . 'digg-' . $v . '-num">' . (isset($result[0][$v]) ? $result[0][$v]['count'] : 0 ) . '</span>)</a>';
        $sum = $sum+$v*$result[0][$v]['count'];  //计算总评分
        $num=$num+$result[0][$v]['count'];        //获取评分个数
        }
    $ave=$sum/$num;    //计算平均分
    $ave=round($ave,2);  //保留两位有效数字
    echo "</br><i class=\"fa fa-star\"></i> <b>$num</b> 票; 总得分 <b>$sum</b>; 平均分 <b>$ave</b> <i class=\"fa fa-star\"></i>";  //新增分数统计输出
    echo '</div>';
    return;
}

效果

有人会问,这个评分有啥用,除了装逼。实际上,经常关注谷歌搜索引擎的应该知道,有一个东西叫结构化标记,里面可以为你的每篇文章标记结构,内容毕竟丰富,其中就有一项评分。搞好以后,等谷歌抓取更新,就可以提交结构化标记,谷歌自动读取你每篇文章的评分,并在搜索结果里显示。

魔改Typecho插件Digg,实现ajax评分

话说,我的文章评分由于之前的插件失效,被我删了结构化数据,搜索引擎已经没评分了,这里随便找个链接,展示下效果。

魔改Typecho插件Digg,实现ajax评分

关于Wordpress添加评分功能的文章,可以点击查看古哥前几天写的:一款给WordPress添加评分功能的插件

共计3人评分,平均4

到目前为止还没有投票~

很抱歉,这篇文章对您没有用!

让我们改善这篇文章!

告诉我们我们如何改善这篇文章?

旧站文章,作者:古哥,如若转载,请注明出处:https://iymark.com/website/typecho-digg-ajax-rating.html

发表评论

登录后才能评论
分享本页
返回顶部