返回新闻列表

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


推荐技术资料

widnows2012 iis8 提示无法连接数据库 ADODB.Recordset 错误 '800a0e7d' 在一个已关闭的或无效连接的对象参照上操作不被允许。

2022-02-24

widnows2021 iis8 提示无法连接数据库 ,父目录和应用池32位都设置了还是不行,用如下方法提示:ADODB.Recordset 错误 '800a0e7d'在一个已关闭的或无效连接的对象参照上操作不被允许。解决办法。给c、windows/temp 权限多一些

阅读更多

pbootcms导出所有会员信息为表格,可指定字段

2023-07-10

改动:/apps/admin/controller/member/Membercontroller.php增加一个函数/*导出所有会员为表格 */ public function export() { $this->assign('Member', $this->model->getListall()); header("Content-Type:application/vnd.ms-excel"); &nb

阅读更多

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

2024-08-19

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

阅读更多

pboot:tags标签 显示当前页面的 tags

2021-10-18

直接写id参数当前页的{content:id}就行了。{pboot:tags id={content:id}}&nbsp;<a href='[tags:link]' class='tagc[field:highlight /]'>[tags:text]</a>{/pboot:tags}

阅读更多

pbootcms系统框架的提示语 多语言修改与判断,多数据区域提示语修改

2024-06-15

比如我们要改您访问的页面不存在,请核对后重试这个提示语,打开如下。\apps\home\controller/IndexController.php如果你是单语言那就直接改文字就行了。如果是多语言,多数据区域,那就要先获取语言 cookie然后判断,因为官网默认是cookie做多语言的。如下是代码。$lg=cookie('lg');&nb

阅读更多

网站自动翻译成英文,谷歌翻译api,怎样能打开网站默认自动翻译

2021-11-10

测试可用,就是要加载下js网站自动翻译成英文谷歌翻译api,怎样能打开网站默认自动翻译,设置Cookie就行了。也可以做多语言翻译。去除隐藏css选择项就行了。<style><!--隐藏长条-->.goog-te-banner-frame.skiptranslate { display: none !important;} body { top: 0px !important; }.goog-t

阅读更多

PBootcms权限提示跳转时间和文字修改,栏目加权限错误提示修改

2025-03-07

pb有时候给栏目加权限的时候,提示权限默认是2s页面跳转 有点麻烦,甚至不想要这个跳转提示页面按照路径找到 /core/function/handle.php把默认的1000改成你需要的时间 1000是1s 0就是直接跳转,但是0在直接跳转时候 会有一个页面马上闪烁跳转,可以把这个页面暂时display: none。找到路径 /core/template/error.html找到之后

阅读更多

html css 解决DPI=125% 网站放大网页图片的问题

2022-11-11

html css 解决DPI=125% 网站放大网页图片的问题但是我们知道这个现象的原因是因为笔记本DPI=125%导致页面整体被放大了,于是我回到浏览器中,使用Ctrl + 鼠标滚轮将网页缩小,缩小到80%的时候,我发现这个效果和UI设计稿居然保持一致了,而且图片的大小也对的上。所以到这一步,我们原因找到了,解决方案也有了,那就是通过

阅读更多

TP5 where数组查询(有多个查询条件)

2021-09-29

有查询条件就查询,多个查询条件,只要有查询,就增加一个查询条件//类型if($sotype){$where['type']=$sotype;}//合作单位if($companyid){&

阅读更多