phpcms流程1:

  1. 安装

将下载好的文件放到www目录下

地址栏中输入

http://localhost/phpcms/install_package/install

打开安装页面

进行安装即可。

如果出现:

需要去修改配置文件:

Caches/configs/database.php

设置相应的用户名密码。

  1. 建立模板

在install_package\phpcms\templates\文件夹下建立模板文件夹如:

install_package\phpcms\templates\qiye\

在模板文件夹下新建文件夹content:

install_package\phpcms\templates\qiye\content

其中:

header.html 代表的是页面顶部

footer.html  代表的是页面底部

category.html  文章频道页

category_picture.html  图片频道页

index.html  网站首页

list.html  列表页

list_download.html  下载列表页

list_picture.html  图片列表页

show.html  文章内容页

show_picture.html  图片内容页

根据需要来制作相应的页面,一般来说做企业站,只需要做顶部,尾部,主页,内容页和列表页

其中所有页面的JS文件存放在

install_package/statics/js/文件夹下

其中所有页面的CSS文件存放在

install_package/statics/css/文件夹下

其中所有页面的图片文件存放在

install_package/statics/images/文件夹下

这些路径可以在后台设置:

  1. 设置要使用的模板

默认模板叫做default

在该页面将我们自己的模板启用

然后到设置里面将站点修改

点击修改:

将风格修改成我们自己的。

找到模型管理:

点击修改:

设置相应的模板

找到栏目管理:

点击修改:

设置相应的模板

最后更新栏目缓存,生成首页即可。

  1. 修改模板页面的路径

因为我们将模板的JS CSS和图片都放到了特定的路径下,所以模板页面对于这三项的引用路径也要进行替换。

替换方式:

{CSS_PATH} 代表CMS定义的CSS存放路径

{JS_PATH} 代表CMS定义的JS存放路径

{IMG_PATH} 代表CMS定义的图片存放路径

将原路径进行查找替换如:

点击替换全部。

重复执行上个步骤,将所有页面的CSS,JS和图片文件夹全部替换。

  1. 替换顶部标签

SEO标题:{if isset($SEO['title']) && !empty($SEO['title'])}{$SEO['title']}{/if}{$SEO['site_title']}

关键字:{$SEO['keyword']}

描述:{$SEO['description']}

设为首页代码:

<a href='#' onClick="this.style.behavior='url(#default#homepage)';this.setHomePage('{siteurl($siteid)}');">设为首页</a>

加入收藏代码:

<a href="javascript:window.external.addFavorite('{siteurl($siteid)}','{if isset($SEO['title']) && !empty($SEO['title'])}{$SEO['title']}{/if}{$SEO['site_title']}');">加入收藏</a>

首页超链接:

{siteurl($siteid)}

  1. 替换尾部标签:

版权信息:{get_pc_version(1)}

附录:标签手册

内容模块

内容模块PC标签调用说明

模块名:content

模块提供的可用操作

操作名

说明

lists

内容数据列表

relation

内容相关文章

hits

内容数据点击排行榜

category

内容栏目列表

position

内容推荐位列表

position操作说明如下:

内容推荐位列表(position):

可用参数:

参数名

是否必须

默认值

说明

posid

null

推荐位ID

catid

null

调用栏目ID

thumb

0

是否仅必须缩略图

order

null

排序类型

num

null

数据调用数量

代码例子:

{pc:content  action="position" posid="2" order="listorder DESC" num="4"}

<ul>

{loop $data $key $val}

<li> <a href="{$val['url']}">{$val['title']}</a></li>

{/loop}

</ul>

{/pc}

返回参数如下表:

字段

类型

默认

注释

title

char(80)

NULL

推荐位标题

url

char

NULL

推荐位链接地址

inputtime

int(10)

NULL

推荐位发布时间

thumb

char

NULL

推荐位缩略图

其他

不定

根据模型所设置的加入到推荐位中字段名称

内容列表(lists):

可用参数:

参数名

是否必须

默认值

说明

catid

null

调用栏目ID

where

null

sql语句的where部分

thumb

0

是否仅必须缩略图

order

null

排序类型

num

null

数据调用数量

moreinfo

0

是否调用副表数据

