大家做网站的时候,可能很多时候分页样式都得根据模板的要求来控制的,这时很多人都会去修改全局文件phpcms\libs\functions\global.func.php里的pages()函数,这样问题就来了:这个分页函数连后台也会影响到的,就是说,这个分页函数是全站共用的。打开phpcms\libs\functions\global.func.php这个文件,找到分页函数,复制一下,粘贴到默认分页函数的下面,重新命名,比如我的就命名为front_pages,保存.
打开phpcms/libs/classes/template_cache.class.php找到
$str .= '$pages = pages($'.$op.'_total, $page, $pagesize, $urlrule);';
在这行的下面加上
$str .= '$pages = pages($'.$op.'_total, $page, $pagesize, $urlrule);';
$str .= '$front_pages = front_pages($'.$op.'_total, $page, $pagesize, $urlrule);';
找到
$str .= '$r = $get_db->sql_query("'.$sql.'");$s = $get_db->fetch_next();$pages=pages($s[\'count\'], $page, $pagesize, $urlrule);';
加入
$str .= '$r = $get_db->sql_query("'.$sql.'");$s = $get_db->fetch_next();$pages=pages($s[\'count\'], $page, $pagesize, $urlrule);';
$str .= '$front_pages=front_pages($s[\'count\'], $page, $pagesize, $urlrule);';
保存。最后,如果你要使用你自定义的分页函数,那么在模板中直接用{$front_pages}就可以了
Phpcms内容编辑器过滤不支持iframe和JavaScript的解决办法
我去把phpcms\libs\functions\global.func.php中的函数函数文件都看了一遍,终于找到了问题所在。trim_script这个函数转定义了标签,于是乎注释掉
function trim_script($str) {
if(is_array($str)){
foreach ($str as $key => $val){
$str[$key] = trim_script($val);
}
}else{
// $str = preg_replace ( '/\<([\/]?)script([^\>]*?)\>/si', '<\\1script\\2>', $str );
// $str = preg_replace ( '/\<([\/]?)iframe([^\>]*?)\>/si', '<\\1iframe\\2>', $str );
// $str = preg_replace ( '/\<([\/]?)frame([^\>]*?)\>/si', '<\\1frame\\2>', $str );
$str = str_replace ( 'javascript:', 'javascript:', $str );
}
return $str;
}
修改后台左侧导航 phpcms\modules\admin\templates\left.tpl.php
phpcms\modules\admin\class\admin.class.php admin_menu
顶部 phpcms\modules\admin\templates\index.tpl.php
欢迎页右边 phpcms\modules\admin\templates\main.tpl.php
位置:扩展 > 扩展 > 菜单管理 >
说明:
一、 本功能用于后台各功能菜单的设置操作。
二、 为系统分配权限调用,所有系统用到的功能方法,都需要添加到菜单管理里。
一、 添加菜单
添加菜单分为 全新添加 和在已有菜单处添加子菜单 。二种方法仅在 上级菜单 默认值处有异,其它相同。
添加功能菜单时,首先选择上级菜单目录。填写中英文对应菜单名称,所在模块名,及对应文件和处理方法名。如有参数,请于下填写参数信息。如下图所示
如选择显示菜单,则在导航 处显示,反之不显。以上图为例,选择不显示,图示如下
二、 菜单管理
菜单管理仅涉及编辑 ,修改、排序等操作在此不再详述。