您现在的位置是:首页 > cms教程 > PbootCMS教程PbootCMS教程
pbootcms增加foreach指定内容按条件遍历(默认逗号条件)方法
听蓉2023-01-29PbootCMS教程已有人查阅
导读通过二次开发新增的这个标签可以实现按指定的字符进行遍历,不填写char参数默认使用逗号进行分割遍历。如上图:图中想把abcd用竖线进行分割,也可以使用逗号或其他自定义符号。

然后前台用新增的标签进行遍历调用
{pboot:foreach str={label:hotkey} char=|}
<a href="/search/?keyword=[foreach:name]" target="_blank" rel="nofollow">[foreach:name]</a>
{/pboot:foreach}
修改步骤1、打开appshomecontrollerParserController.php,搜索“$this->parserReplaceKeyword”,在其下方增加:
$content=$this->parserForeachLabel($content);//指定随意内容按条件遍历

2、继续在之前文件里搜索“解析生成内容链接”,在其上方增加:
// 解析指定随意内容遍历,支持设定分隔符
public function parserForeachLabel($content)
{
$pattern = '/{pboot:foreach(s+[^}]+)?}([sS]*?){/pboot:foreach}/';
$pattern2 = '/[foreach:([w]+)(s+[^]]+)?]/';
if (preg_match_all($pattern, $content, $matches)) {
$count = count($matches[0]);
for ($i = 0; $i < $count; $i ++) {
// 获取调节参数
$params = $this->parserParam($matches[1][$i]);
$str = '';
$char = ',';
if (! self::checkLabelLevel($params)) {
$content = str_replace($matches[0][$i], '', $content);
continue;
}
// 分离参数
foreach ($params as $key => $value) {
switch ($key) {
case 'num':
$num = $value;
break;
case 'str':
$str = $value;
break;
case 'char':
if ($value) $char = $value;
break;
}
}
// 无数据直接替换为空并跳过
if (! $str) {
$content = str_replace($matches[0][$i], '', $content);
continue;
}
// 匹配到内部标签
if (preg_match_all($pattern2, $matches[2][$i], $matches2)) {
$count2 = count($matches2[0]); // 循环内的内容标签数量
} else {
$count2 = 0;
}
$out_html = '';
$key = 1;
$arr = explode($char,$str);
foreach ($arr as $value) { // 按查询图片条数循环
$one_html = $matches[2][$i];
for ($j = 0; $j < $count2; $j ++) { // 循环替换数据
$params = $this->parserParam($matches2[2][$j]);
switch ($matches2[1][$j]) {
case 'n':
$one_html = str_replace($matches2[0][$j], $this->adjustLabelData($params, $key) - 1, $one_html);
break;
case 'i':
$one_html = str_replace($matches2[0][$j], $this->adjustLabelData($params, $key), $one_html);
break;
case 'name':
$one_html = str_replace($matches2[0][$j], $this->adjustLabelData($params, $value), $one_html);
break;
}
}
$key ++;
$out_html .= $one_html;
if (isset($num) && $key > $num) {
unset($num);
break;
}
}
$content = str_replace($matches[0][$i], $out_html, $content);
}
}
return $content;
}
调用标签1、默认方式,用逗号进行分割,例如:定制表里填写了a,b,c,然后通过遍历组合生成搜索链接。
{pboot:foreach str={label:hotkey}}
<a href="/search/?keyword=[foreach:name]" target="_blank" rel="nofollow">[foreach:name]</a>
{/pboot:foreach}
2、其他分割符合,使用char参数,如:|
{pboot:foreach str={label:hotkey} char=|}
<a href="/search/?keyword=[foreach:name]" target="_blank" rel="nofollow">[foreach:name]</a>
{/pboot:foreach}
注意事项二次开发文件随着在线更新后会消失,在线更新后需要手动重新二次开发。
本文标签:
很赞哦! ()
相关教程
- (自适应)证书授权书防伪查询系统pbootcms模板
- (自适应)水墨风中药馆中医名医介绍pbootcms网站模板
- (自适应)蓝色五金制品配件管件pbootcms网站源码下载
- (PC+WAP)楼承板建筑工程合金钢铁材料pbootcms网站源码下载
- (PC+WAP)门窗门业家居定制铝合金产品pbootcms模板下载
- (自适应)驾校培训学车活动免费pbootcms源码下载
- (自适应响应式)英文外贸电子产品手机配件网站pbootcms模板
- (PC+WAP)盆栽绿植观赏植物花卉租赁免费pbootcms网站模板
- (自适应响应式)家电维修清晰服务网站pbootcms模板免费下载
- (自适应)英文电子芯片电子元件网站pbootcms模板下载
- (自适应)科技产品设备技术作品pbootcms网站模板带下载和招聘
- (自适应响应式)英文外贸医疗科研耗材设备pbootcms网站模板
图文教程
pbootcms首页Banner轮播广告图的调用和制作方法
调用轮播图片是每个企业站常用的,今天我们介绍pbootcms调用轮播图的标签代码。这里有两个思路,使用PbootCMS自带的轮播图片模块或者自建一个轮播模型。
PbootCMS上传文件大小限制怎么设置
在PbootCMS中,上传文件大小限制主要由PHP的配置文件php.ini控制。为了允许上传更大的文件,需要对php.ini文件中的多个参数进行调整。以下是详细的步骤和说明:打开php.ini文件:
pbootcms宝塔安装方法步骤教程
pbootcms宝塔安装方法,pbootcms程序安装到宝塔及安装到其他主机的方法是一样的,下面麦站介绍下步骤。
pbootcms修改权限后仍然提示“会话目录写入权限不足”的解决方法
如果您已经按照建议修改了PbootCMS相关目录的权限,但仍然收到“会话目录写入权限不足”的提示,可能是由于以下几个原因导致的:
相关源码
-
(自适应响应式)供应链进出口服务pbootcms企业网站源码为供应链管理、进出口服务类企业设计,特别适合展示物流网络、贸易服务和供应链解决方案。采用响应式技术,确保在各类设备上都能呈现企业服务内容。查看源码 -
(带手机版)绿色生态农业种植农产品网站pbootcms源码下载本模板基于PbootCMS内核开发,为生态农业企业量身打造,适用于农业种植、有机农场、农产品电商等业务场景。模板设计充分体现绿色环保理念,突出农业特色,同时保持简洁大气的视觉效果,帮助农业企业建立专业形象。查看源码 -
(PC+WAP)绿色产品环保设备垃圾桶厂家公司网站pbootcms模板为垃圾桶生产商、环保设备企业打造的高端响应式门户模板,基于PbootCMS开源内核深度开发。采用HTML5自适应架构,无缝实现PC与手机端数据实时同步与交互优化查看源码 -
(自适应)蓝色五金制品配件管件pbootcms网站源码下载基于PbootCMS内核开发的五金行业专用模板,采用响应式设计架构,确保产品展示在各类移动设备上的呈现。通过模块化布局与工业风视觉设计,帮助五金企业高效展示产品规格、应用场景及技术支持,建立专业可靠的行业形象。查看源码 -
帝国cms7.2淘宝客导购自媒体博客网站模板源码本模板基于帝国CMS7.2内核深度开发,为淘宝客、商品导购类自媒体及博客网站设计。通过可视化后台管理,可快速搭建具备商品推荐、比价功能的内容平台,帮助用户实现流量高效转化。查看源码 -
(自适应响应式)黑色酷炫高端数码摄影pbootcms网站模板源码本模板基于PbootCMS开发,为摄影工作室、个人摄影师及摄影爱好者设计。采用深色系风格,突出摄影作品展示效果,适配各类数码设备浏览。适用于作品集展示查看源码
| 分享笔记 (共有 篇笔记) |