提醒:从PHPCMS V9 Beta 20101105版本开始支持moreinfo参数属性,本参数表示在返回数据的时候,会把副表中的数据也一起返回。一个内容模型分为2个表,一个主表一个副表,主表中一般是保存了标题、所属栏目等等短小的数据(方便用于索引),而副表则保存了大字段的数据,如内容等数据。在模型管理中新建字段的时候,是允许你选择存入到主表还是副表的(我们推荐的是,把不重要的信息放到副表中)。想要在列表中调取副表的数据就需要在PC标签中使用moreinfo这个属性。

代码例子:

{pc:content  action="lists" catid="2" order="id DESC" num="4"}

<ul>

{loop $data $key $val}

<li> <a href="{$val['url']}">{$val['title']}</a></li>

{/loop}

</ul>

{/pc}

where用法:

{pc:content  action="lists" catid="2" where="`thumb`!='' AND `status`=99" order="id DESC" num="4"}

<ul>

{loop $data $key $val}

<li> <a href="{$val['url']}">{$val['title']}</a></li>

{/loop}

</ul>

{/pc}

返回参数如下表:

字段

类型

默认

注释

title

char(80)

NULL

推荐位标题

url

char

NULL

推荐位链接地址

inputtime

int(10)

NULL

推荐位发布时间

thumb

char

NULL

推荐位缩略图

其他

不定

其他模型字段

点击排行榜(hits):

可用参数:

参数名

是否必须

默认值

说明

catid

null

调用栏目ID

day

0

调用多少天内的排行

order

null

排序类型(本月排行- monthviews DESC 、本周排行 - weekviews DESC、今日排行 - dayviews DESC)

num

null

数据调用数量

代码例子:

{pc:content  action="hits" catid="2" order="weekviews DESC" num="10"}

<ul>

{loop $data $key $val}

<li> <a href="{$val['url']}">{$val['title']}</a></li>

{/loop}

</ul>

{/pc}

返回参数如下表:

字段

类型

默认

注释

title

char(80)

NULL

推荐位标题

url

char

NULL

推荐位链接地址

inputtime

int(10)

NULL

推荐位发布时间

thumb

char

NULL

推荐位缩略图

其他

不定

其他模型字段

相关文章(relation):

可用参数:

参数名

是否必须

默认值

说明

catid

null

调用栏目ID

relation

$relation

无需更改

keywords

null

内容页面取值:$rs[keywords]

num

null

数据调用数量

代码例子:

{pc:content action="relation" relation="$relation" catid="$catid" num="5" keywords="$rs[keywords]"}
                     {loop $data $r}
                      <li>·<a href="{$r[url]}" target="_blank">{$r[title]}</a><span>({date('Y-m-d',$r[inputtime])})</span></li>
                     {/loop}
                     {/pc}

返回参数如下表:

字段

类型

默认

注释

title

char(80)

NULL

推荐位标题

url

char

NULL

推荐位链接地址

inputtime

int(10)

NULL

推荐位发布时间

thumb

char

NULL

推荐位缩略图

其他

不定

其他模型字段

栏目列表(category):

可用参数:

参数名

是否必须

默认值

说明

catid

0

调用该栏目下的所有栏目 ,默认0,调用一级栏目

$siteid

1

默认调用系统站点

order

null

排序方式、一般按照listorder ASC排序,即栏目的添加顺序

代码例子:

{pc:content action="category" catid="0" num="25" siteid="$siteid" order="listorder ASC"}

{loop $data $r}
                     <li><a href="{$r[url]}"><span>{$r[catname]}</span></a></li>     {/loop}

{/pc}

返回参数如下表:

字段

类型

默认值 

说明 

catid

smallint

栏目ID

siteid

tinyint(3)

0

站点ID

module

varchar(15)

模块ID

type

tinyint(1)

1

栏目类型ID

modelid

tinyint(5)

5

模型ID

parentid

smallint(5)

5

上级父栏目

arrparentid

varchar(255)

所有父栏目

child

tinyint(1)

0

子栏目

arrchildid

mediumtext

所有子栏目

catname

varchar(30)

栏目名称

image

varchar(100)

栏目图片

description

mediumtext

栏目描述

parentdir

varchar(100)

父栏目目录

catdir

varchar(30)

栏目目录

url

varchar(100)

栏目链接

items

mediumint(8)

0

栏目内容数

hits

int(10)

0

点击数

setting

mediumtext

栏目设置

listorder

smallint(5)

0

排序

ismenu

tinyint(1)

0

是否显示

