我们在做类似于酒店房型等类型的时候,需要用到文本组字段模型,但PHPCMS并未提供该模型。如下图所示效果:
1.打开phpcms\modules\content\fields目录,复制文件夹downfiles,并改名为textgroups。
2.打开phpcms\modules\content\fields\fields.inc.php文件,增加字段类型:
'textgroups'=>'文本组字段',
3.打开phpcms\modules\content\fields\textgroups目录(第一步复制的文...
1.单页优先使用本栏目图片,若本栏目没有图片,则使用父栏目的栏目图,否则使用css定义的默认图片
<div class="banner"{if $CATEGORYS[$catid][image]} style="background:url({$CATEGORYS[$catid][image]})"{else} style="background:url({$CATEGORYS[$parentid][image]})"{/if}></div>
三种结果:
<div class="banner" style="background:url({$CATEGO...
漏洞名称:phpcms注入漏洞
补丁文件:/api/phpsso.php
漏洞描述:phpcms注入漏洞。【注意:该补丁为云盾自研代码修复方案,云盾会根据您当前代码是否符合云盾自研的修复模式进行检测,如果您自行采取了底层/框架统一修复、或者使用了其他的修复方案,可能会导致您虽然已经修复了改漏洞,云盾依然报告存在漏洞,遇到该情况可选择忽略该漏洞提示】
源代码:
/**
* 同步登陆
*/
if ($action == 'synlogin') {
if(!isset($arr['uid'])) exit('0');
...
漏洞名称:phpcms前台注入导致任意文件读取漏洞
补丁文件:/phpcms/modules/content/down.php
漏洞描述:phpcms的/phpcms/modules/content/down.php文件中,对输入参数$_GET['a_k']未进行严格过滤,导致SQL注入的发生,黑客可利用该漏洞读取任意文件。【注意:该补丁为云盾自研代码修复方案,云盾会根据您当前代码是否符合云盾自研的修复模式进行检测,如果您自行采取了底层/框架统一修复、或者使用了其他的修复方案,可能会导致您虽然已经修复了改漏洞,云盾依然报告存在漏洞,遇到该情况可选择忽略该漏洞...
漏洞名称:phpcmsv9宽字节注入
补丁文件:/phpcms/modules/pay/respond.php
漏洞描述:phpcmsv9.5.9以后版本开始默认使用mysqli支持,在\phpcms\modules\pay\respond.php中,因为代码逻辑不够严谨,导致宽字节注入。【注意:该补丁为云盾自研代码修复方案,云盾会根据您当前代码是否符合云盾自研的修复模式进行检测,如果您自行采取了底层/框架统一修复、或者使用了其他的修复方案,可能会导致您虽然已经修复了改漏洞,云盾依然报告存在漏洞,遇到该情况可选择忽略该漏洞提示】
源代码:
...
phpcms v9的SEO首页和栏目页以及内容页都是可以独立配置的。
下面来解读一下它的SEO代码在不同页面的不同意思以及具体的使用方法:
0.优先级总结:内容SEO > 栏目SEO > 站点SEO
1.<title>{if isset($SEO['title']) && !empty($SEO['title'])}{$SEO['title']}{/if}{$SEO['site_title']}</title>
在首页,它的意思是:如果后台配置了站点SEO,则显示“SEO站点标题”,否则显示“站...
phpcms v9 自带的采集功能真能针对 2012/07/12 10:19 这种标准格式进行处理,但国内大部分门户网站的时间格式都是 2012年07月21日10:19 这个样子的,这就导致了采集回来的时间没有办法入库,这给很多站长带来了苦恼,下面就分享一个方法来解决这个问题
打开phpcms/modules/collection/classes/collection.class.php
此类是专门处理采集回来的信息的
从中我们可以找到这么一段代码
if ($config['time_rule']) {
$time_rule = ...
一、phpcms在添加栏目的时候其英文目录是不能有空格的,例如填写contact us是不行的,那么就需要想办法处理一下了。
使用str_replace()可以很容易的解决此问题。代码如下(假设添加栏目时的英文目录中的空格用"-"代替,以contact-us为例):
{if $CATEGORYS[$parentid][catdir]}
<?php
$str = str_replace("-"," ",$CATEGORYS[$parentid][catdir]);
echo strtoupper($str);
?>
{else}
<?php
...
有的时候需要会员在一个页面就可以同时修改昵称、手机号码、邮箱、密码等信息,而phpcms默认的是将几者分开处理的,这样极大的不方便,为此,根据项目需求,半吊子程序猿的我写了一个小函数来实现这个功能,不喜勿喷咯,哈哈!
第一步:将以下代码放入\phpcms\modules\member\index.php中:
public function gai_intro() {
if(isset($_POST['dosubmit'])) {
$updateinfo = array();
//修改手机号码
if($_POST['mobile'] && ...