51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

Typecho文章阅读量自定义

1、修改视图文件程序 admin/wirte-post.php打开这个文件找到合适的位置,添加个input框,用来输出阅读参数,我是放在日期下方的。

<!--新增文章默认阅读量开始-->
<section class="typecho-post-option">
<label for="views" class="typecho-label"><?php _e('随机阅读数'); ?></label>
<p><input type="text" id="views"  name="views" value="<?=$post->views?($post->views):rand(39,299)?>"></p>
<p class="description"><?php _e('默认自动生成,也可手动修改'); ?></p>
</section>
<!--新增文章默认阅读量结束-->

2、修改表单接收参数程序文件 /var/Widget/Contents/Post/Edit.php 大概在719行,默认views字段为0,所以表单里面没有这个字段 原内容: $contents = $this->request->from('password', 'allowComment','allowPing', 'allowFeed', 'slug', 'tags', 'text', 'visibility'); 修改为: $contents = $this->request->from('password', 'allowComment','allowPing', 'allowFeed', 'slug', 'tags', 'text', 'visibility','views');

3、修改文章增改查程序文件 /var/Widget/Base/Contents.php 原内容:

public function select(): Query
    {
        return $this->db->select(
            'table.contents.cid',
            'table.contents.title',
            'table.contents.slug',
            'table.contents.created',
            'table.contents.authorId',
            'table.contents.modified',
            'table.contents.type',
            'table.contents.status',
            'table.contents.text',
            'table.contents.commentsNum',
            'table.contents.order',
            'table.contents.template',
            'table.contents.password',
            'table.contents.allowComment',
            'table.contents.allowPing',
            'table.contents.allowFeed',
            'table.contents.parent'
        )->from('table.contents');
    }

修改为:

public function select(): Query
    {
        return $this->db->select(
            'table.contents.cid',
            'table.contents.title',
            'table.contents.slug',
            'table.contents.created',
            'table.contents.authorId',
            'table.contents.modified',
            'table.contents.type',
            'table.contents.status',
            'table.contents.text',
            'table.contents.commentsNum',
            'table.contents.order',
            'table.contents.template',
            'table.contents.password',
            'table.contents.allowComment',
            'table.contents.allowPing',
            'table.contents.allowFeed',
            'table.contents.parent',
			'table.contents.views'
        )->from('table.contents');
    }

继续修改本文件,在插入、更新方法中增加views参数获取,示例: 'views' => empty($rows['views']) ? 0 : intval($rows['views'])

赞(3)
未经允许不得转载:工具盒子 » Typecho文章阅读量自定义