sethtml

tinyint(1)

0

是否生成到根目录

letter

varchar(30)

栏目拼音

7,其它标签:

{template "content","header"}

调用根目录下phpcms\template\content\header文件

{CHARSET}

字符集 (gbk或者utf-8)

{if isset($SEO['title']) && !empty($SEO['title'])}

{$SEO['title']}{/if}

{$SEO['site_title']}

{$SEO['keyword']}

{$SEO['description']}

标题和标题seo优化

{CSS_PATH}

地址替换为根目录下\statics\css

{JS_PATH}

地址替换为根目录下\statics\js

{pc:content  action="position" posid="9" order="id" num="10" cache="3600"}

pc标签{pc:content 参数名="参数值"参数名="参数值"参数名="参数值"}

{loop $data $k $v}

<li><a href="{$v[url]}">{$v[title]}</a></li>

{/loop}

pc标签值

action="position"--------------对话框的类型=“内容推荐位列表”

posid="9"----------------------推荐位ID="9"

order="id"---------------------排序类型="id"

num="10" ----------------------数据调用数量="10"

cache="3600"-------------------缓存="3600"毫秒

{get_siteid()}

{IMG_PATH}

action="hits" 排行,热点等

action="lists" 主要用于列表等。

catid="$catid" 当前栏目ID   指定数字,即为指定的栏目

num=""  调用文章的数量

order="id DESC" 按ID降序排列

order="id ASC"  按ID升序排列

"views DESC"

sort=""

"1" 缩略图

return=""

page="$page" 需要分页

每当列表几行的时候出现一次这个

{if $num%2==0}   {/if}

循环标签

{loop $data $r}  {/loop}

{loop $info $r}  {/loop}

日期-------------{date('Y-m-d H:i:s',$r[inputtime])}
文章链接------{$r[url]}
文章标题------{$r[title]}
标题截取------{str_cut($r[title],40,'...')}
缩略图---------loop是info的时候用  {thumb($r[thumb],110,0)}     loop是data的时候用{thumb($v[thumb],90,0)}
分页标签------{$pages}

文章页标签

标题-------{$title}

内容-------{$content}

日期-------{$inputtime}

来源-------{$copyfrom}

点击数------<span id="hits"></span>

<script language="JavaScript" src="{APP_PATH}api.php?op=count&id={$id}&modelid={$modelid}"></script>

网站首页----------------{siteurl($siteid)}
当前位置----------------{catpos($catid)}
栏目名称----------------{$CAT[catname]} 
栏目拼音----------------{$CAT[letter]}
栏目链接----------------{$CAT[url]}
父栏目名称--------------{$CATEGORYS[$CAT[parentid]][catname]} 
父栏目链接--------------{$CATEGORYS[$CAT[parentid]][url]}
上上级栏目名称--------{$CATEGORYS[$CATEGORYS[$CAT[parentid]][parentid]][catname]}
上上级栏目链接--------{$CATEGORYS[$CATEGORYS[$CAT[parentid]][parentid]][url]}

一级父栏目列表

{pc:content action="category" catid="0" num="34" siteid="$siteid" order="listorder ASC"}

{loop $data $r}

<li><a href="{$r[url]}">{$r[catname]}</a></li>

{/loop}

{/pc}

同级栏目列表

{pc:content action="category" catid="$parentid" num="12" siteid="$siteid" order="listorder ASC"}

{loop $data $r}

<li><a href="{$r[url]}">{$r[catname]}</a></li>

{/loop}

{/pc}

组图列表

{loop $photos $r}

<li><a href="{$r[url]}"><img src="{thumb($r[url], 75, 45, 0)}" alt="{$r[alt]}" /></a></li>

{/loop}

注释:其中$photos为自定义组图字段,{$r[url]}为图片地址,{thumb($r[url], 75, 45, 0)}为图片缩略图,{$r[alt]}为图片描述

二、Phpcms V9广告位的调用方式:

Phpcms V9默认有三种调用方式,依次介绍如下。

2.1、JS调用代码(PHP动态调用):

  1. {show_ad(1, 1)}

2.2、JS调用代码(PHP动态调用):

  1. <script language="javascript" src="{APP_PATH}index.php?m=poster&c=index&a=show_poster&id=1"></script>

2.3、JS调用代码(JS静态调用)

  1. <script language="javascript" src="{APP_PATH}caches/poster_js/1.js"></script>

