返回新闻列表

pbootcms利用扩展标签二次格式化模型字段 -分割多行字段成为faq问答

发布日期: 2023-04-24 | 来源: 智软设计工作室

分割多行字段成为faq问答,首先先模型字段新增一个多行字段,填写内容如下,


问题.

答案.@

问题1.

答案.@


@是必备的。因为要拆分二次,一个组一个@


然后在,apps/home/controller/ExtLabelController.php   目录里面添加自定义标签 (扩展标签)

添加以下代码

 
   /* 必备启动函数 */
    public function run($content)
    {
        // 接收数据
        $this->content = $content;
        
        // 执行个人自定义标签函数
        $this->test();
		 // 执行个人自定义标签函数
        $this->fenge();
        
        // 返回数据
        return $this->content;
    }

	/*拆分多行文字,转换成faq样式,一个提问,一个问答 */   
private function fenge()
{
    
	
	$pattern = '/{fenges?(([^}]+))}/';
    if (preg_match($pattern, $this->content, $matches)){
        $this->content = preg_replace_callback(
            $pattern,
			
            function($matches){
               
			   
			   
			/*拆分多行文字,转换成faq样式*/   
$code = explode("@",$matches[1]);
//$count = 0;
foreach ($code as $line) {	
	
	$codeer = explode(".",$line);
	$nr.="<div role="listitem" class="opening-box w-dyn-item"><div class="col-6"><div class="h2 v-margin-0-25">";	
    $nr.=preg_replace('/<brs*/?>/i', '', $codeer[0]);  
  $nr.="</div><div class="hidden"><p class="v-margin-0-25">"; 
 $nr.= "".preg_replace('/<brs*/?>/i', '', $codeer[1])."";
 $nr.="</p></div></div><div class="box-opener lavender"><div class="box-opener-line vertical"></div><div class="box-opener-line"></div></div></div>";
	
 //$count++;

}


	 return $nr;

            },$this->content);
    }

}

最后模板文件这样调用就行了


 {fenge({content:ext_dshycwzwd})}


php文件附件:

ExtLabelController.rar


推荐技术资料

简单实现 网站转微信小程序,并且让他支持 转发给朋友 功能

2024-04-23

最近在研究网站转小程序。但是发现。直接在。index.wxml 里写<web-viewsrc="https://www.002t.cn"/>是可以实现,但是发现是 没法转发给朋友, 很麻烦,然后通过下面的方法解决。先打开index.wxml代码如下:<web-viewsrc="{{url}}"bindmessage="handl

阅读更多

pbootcms首页或者内容详情页开启分页

2024-05-09

主要是 这个标签{pboot:list scode={sort:scode} num=8 order=sorting page=1}{pboot:list scode={sort:scode} num=8 order=sorting page=1} <div class="col-12 col-sm-6 col-lg-3 featureCol mb-7 item"> <div class="border">&nb

阅读更多

Swiper轮播图视频加图片混合,完美解决方法,

2024-08-19

Swiper轮播图视频加图片混合,完美解决方法,还加入了图片浮动文字动画。下面是代码。测试是比较完美。视频播放玩了。在自动切换到下一个幻灯,<!DOCTYPEhtml><htmllang="zh"><head><metacharset="UTF-8">

阅读更多

pboot:nav 判断没有子类得时候显示同级栏目

2024-09-29

pboot:nav 判断没有子类得时候显示同级栏目 ,如果有子类 就 显示子类。{pboot:if('{pboot:nav parent={sort:scode}}[nav:name]{/pboot:nav}'!='')} {pboot:nav parent={sort:scode}} <li><a class="{pboot:2if('[nav:scode]'=='{sort:scode}

阅读更多

absolute溢出部分不隐藏 父div加入position:absolute就行

2022-06-20

通常,为了让DIV⼦元素超出部分隐藏,都是在⽗元素设置overflow:hidden,这样即可防⽌⼦元素撑开⽗元素,使⼦元素能够溢出隐藏!但是,对于position:absolute定位的⼦元素,仅仅使⽤overflow:hidden没办法将其溢出部分隐藏,需要在⽗元素上也加上⼀个定位position:relative;才能将含有position:absolute属性的⼦元素进⾏溢出

阅读更多

FFmpeg解决大视频播放卡顿-FFmpeg Batch AV Converte_3.0.5图形软件 设置批量视频转m3u8教程

2024-05-28

最近网站制作一个视频播放网站,客户视频比较大。把视频已经托管在腾讯云对象存储里面。也开启了加速。下载速度也有20M,但是视频。拖动。或者快进还是卡顿,于是找解决方案,发现把视频格式转成m3u8格式是一个很好的解决办法,他这个格式。会把视频切成n个ts个视频。而且所有的文件大小。会变小很多很多。这样测试一

阅读更多

pbootcms网站栏目有子类,怎么判断高亮

2023-03-15

解决办法,直接放二个判断即可,没有子栏目的判断{pboot:if('[nav:scode]'=='{sort:scode}')}selected{/pboot:if}点击了子栏目的判断{pboot:if('[nav:scode]'=='{sort:tcode}')}selected{/pboot:if}

阅读更多

pbootcms实现瀑布流“ajax加载更多”“无限下拉”分页调用列表,支持动静态,支持图片延迟加载

2024-05-09

pbootcms实现瀑布流“ajax加载更多”“无限下拉”分页调用列表,,支持动静态,支持图片延迟加载1、页面中引用jquery.js 与 jquery-ias.min.js注意:jquery.js库版本必须大于1.6<scriptsrc='/js/jquery.js'></script><scriptsrc="/js/jquery-ias.min.js"></script>2

阅读更多

SQLite 查询本月的数据和查询多少天之内的数据

2021-11-24

SQLite 查询本月的数据select *from ay_diy_jingxiaoshangwhere create_time between datetime('now','start of month','+1 second') anddatetime('now','start of month','+1 month','-1 second')查询多少天之内的数据,查询365天select *from ay_di

阅读更多