phpcmsv9自定义资料管理模块

作者:@ouyang 发布时间:2016年11月27日 阅读: 2,891 分类:发现分享

温馨提示:该插件独立于系统,不涉及系统文件修改,不用考虑系统升级问题。

安装说明:

1.把解压出来的phpcms目录直接替换到你的V9根目录下面即可。

2.进入后台的【模块】-【模块管理】,找到【自定义资料管理】右边的安装,点击安装即可。

阅读剩余部分...

phpcms主程序与web目录分离

作者:@ouyang 发布时间:2016年06月10日 阅读: 2,790 分类:学习笔记

在网站部署中,考虑网站的安全行问题,可以将您的网站主程序与WEB目录分离,使主程序在WEB目录之外,从而提高网站的安全性。

分离方法
1.将PHPCMS V9中程序主框架目录phpcms移动至web目录之外
如图:
11
2.修改web目录下程序入口文件index.php文件为

/**
 *  index.php PHPCMS 入口
 *
 * @copyright           (C) 2005-2010 PHPCMS
 * @license             http://www.phpcms.cn/license/
 * @lastmodify          2010-6-1
 */
 //PHPCMS根目录
define('PHPCMS_PATH', dirname(__FILE__).DIRECTORY_SEPARATOR);
include '../phpcms/base.php';
pc_base::creat_app();

3.修改web目录下接口文件文件api.php文件为

/**
 *  index.php API 入口
 *
 * @copyright           (C) 2005-2010 PHPCMS
 * @license             http://www.phpcms.cn/license/
 * @lastmodify          2010-7-26
 */
define('PHPCMS_PATH', dirname(__FILE__).DIRECTORY_SEPARATOR);
include '../phpcms/base.php';
$param = pc_base::load_sys_class('param');
 
$op = isset($_GET['op']) && trim($_GET['op']) ? trim($_GET['op']) : exit('Operation can not be empty');
if (!preg_match('/([^a-z_]+)/i',$op) && file_exists(PHPCMS_PATH.'api/'.$op.'.php')) {
    include PHPCMS_PATH.'api/'.$op.'.php';
} else {
    exit('API handler does not exist');
}

这样即可以完成主程序与web目录分离

phpcmsv9 幻灯片管理模块_UTF8

作者:@ouyang 发布时间:2016年06月07日 阅读: 2,572 分类:技术相关

幻灯片管理模块简介:

1、可创建多个位置,一个网站多个幻灯处调用互不影响。
2、独立模块,不修改系统内核,不用担心升级问题。
3、标签调用灵活。

安装:
1、复制本目录下面的phpcms目录到你的V9根目录下面即可。
2、进入后台模块管理中,找到【幻灯片管理】,点击【安装】,安装完毕后就可以使用了。

使用:
1.安装完后,找到【内容】-【幻灯片管理】。
2.先添加一个位置,比如:【首页导航下方幻灯】,这个位置的名字你可以自己随便起。一个网站可以添加多个位置,根据你自己需求来添加。
3.接下来,就可以添加幻灯片了。点击【添加幻灯片】按钮。在弹出的窗口中填入相关信息。
4.若多个,以此类推添加即可。

前台模板标签调用:

{pc:slider action=”lists” postion=”54″ siteid=”$siteid” order=”desc” num=”4″}
{loop $data $r}

排序编号:{$r[listorder]}

描述:{$r[name]}

链接地址:{$r[url]}

图片:{$r[image]}


{/loop} {/pc}

标签说明:
action 显示记录,这个是固定的。
postion是指位置ID,ID在后台幻灯片管理中可见位置ID。
order 是幻灯的排序,DESC降序,ASC升序排序。
num 条数
支持的全部标签:
id,幻灯记录的ID
typeid,幻灯记录所属位置ID
siteid,站点ID
name,记录的标题或者描述
listorder,排序
url,幻灯的链接地址
image,幻灯的上传图片地址
addtime,添加时间,如果在标签中调用,使用:{date(“Y-m-d H:m:s”,$r[addtime])}
isshow,是否显示,1为显示,0为不显示。

phpcmsv9 幻灯片管理模块_UTF8

本文来源:守护幸福的博客 http://www.ued8.com/?p=795

解决page单网页新增二级栏目后一级栏目不能够编辑的问题

作者:@ouyang 发布时间:2016年06月05日 阅读: 3,033 分类:学习笔记

在modules/content/content.php 的public_categorys方法里1027行左右,把

if (!empty($categorys)) {

}

里面的代码改为以下的:

$tree->init($categorys);
            switch ($from) {
                case 'block':
                    $strs = "<span class='\$icon_type'>\$add_icon<a href='?m=block&c=block_admin&a=public_visualization&menuid=" . $_GET['menuid'] . "&catid=\$catid&type=list' target='right'>\$catname</a> \$vs_show</span>";
                    $strs2 = "<img src='" . IMG_PATH . "folder.gif'> <a href='?m=block&c=block_admin&a=public_visualization&menuid=" . $_GET['menuid'] . "&catid=\$catid&type=category' target='right'>\$catname</a>";
                    break;

                default:
                    $strs = "<span class='\$icon_type'>\$add_icon<a href='?m=content&c=content&a=\$type&menuid=" . $_GET['menuid'] . "&catid=\$catid' target='right' onclick='open_list(this)'>\$catname</a></span>";
                    $strs2 = "<span class='folder'><a href='?m=content&c=content&a=\$type&menuid=" . $_GET['menuid'] . "&catid=\$catid' target='right' onclick='open_list(this)'>\$catname</a></span>";
                    break;
            }
            $categorys = $tree->get_treeview(0, 'category_tree', $strs, $strs2, $ajax_show);