不知道大家发现没有,官方给出来的默认调用方法,只能调用广告位,不能调用广告位中具体的广告条数和广告数据。那么,怎么对某一个广告位下面的广告数据进行循环调用呢?

下面这一调用方法就可以做到对Phpcms V9广告多条调用:

    1. {pc:get sql="SELECT setting FROM cmsyou_poster WHERE spaceid = 12 AND type='images' AND disabled=0 ORDER BY listorder ASC" num="5"}
    2. {loop $data $r}
    3. <?php
    4. eval("\$narry =$r[setting];");
    5. ?>
    6. <a href="{$narry[1][linkurl]}" target="_blank"><img src="{$narry[1][imageurl]}" alt="{$narry[1][alt]}" width="690" height="200" /></a>
    7. {/loop}

phpcms流程2:

一.把需要做的模板引入带phpcms文件夹:(需要index.html(主体),header(页头),footer.html(页尾))

二.进入后台设置选项:(点击站点管理->修改;选择你要选用的模板)

三.进入后台内容模型管理设置:选择你要选用的模板

四.进入后台内容管理栏目设置:选择你要选用的模板

五.缓存生成首页:改路径(在index.html的当前目录下有几个文件夹,就换几个路径)

把首页(index.html拆分成(index.html,header.html,footer.html))

1.把首页里面的菜单的div剪切到header.html里面,把页脚拿到footer.html里面(样式都放在原index里即可)

2.再把header和footer引入到拆分的index.html里面,在index里面header出现的位置写入{template "content","header"},即可把header.html引入到index.html里面;在页脚出现的位置写入{template "content","footer"}

3.替换路径:js、css用{JS_PATH}(JS路径在后台->设置->基本设置)

{JS_PATH} = http://localhost/phpcms/install_package/statics/js/ ;

至此页面可正常显示,下面来连接后台;

六:连后台,显示动态:

轮播:(广告模块:不点击跳页面;bootstrap)

1.增加一个栏目(图片模型)

2.管理内容里面增加三个内容(图片模型)

3.index.html

<!--轮播小图标出现位置-->
{pc:content action="lists" catid="21" order="id ASC" num="3"}    //升降序要一致
{loop $data $key $val}
{if $key==1}
<li data-target="#myCarousel" data-slide-to="0" class="active"></li>
{else}
<li data-target="#myCarousel" data-slide-to="0"></li>
{/if}
{/loop}
{/pc}
</ol>
<!-- 轮播(Carousel)项目 -->
<div class="carousel-inner"> <!--轮播出现的位置-->
{pc:content action="lists" catid="21" order="id ASC" num="3"}    //升降序要一致
{loop $data $key $val}
{if $key==1}
<div class="item active">
<img class="img_lunbo" src="{$val['thumb']}" alt="First slide">
</div>
{else}
<div class="item">
<img class="img_lunbo" src="{$val['thumb']}" alt="First slide">
</div>
{/if}
{/loop}
{/pc} </div>

4.替换普通文章内容:

3.index.html

<!--轮播小图标出现位置-->
{pc:content action="lists" catid="21" order="id ASC" num="3"}    //升降序要一致
{loop $data $key $val}
{if $key==1}
<li data-target="#myCarousel" data-slide-to="0" class="active"></li>
{else}
<li data-target="#myCarousel" data-slide-to="0"></li>
{/if}
{/loop}
{/pc}
</ol>
<!-- 轮播(Carousel)项目 -->
<div class="carousel-inner"> <!--轮播出现的位置-->
{pc:content action="lists" catid="21" order="id ASC" num="3"}    //升降序要一致
{loop $data $key $val}
{if $key==1}
<div class="item active">
<img class="img_lunbo" src="{$val['thumb']}" alt="First slide">
</div>
{else}
<div class="item">
<img class="img_lunbo" src="{$val['thumb']}" alt="First slide">
</div>
{/if}
{/loop}
{/pc} </div>

