当前位置:网站首页 >  百科

PHPCMS V9文章来源标签全场景调用实操指南 附常见报错快速解决方案

时间:2026年05月24日 04:13:06 来源:易频IT社区

前期准备说明

本指南适用PHPCMS V9全版本(UTF-8/GBK编码均兼容),操作前请先备份对应模板文件,默认模板存储路径为/phpcms/templates/你的模板目录/,避免修改错误无法恢复。所有操作完成后需到后台「更新缓存」模块更新全站缓存、模板缓存、URL缓存,再到前台验证效果。

默认场景文章来源标签调用方法

列表页调用

适用场景:栏目列表页、搜索结果列表页、相关文章列表,代码需放在列表循环标签{loop $data $r}内部。

仅调用来源名称,无需跳转链接:

``` {$r['copyfrom']} ```

调用来源名称+跳转链接:

``` {$r['copyfrom']} ```

若需避免后台未填来源时输出空标签,可增加判断逻辑,无来源时默认展示“本站原创”:

``` {if $r['copyfrom']} 来源:{$r['copyfrom']} {else} 来源:本站原创 {/if} ```

内容详情页调用

适用场景:文章正文页的来源信息展示,可直接在详情页模板任意位置插入以下代码:

``` {if $copyfrom} 来源:{$copyfrom} {else} 来源:本站原创 {/if} ```

若需调用后台「来源管理」模块上传的来源logo图标,使用以下代码:

``` {if $copyfromthumb} {$copyfrom} {/if} ```

拓展场景调用方法

首页/专题页调用指定栏目文章的来源

适用场景:首页热点板块、专题聚合页调用带来源属性的文章列表,以下示例为调用栏目ID为1的10篇最新文章,附带来源信息:

``` {pc:content action="lists" catid="1" num="10" order="id DESC"} {loop $data $r}
{$r['title']} {if $r['copyfrom']} {$r['copyfrom']} {else} 本站原创 {/if}
{/loop} {/pc} ```

若需仅展示填写了外部来源的文章,在PC标签中增加where参数过滤即可:

``` {pc:content action="lists" catid="1" num="10" order="id DESC" where="copyfrom != ''"} ```

调用指定来源的所有文章

适用场景:合作媒体专栏、指定来源文章聚合页,以下示例为调用所有来源为「人民日报」的20篇最新文章:

``` {pc:content action="lists" where="copyfrom = '人民日报'" num="20" order="id DESC"} {loop $data $r}
{$r['title']} {date('Y-m-d',$r['inputtime'])}
{/loop} {/pc} ```

注意事项:GBK编码版本需确保来源名称的编码和模板编码一致,避免出现乱码;若来源名称包含单引号等特殊符号,需在后台发布时做转义处理。

调用来源管理自定义字段

若你在后台「来源管理」模块新增了自定义字段(比如来源备案号、联系邮箱等,字段名示例为beian),可通过关联查询调用对应信息,代码示例:

``` {pc:content action="lists" catid="1" num="10" order="id DESC"} {loop $data $r} {$r['title']} {php $copyfrom_info = $this->db->get_one(array('name'=>$r['copyfrom']),'','phpcms_copyfrom');} 来源备案号:{$copyfrom_info['beian']} {/loop} {/pc} ```

注意:代码中的phpcms_copyfrom是系统默认来源表名,如果你修改了数据库表前缀,需替换为你自己的表前缀(比如你的前缀是pc_,就改成pc_copyfrom)。

常见报错与解决方案

标签调用后输出为空

排查步骤:1. 检查对应文章后台是否填写了来源信息,空值会默认不输出;2. 到后台「更新缓存」模块更新所有缓存后刷新前台;3. 若为自定义PC标签调用,检查where条件是否存在拼写错误、字段名是否正确。

来源链接跳转404

原因:后台填写来源链接时未加http/https协议头,系统会默认拼接你站点的域名导致跳转错误,可直接修改发布规则要求编辑补全协议头,也可通过以下代码自动适配:

``` {$r['copyfrom']} ```

GBK版本来源名称乱码

解决方案:1. 模板文件保存时选择ANSI编码,不要使用UTF-8无BOM格式,确保和系统编码一致;2. 若需要转码为UTF-8输出,可在调用前增加转码代码:{$r['copyfrom'] = iconv('gbk','utf-8//ignore',$r['copyfrom'])}

调用效果校验

所有修改完成后按以下步骤校验:第一步:后台依次更新全站缓存、模板缓存、URL缓存;第二步:前台分别打开列表页、详情页、首页对应板块,检查来源是否正常展示、链接是否正常跳转、无来源时是否展示默认的“本站原创”;第三步:若使用多站点版本PHPCMS,需切换到对应子站点检查调用是否正常。若仍有异常可直接清空/caches目录下的所有文件,重新生成缓存即可。

相关推荐

最新

热门

推荐

精选

标签

易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。

Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图