胖蒜

分享有价值的资源

付费教程:Typecho积分下载功能的实现(依赖TePass-0.8.6以上版本)

在TePass插件中,引入了积分的功能,可以把消费,签到等转换为积分,那么积分有什么用处呢,这里来实现积分下载的功能,效果见下图。
TePass积分下载.png
TePass积分管理后台.png

背景介绍

首先介绍一下积分相关,见文章:《TePass 自媒体付费阅读插件增加签到积分功能》和《TePass 插件签到积分功能使用教程》,在上个版本我引入了积分,实现了签到积分的功能,这里实现一下积分下载功能。

说明:因积分下载功能是在主题里面修改代码实现的,加上积分下载功能不是插件插件刚需,本插件的核心还是付费阅读和VIP会员中心,所以采用教程的形式,收费。当然你也可以自己在主题修改代码通过其它方法实现,也可以不用积分这个功能,每个人的主题不一样,可以玩的花样很多。

实现原理

这里是修改模板实现积分下载的,为什么不做在插件里面,一是担心插件东西太多,担心用户不喜欢,二是在插件实现可能效果也没有那么的好,所以采取在主题中实现的方法。

一、确保使用的TePass-0.8.6以上的版本

因为里面有个消耗积分的路由,在这个版本才加入。

二、修改当前主题的functions.php文件

修改当前主题的functions.php文件,如果主题没有,请创建此文件,然后在主题中找到function themeFields($layout) 这个函数。
在里面添加下面的代码:

function themeFields($layout) {
    //积分下载
   $downe = new Typecho_Widget_Helper_Form_Element_Text('edown', NULL, NULL, _t('积分下载'), _t('格式:积分---下载地址,比如60---https://pangsuan.com/down_url.zip'));
    $downe->input->setAttribute('class', 'w-100 setfb');
    $layout->addItem($edown); 
}

三、在文章页面插入积分下载的按钮

在文章页面插入积分下载的按钮,当然可以根据需要跟本站一样,写在侧边栏里面。
在当前使用的主题的post.php对应位置插入下面代码:

<?php if ($this->fields->edown): ?>
<!--积分下载-->            
<div onclick="tepassDownload(<?php echo $this->cid;?>);"><span>积分下载</span></div>
<?php endif;?>

很简单,对吧,就是一个onclick事件。

四、发布文章进行积分设置

一切准备就绪,开始发布文章,实现积分下载吧。
新建一篇文章,在自定义字段中有这个输入框,按照格式输入积分和下载地址。
填写需要积分才能下载的内容.png

提醒:
1、付费文章,禁止转载,若发现转载付费可读内容必将追究;
2、付费内容依赖TePass插件0.8.6以上版本;
3、付费内容里面教程完整,本站根据教程操作可正常使用,若需要协助请到功能定制页面打赏定制。

感觉很棒,欢迎点赞 OR 打赏~

分享到:

评论 (2)

立即登录评论
可联系QQ744272645咨询

    买完插件持续收费

    李嘉图

      麻烦看懂文章再喷,这是在主题里面修改,大家用的不是一个主题,本站不是还有免费的修改教程吗?

马上咨询 自媒体号