zblog文章列表摘要内容自定义短代码过滤教程
5个月前
在写主题或者插件的时候,避免不了开发一些自定义短代码功能,如果不使用过滤器的话,文章摘要截取的时候就会把自定义短代码显示出来,十分的不美观,最重要的是有些自定义短代码中的内容十分的重要,例如付费才能查看的内容,一不注意就会通过文章摘要暴露出来,为了解决这个问题特意写了这篇文章记录一下。
下面代码中的“XmPay”可以自行修改成对应的插件或者主题名称
#注册插件
RegisterPlugin("XmPay","ActivePlugin_XmPay");
//激活插件
function ActivePlugin_XmPay() {
//文章列表出来
Add_Filter_Plugin('Filter_Plugin_ViewList_Template','XmPay_ViewPost_Template');
}
//文章列表摘要过滤器
function XmPay_ViewPost_Template(&$template)
{
global $zbp;
if ($articles = $template->GetTags('articles')) {
foreach ($articles as $article) {
//下面这两条代码中的正则表达式请自行替换成相关的正则表达式
$article->Intro = preg_replace('/\[pay_info\].*?\[\/pay_info\]/s', '', $article->Intro);
$article->Content = preg_replace('/\[pay_info\].*?\[\/pay_info\]/s', '', $article->Content);
}
}
}