PHPCMS V9二次开发自定义后台访问入口

作者:@ouyang 发布时间:2016年03月19日 阅读: 2,147 分类:学习笔记

PHPCMS V9由于采用了MVC的设计模式,所以它的后台访问地址是固定的,虽然可以通过修改路由配置文件来实现修改,但每次都修改路由配置文件对于我来说有点麻烦 了,而且一不小心就会出错。这里使用另外一个一劳永逸的方法,达到了方便修改访问后台入口的目的,整个修改共分两步:

第一步:
在网站根目录创建一个文件夹,以后就要通过这个文件夹进入后台登录界面的,所以文件夹名就要取一个不易被人轻易猜到的名称。这里作为演示,我就取为 houtai 好了。接着,在这个文件夹里新建一个文件index.php,内容为:

<?php
define('PHPCMS_PATH', realpath(dirname(__FILE__) . '/..') . '/');
include PHPCMS_PATH . '/phpcms/base.php';
// pc_base::creat_app();
$session_storage = 'session_' . pc_base :: load_config('system', 'session_storage');
pc_base :: load_sys_class($session_storage);
session_start();
$_SESSION['right_enter'] = 1;

unset($session_storage);
header('location:../index.php?m=admin');
?>

第二步:
在 phpcms/modules/admin/ 文件夹里新建一个文件 MY_index.php(切记MY为大写,index为小写),内容为:

<?php
defined('IN_PHPCMS') or exit('No permission resources.');
class MY_index extends index {
public function __construct() {
if(empty($_SESSION['right_enter'])) {
header('location:./');exit;
}
parent::__construct();
}

public function public_logout() {
$_SESSION['right_enter'] = 0;
parent::public_logout();
}
}
?>

修改完成。以后就只能通过 http://域名/houtai/ 目录访问后台登录入口 了,如果直接使用 index.php?m=admin 访问的话,会直接跳转到网站首页,这样就阻止了对后台登录入口的直接访问了。当然houtai这个目录名可以随意修改的!

文章来自:周涛blog 原文地址:http://www.zhoutao.org/blog/2013/03/145.html

PHP获取当前日期和时间格式化方法

作者:@ouyang 发布时间:2016年01月24日 阅读: 2,747 分类:学习笔记

使用函式 date() 实现


显示的格式: 年-月-日 小时:分钟:妙

相关时间参数:
a - "am" 或是 "pm"
A - "AM" 或是 "PM"
d - 几日,二位数字,若不足二位则前面补零; 如: "01" 至 "31"
D - 星期几,三个英文字母; 如: "Fri"
F - 月份,英文全名; 如: "January"
h - 12 小时制的小时; 如: "01" 至 "12"
H - 24 小时制的小时; 如: "00" 至 "23"
g - 12 小时制的小时,不足二位不补零; 如: "1" 至 12"
G - 24 小时制的小时,不足二位不补零; 如: "0" 至 "23"
i - 分钟; 如: "00" 至 "59"
j - 几日,二位数字,若不足二位不补零; 如: "1" 至 "31"
l - 星期几,英文全名; 如: "Friday"
m - 月份,二位数字,若不足二位则在前面补零; 如: "01" 至 "12"
n - 月份,二位数字,若不足二位则不补零; 如: "1" 至 "12"
M - 月份,三个英文字母; 如: "Jan"
s - 秒; 如: "00" 至 "59"
S - 字尾加英文序数,二个英文字母; 如: "th","nd"
t - 指定月份的天数; 如: "28" 至 "31"
U - 总秒数
w - 数字型的星期几,如: "0" (星期日) 至 "6" (星期六)
Y - 年,四位数字; 如: "1999"
y - 年,二位数字; 如: "99"
z - 一年中的第几天; 如: "0" 至 "365"

phpcms其中获取内容也时间方式为:{date('Y-m-d H:i:s', $rs['inputtime'])}

修改phpsso_server的工作路径

作者:@ouyang 发布时间:2016年01月12日 阅读: 2,613 分类:学习笔记

1、移动phpsso_server目录

将根目录下的phpsso_server移动到其他文件路径下。
2、给该目录绑定新的域名,一级域名或者二级域名均可。
3、修改 phpsso_server 下面的配置文件。

阅读剩余部分...

phpcms v9文章排序功能的方法

作者:@ouyang 发布时间:2016年01月02日 阅读: 2,399 分类:学习笔记

phpcms v9自带的相关文章、专题等模块不支持order排序,调用的相关文章、专题默认为升序,这样就造成了一个问题,调出来的相关文章是最早的文章,没有时效性。我们只能通过修改程序文件,只需简单修改一个文件,就能达到我们的需求。
修改相关文章排序的方法:
打开根目录下的phpcms/modules/content/classes/content_tag.class.php,找到

$r = $this->db->select($sql2, '*', $limit, '','','id');

修改为:

$r = $this->db->select($sql2, '*', $limit, $order,'','','id');

PC标签格式如下:

{pc:content action="relation" relation="$relation" id="$id" catid="$catid" num="5" order="inputtime DESC" keywords="$rs[keywords]"}

阅读剩余部分...