以下代码只针对 V6.0 以上版本
场景模拟
基于产品模块的一些详情页需要调用当前产品关联的一些文章
后台部分
打开产品模块对应的字段,添加一个字段,如图所示
文件修改
文件位置:app/common/service/Cms.php
文件位置:217
行附近,或查找 changeInfo
添加代码:
// 如果字段为guanlian字段,查询并赋值新的字段if ($field['field'] == 'guanlian') { $str = $info[$field['field']]; // 17,16,15,14,11 // 根据数据库存储的查询出url和title,形成数组后赋值给$info一个新的字段,前端通过循环来读取 if (!empty($str)) { $list = \app\common\model\Article::whereIn('id', $str)->select(); if ($list) { $result = []; foreach ($list as $k => $v) { $result[] = [ 'id' => $v['id'], 'title' => $v['title'], 'url' => (string)getShowUrl($v) ]; } $info[$field['field'].'_arr'] = $result; } }}
实现思路:当字段为多选且字段名称为guanlian
时查询关联文章的标题和地址
前台调用
{if isset($info.guanlian_arr)} {foreach $info.guanlian_arr as $key=>$vo } <a href="{$vo.url}" target="_blank">{$vo.title}</a><br> {/foreach}{/if}
前台效果
后台效果
希望以上内容对你有所帮助!如果还有其他问题,请随时提问。 各类知识收集 拥有多年CMS企业建站经验,对 iCMS, Fastadmin, ClassCMS, LeCMS, PbootCMS, PHPCMS, 易优CMS, YzmCMS, 讯睿CMS, 极致CMS, Wordpress, HkCMS, YznCMS, WellCMS, ThinkCMF, 等各类cms的相互转化,程序开发,网站制作,bug修复,程序杀毒,插件定制都可以提供最佳解决方案。