phpcms流程的更多相关文章

  1. phpcms中的RBAC权限系统

    PHPCMS中的RBAC权限系统主要用到了4张数据表:管理员表,角色表,菜单表,菜单权限表.先来看看数据库的数据表结构: admin 管理员表 ID 字段 类型 Null 默认 索引 额外 注释 1 ...

  2. PHPCMS V9教程之快速入门

    这篇文章要为大家来介绍PHPCMS V9这个系统的一些基本知识,PHPCMS是基于面向对象的,严格的安装MVC开发模式开发的CMS系统,同时他还是一个非 常不错的PHP框架.下面我们一起看一下PHPC ...

  3. phpcms V9 添加模块

    为phpcms创建一个模块的开发流程 [1]创建模块目录 通过前面的学习,我们已经知道phpcms V9框架中的模块位于phcms/modules目录中,每一个目录称之为一个模块. 如果要创建一个模块 ...

  4. phpcms学习总结

    文件目录结构 根目录 | – api 接口文件目录 | – caches 缓存文件目录 | – configs 系统配置文件目录 | – caches_* 系统缓存目录 | – phpcms phpc ...

  5. 从PHPCMS、帝国CMS谈站长如何选择适合自己的CMS

    经常见站长论坛有人提到选哪个CMS好,最近也又有朋友在51LA站长群里问到PHPCMS和帝国CMS比较选哪个好的问题,所以落叶今天从PHPCMS及帝国CMS对比的角度来谈谈站长应该如何选择适合自己的C ...

  6. PHPCMS二次开发教程(转)

    转自:http://www.cnblogs.com/semcoding/p/3347600.html PHPCMS V9 结构设计 根目录 |–api  结构文件目录 |–caches 缓存文件目录 ...

  7. phpcms 源码分析六:index文件

    这次是逆雪寒对index.php的分析: /* [/php] [ 本帖最后由 逆雪寒 于 2007-12-25 16:12 编辑 ] 尽量每天都有新的东西每天都能进一小步 现在开始讲 index.ph ...

  8. phpcms V9 添加模块(转)

    转自:http://www.cnblogs.com/Braveliu/p/5101345.html 为phpcms创建一个模块的开发流程 [1]创建模块目录 通过前面的学习,我们已经知道phpcms ...

  9. PHPCMS二次开发教程

    PHPCMS V9 结构设计 根目录|–api  结构文件目录|–caches 缓存文件目录   |– configs 系统配置文件目录   |– caches_* 系统缓存目录|–phpcms  p ...

随机推荐

  1. Open CV 图像显示(1)

      演示:读入一张图片,并显示   #include "stdafx.h"   #include <opencv2/core/core.hpp>   #include  ...

  2. Python学习笔记03

      区间访问:[from:to:step] step默认是1:from表示起始索引(包括),to表示结束索引(不包括) step如果有符号,表示方向从右到左; from,to有符号,表示从倒数开始算, ...

  3. NoSQL-Redis【1】-控制台配置密码

    1.设置密码为123456 CONFIG SET requirepass 123456 2.验证密码 AUTH 123456 3.redis-cli连接 @ECHO OFF redis-cli.exe ...

  4. sqlSQL2008如何创建定时作业

    SQL2008如何创建定时作业?此方法也适应于Sql Server2005数据库,有兴趣的可以来看下! 1.打开[SQL Server Management Studio],在[对象资源管理器]列表中 ...

  5. 在windows和linux下如何查看80端口占用情况?是被哪个进程占用?如何终止等

    一.在windows下如何查看80端口占用情况?是被哪个进程占用?如何终止等 这里主要是用到windows下的DOS工具,点击"开始"--"运行",输入&quo ...

  6. 10.24给TA的话

  7. hihoCoder#1384 : Genius ACM

    对于一个固定的区间$[l,r]$,显然只要将里面的数字从小到大排序后将最小的$m$个和最大的$m$个配对即可. 如果固定左端点,那么随着右端点的右移,$SPD$值单调不降,所以尽量把右端点往右移,贪心 ...

  8. BZOJ1795 : [Ioi2008]Pyramid Base 金字塔地基

    1.$B>0$ 二分答案,然后扫描线,线段树维护某个点作为左下角时的费用的最小值,支持区间加. 时间复杂度$O(n\log^2n)$. 2.$B=0$ 枚举左边界,则最优右边界可以通过双指针求出 ...

  9. Codeforces Round #252 (Div. 2) B. Valera and Fruits

    #include <iostream> #include <vector> #include <algorithm> #include <map> us ...

  10. ACM: 限时训练题解-Heavy Coins-枚举子集-暴力枚举

    Heavy Coins   Bahosain has a lot of coins in his pocket. These coins are really heavy, so he always ...