原方案

替换文章输出

将post.php中的<?php $this->content(); ?>换成

使用类

后来就新建了一个类,使用<?php Content::echoSomeFunny(); ?>
那么就是将post.php中的<?php $this->content(); ?>换成<?php Content::echoSomeFunny();

解决feed暴露

解决缩略内容和feed暴露问题。
在functions.php中加入如下代码即可
Typecho_Plugin::factory就是用插件接口,在缩略内容输出之前,隐藏掉或者替换掉回复可见内容,同时使用if判断,来针对非single页面进行隐藏。

使用方法

在写文章需要隐藏部分内容时用以下写法
[hide]要隐藏的内容[/hide]
不过这个方法会有一个问题:只能有一个短代码,所以需要找到其他的方法

后续解决

后来翻找了一下Wordpress程序以及handsome主题,发现有类似的模块,比如
先匹配正则表达式,之后我们再获取短代码类型
这个时候我们的正则就有用了
最后输出即可
其中,get_shortcode_regex,shortcode_parse_atts,get_shortcode_atts_regex,get_markdown_regex都是wp里的东西
剩下的就是用来替换的了,注释应该都写的挺清楚的了吧?

调用方法

将post.php里的<?php $this->content(); ?>替换为<?php Content::postContentHtml($this,$this->user->hasLogin()); ?>·

亲亲留个评论再走呗

正在加载评论区...