300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > pboot 将编码转换为实体html_PbootCms在模板中对定制标签中的内容进行二次处理

pboot 将编码转换为实体html_PbootCms在模板中对定制标签中的内容进行二次处理

时间:2018-10-20 21:57:54

相关推荐

pboot 将编码转换为实体html_PbootCms在模板中对定制标签中的内容进行二次处理

需求场景

在模板制作过程中,会遇到这样的需求:

1、模板中的文案样式不统一,客户需要自己能修改

2、客户有多个销售QQ需要在页面展示

可以解决问题的方案

使用PbootCms中的定制标签功能,不断的增加标签,将标签集成进模板中,达到可自行修改的目的。

方案缺点很明显,很容易遇到不方便的情况,比如,客户需要多增加一个QQ号码,那么就需要新增定制标签,再将标签集成进模板。客户自己操作不来,意义就不大了。

优化方案

实现思路,我们使用编辑器中的多行文本框,一行一个内容。然后在模板中对多行文本框中的内容进行分割二次处理。

那么问题来了,怎样才能在模板中对定制标签的内容进行二次处理呢,这里又有2个方案。

方案1:

使用JS,对定制标签进行二次处理,简单举例

$(function(){

varstr='{label:qqgroup}';//假设后台定制标签中有一组QQ号码,需要组合输出。

varlist=str.split("

");//

varhtml='';

$.each(list,function(index,value){

html+="客服"+(index+1)+":"+value+"

";

});

$('#demo').html(html);

})

方案2:

直接在模板中读取定制标签的内容,使用原生PHP输出(这个方式更利于SEO)

重点代码,因为PB的模板解析执行顺序,{label:**}无法直接被php解析到,那么我们就只能自己读数据库了。//假设后台有一个定制标签中是使用“|”分隔组合的一个下拉选项

$list=\core\basic\Db::table('ay_label')->field('value')->where("name='comtype'")->find();

$list=explode('|',$list->value);

foreach($listas$v){

echo''.$v.'';

}

这样我们就完成了在PbootCms模板中使用原生PHP对定制标签进行二次处理的效果。你学会了吗?

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。