后退 刷新 前进 收藏 顶部 |   知道 黑匣子 富媒体 技术服务

现在说说PHPCMS 2008的那点破事(个人修改版)

程序猿 PHPcms PHPCMS 2008 php... (shuke.2014-11-07 03:06)
1.全局变量:
 
{$PHPCMS[sitename]} => 网站名称
{$PHPCMS[siteurl]} => 网站地址
{$PHPCMS[meta_title]} => Title(网站标题)
{$PHPCMS[meta_keywords]} => Meta Keywords(网页关键词)
{$PHPCMS[meta_description]} => Meta Description(网页描述)
{$PHPCMS[copyright]} => 版权信息
{$PHPCMS[icpno]} => 网站ICP备案序号
{$PHPCMS[areaid]} => 网站默认地区
{$PHPCMS[show_hits]} => 显示浏览次数
{$PHPCMS[enabletm]} => 是否启动扩展设置
{$PHPCMS[qq]} => QQ
{$PHPCMS[tel]} => tel
{$PHPCMS[fax]} => fax
{$PHPCMS[swt]} => 商务通
{$PHPCMS[netel]} => 400电话
{$PHPCMS[version]} => 版本号
        栏目信息变量:
        $CATEGORY[$catid][catid] 栏目id
        $CATEGORY[$catid][module] 栏目所在的模块
        $CATEGORY[$catid][type] 栏目类型
        $CATEGORY[$catid][modelid] 栏目所属模型id
        $CATEGORY[$catid][catname] 栏目名称
        $CATEGORY[$catid][style] 栏目名称样式
        $CATEGORY[$catid][image] 栏目图片
        $CATEGORY[$catid][catdir] 栏目路径
        $CATEGORY[$catid][url] 目录url
        $CATEGORY[$catid][parentid] 栏目的父id
        $CATEGORY[$catid][arrparentid] 所有上级栏目ID
        $CATEGORY[$catid][parentdir] 父栏目的路径
        $CATEGORY[$catid][child] 是否有子栏目
        $CATEGORY[$catid][arrchildid] 栏目的所有子栏目id
        $CATEGORY[$catid][items] 栏目信息数
        $CATEGORY[$catid][ismenu] 栏目是否显示导航


2 楼 shuke[2014-11-07 15:25]
2.首页模型概要
头部:{if !$catid}我是首页{/if}
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="utf-8">
<title>{$head[title]}_{$PHPCMS[sitename]}</title>
<meta content="{$head[title]}|{$head[keywords]}" name="keywords" />
<meta content="{$head[description]}" name="description" />
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
<base href="{SITE_URL}" target="_blank" />
<link href="favicon.ico" rel="shortcut icon" />
<link href="{SKIN_PATH}main.css" rel="stylesheet" type="text/css" />
搜索:
<form name="search" action="{$MODULE[search][url]}" target="_blank">
<input type="hidden" name="type" value="all" id="type"/>
<input type="text" name="q" size="50"/>
<input type="submit" name="s" id="button"class="btn" value="搜索" />
</form>
栏目循环调用:
<!--{php $subcats = subcat('phpcms', 0, 0);}-->
<!--{loop $subcats $catid $cat}-->
<div class="cat_index">
<div class="cat_title"><a href="{$cat[url]}"><img src="images/more.gif" alt="更多" /></a>
<h3>{$cat[catname]}</h3>
</div>
<div class="cat_left">
<ul class="pic_list">
{tag_首页图片循环标签}
</ul>
</div>
<div class="cat_right">
<ul class="text_list">
{tag_网站首页内容标签}
</ul>
</div>
</div>
<!--{/loop}-->
热门标签
<!--{get sql="select tag,hits from phpcms_keyword order by listorder desc,hits desc" rows="10"}-->
<li><a href="tag.php?tag={urlencode($r[tag])}">{$r[tag]}</a>({$r[hits]})</li>
<!--{/get}-->
指定循环:
<!--{loop array("44","45","34","75","73","74","46") $n $c}-->{php $n=$n+1}
<div id="dds{$n}" {if $n==1}style="color:red"{else}style="color:green"{/if}>
<span class="btn"><b>{$CATEGORY[$c][catname]}</b></span>
{php $data = subcat(phpcms, $c);}
<!--{loop $data $cid $c}-->
<a href="{$CATEGORY[$cid][url]}" title="{$CATEGORY[$cid][catname]}"><?php echo substr($CATEGORY[$cid][catname],-6); ?></a>
<!--{/loop}-->
<ul>{tag_首页病种列表2}</ul>
</div>
</div>
<!--{/loop}-->
调用指定栏目:
<a href="{$CATEGORY[7][url]}">{$CATEGORY[44][catname]}</a>



3 楼 shuke[2014-11-07 16:32]
3.栏目模型概要
-位置导航:
        <a href="">首页</a>{catpos($catid)}
        {$c[catname]} {$c[url]}
       
        0.调用子栏目
                方法一
        <!--{loop $arrchildid $cid $c}-->
        <div class="cat">
        <a href="{$c[url]}">{$c[catname]}</a>
                <ul class="text_list">
                {tag_栏目页信息列表}
                </ul>
        </div>
        <!--{/loop}-->
                方法二
        {php $subcats = subcat('phpcms', $catid, 0);}
        {loop $subcats $catid $cat}
        <A HREF="{$cat[url]}">{$cat[catname]}</A>
        <ul class="cjbz">
        {tag_频道头条2}
        </ul>
        {/loop}


        1.调用本系统多条数据,示例(调用栏目ID为1通过审核的10条信息,标题长度不超过25个汉字,显示更新日期):
        {get sql="select * from phpcms_content where catid=1 and status=99 order by updatetime desc" rows="10"}
        标题:{str_cut($r[title], 50)} URL:{$r[url]} 更新日期:{date('Y-m-d', $r[updatetime])}
        {/get}

        2.带分页,示例(调用栏目ID为1通过审核的10条信息,标题长度不超过25个汉字,显示更新日期,带分页):
        {get sql="select * from phpcms_content where catid=1 and status=99 order by updatetime desc" rows="10" page="$page"}
        标题:{str_cut($r[title], 50)} URL:{$r[url]} 更新日期:{date('Y-m-d', $r[updatetime])}
        {/get}
        分页:{$pages}

        3.调用同一帐号下的其他数据库,示例(调用数据库为bbs,分类ID为1的10个最新主题,主题长度不超过25个汉字,显示更新日期):
        {get dbname="bbs" sql="select * from cdb_threads where fid=1 order by dateline desc" rows="10"}
        主题:{str_cut($r[subject], 50)} URL:http://bbs.phpcms.cn/viewthread.php?tid={$r[tid]} 更新日期:{date('Y-m-d', $r[dateline])}
        {/get}

        4.调用外部数据,示例(调用数据源为bbs,分类ID为1的10个最新主题,主题长度不超过25个汉字,显示更新日期):
        {get dbsource="bbs" sql="select * from cdb_threads where fid=1 order by dateline desc" rows="10"}
        主题:{str_cut($r[subject], 50)} URL:http://bbs.phpcms.cn/viewthread.php?tid={$r[tid]} 更新日期:{date('Y-m-d', $r[dateline])}
        {/get}

        5.根据不同栏目调用其它栏目
        {if $catid==33}
        {loop array("37","38","39","40","41","42","43") $cid $c}
        <a href="{$CATEGORY[$c][url]}">{$CATEGORY[$c][catname]}</a>
        {/loop}
        {elseif $catid==35}
        {loop array("73","74","75","76","77","78") $cid $c}
        <a href="{$CATEGORY[$c][url]}">{$CATEGORY[$c][catname]}</a>
        {/loop}
        {elseif $catid==36}
        {loop array("79","80","81","82","83","84","85") $cid $c}
        <a href="{$CATEGORY[$c][url]}">{$CATEGORY[$c][catname]}</a>
        {/loop}
        {/if}
        形式二:
        {if $catid==33}
        {loop array("37","38","39","40","41","42","43","44","45","46","11","10") $cid $catid}
        <div class="sxt3-2">
        <div class="sxt3-2-1">
                <div class="sxt3-2-1-1"><a href="{$CATEGORY[$c][url]}">{$CATEGORY[$catid][catname]}</a></div>
                <div class="sxt3-2-1-2"><a href="{$PHPCMS['swt']}">病情咨询|</a><a href="{$PHPCMS['swt']}">预约专家</a><a href="{$cat[url]}" style="margin-top:3px"><img src="{SKIN_PATH}img_9/more.jpg"/></a></div>
        </div>
        <div class="dsqjs">
                {tag_频道头条2_图文}
        </div>
        <ul class="cjbz">
        {tag_频道头条2}
        </ul>
        </div>
        {/loop}
        {elseif $catid==35}
        .....
        {/if}

4 楼 shuke[2014-11-14 10:48]
4.列表模型概要 LIST
(1).分布列表:tag_content_list.html
        <ul class="text_list text_list_f14">
        {loop $data $n $r}
        <li><span class="date">{date('Y-m-d', $r[inputtime])}</span>
        {if $showcatname}<a href="{$CATEGORY[$r[catid]][url]}" class="catname">[{$CATEGORY[$r[catid]][catname]}]</a>{/if} <a href="{$r[url]}" target="{$target}" class="{$class}">{str_cut($r[title], $titlelen)}</a>
        </li>
        {/loop}
        </ul>
        {if $pages}<p id="pages">{$pages}</p>{/if}


5 楼 shuke[2014-11-14 10:48]
5.内容模型概要 SHOW
(1). 文章标题:{if $titleintact}{$titleintact}{else}{$title}{/if}
                基本属性:<span>{$updatetime}</span> 作者:{if $author}{$author}{else}{$userid}{/if} 来源:{$copyfrom} {if $PHPCMS[show_hits]}浏览次数:<span id="hits">0</span>{/if}
                {if isset($MODULE[comment])}{php list($keyid, $verify) = keyid_make('phpcms', 'content', 'title', $contentid);}
                <a href="{$MODULE[comment][url]}?keyid={$keyid}&verify={$verify}" style="color:red;">网友评论 <span id="comments_top">0</span> 条</a>
                {/if}
                简单描述:{if $description}<div id="digest">{$description}</div>{/if}
                关 键 词:{if $keywords}<div id="keyword"><strong>关键词:</strong>{$keywords}</div>{/if}
                内容正文:{$content}

        (2).上下文连接
        {get sql="SELECT url,title FROM phpcms_content WHERE contentid < '$contentid' AND catid='$catid' AND status='99' ORDER BY contentid DESC" rows="1" return="prev"}<a href="/{$prev[url]}">【上一篇】{str_cut($prev[title],'30','')}</a>{/get}
        {get sql="SELECT url,title FROM phpcms_content WHERE contentid > '$contentid' AND catid='$catid' AND status='99' ORDER BY contentid ASC" rows="1" return="next"}<a href="/{$next[url]}" style="float:right">【下一篇】{str_cut($next[title],'30','')}</a>{/get}

        (3).位置导航
        <a href="">首页</a>{catpos($r['catid'])}
        <a href="javascript:window.print();">[打印]</a> <a href="javascript:window.close();">[关闭]</a>


6 楼 shuke[2014-11-14 13:05]
6.单面模型概要  PAGE
(1). 单页题目:{$catname}
(2). 单页块:{block("catid_$catid", 1)}


7 楼 shuke[2014-11-14 13:05]
7.搜索提交与挂号提交
(1).搜索:
        <form name="search" action="{$MODULE[search][url]}" target="_blank">
        <input type="hidden" name="type" value="all" id="type"/>
        <input type="text" name="q" size="50"/>
        <input type="submit" name="s" id="button"class="btn" value="搜索" />
        </form>

        (2).挂号
        <form name="myform" action="{$M[url]}index.php" method="post" enctype="multipart/form-data">
        {$formname}表单
        {loop $forminfos $form}
        {$form[name]}:{$form[form]}<BR />
        {/loop}
                <input type="hidden" name="dataid" value="{$dataid}" />
                <input type="hidden" name="formid" value="{$formid}" />
                <input type="submit" name="dosubmit" value="确定" />
                <input type="reset" name="reset" value="取消" />
        </form>


8 楼 shuke[2014-11-14 13:07]
8.关于分页的样式
        .page{text-align:center; clear:both; width:auto}
        .page u{ color:red; text-decoration: line-through}
        .page a{ padding:0 5px; border:dashed 1px gray;}


9 楼 shuke[2014-11-14 13:07]
9.相关信息
SELECT DISTINCT c.contentid,c.title,c.style,c.url FROM `base_content` c,`base_content_tag` t WHERE c.contentid=t.contentid and c.`status`=99 AND t.`tag` IN(".get_sql_in($r[keywords]).") ORDER BY c.contentid DESC

10 楼 shuke[2014-11-14 13:08]
10.在线咨询:
{loop $qqs $qq}
        <a href="http://wpa.qq.com/msgrd?V=1&Uin={$qq}&Site={DOMAIN}&Menu=yes" title="点击咨询 QQ:{$qq}" target="_blank"><img src="http://wpa.qq.com/pa?p=1:{$qq}:4" border="0" align="absmiddle" /></a>  
        {/loop}
        {loop $msns $msn}
        <a href="msnim:chat?contact={$msn}" title="点击咨询 MSN:{$msn}" target="_blank"><img src="http://osi.hshh.org:8888/msn/{$msn}" border="0" align="absmiddle" onerror="this.onerror=null;this.src='http://osi.hshh.org/msnunknown.gif';" /></a>  
        {/loop}
        {loop $skypes $skype}
        <a href="callto://{$skype}" title="点击咨询 SKYPE:{$skype}"><img src="http://goodies.skype.com/graphics/skypeme_btn_small_green.gif" border="0" align="absmiddle" /></a>  
        {/loop}
        {loop $taobaos $taobao}
        <a href="http://amos1.taobao.com/msg.ww?v=2&uid={$urlencode($taobao)}&site=cntaobao&s=1" target="_blank" title="点击咨询 帐号:{$taobao}"><img src="http://amos1.taobao.com/online.ww?v=2&uid={$urlencode($taobao)}&site=cntaobao&s=1" border="0" align="absmiddle" /></a>  
        {/loop}
        {loop $alibabas $alibaba}
        <a href="http://web.im.alisoft.com/msg.aw?v=2&uid={$alibaba}&site=cnalichn&s=4" target="_blank" title="点击咨询 帐号:{$alibaba}"><img src="http://web.im.alisoft.com/online.aw?v=2&uid={$alibaba}&site=cnalichn&s=4" border="0" align="absmiddle" /></a>  
        {/loop}


11 楼 shuke[2014-11-14 13:40]
11.模板语法规则
(1)、变量表示
        {$name} 被解析成 <?=$name?>,表示显示变量$name的值,其中的“name”由英文字母、数字和下划线组成首字母必须是英文字母或者下划线。

        (2)、常量表示
        {name}被解析成<?=name?>,表示显示常量name的值,其中的“name”由英文字母、数字和下划线组成首字母必须是英文字母或者下划线。

        (3)、条件判断
        {if *} * {else} * {else} * {/if} 或者 {if *} * {/if},其中{if *}中的*就是此判断语句的条件表达式,符合php的表达式。
        {if $userid} {$username}{else} {$noname}{/if}

        (4)、循环
        {loop $a $b} * {/loop} 或者 {loop $a $b $c} * {/loop} ,{loop $a $b} * {/loop}
        被解析成 <? if(is_array($a)) foreach($a AS $b) { ?> * <? } ?>
        而 {loop $a $b $c} * {/loop} 则被解析成 <? if(is_array($a)) foreach($a AS $b=>$c) { ?> * <? } ?>

        (5).模板包含
        {template 'module name','file name'}例如: {template 'phpcms','header'}表示包含模板目录,phpcms目录下header.html文件
        建议 if 和 loop 语法应该写在html注释符之间,这样可以避免在编辑工具中难看,例如:
        这样写 if
        <!--{if $a>$b}--> <!--{else}--> <!--{/if}-->
        这样写 loop
        <!--{loop $arr $key $val}--> <!--{/loop}-->

        如果您不习惯这套语法,也可以直接在模板中书写php代码,例如<?php echo 'Hello World!';?>
12 楼 shuke[2016-05-20 11:32]
12.关于数据摘要算法 SHA1
<link href="{SKIN_PATH}css/css.css?v={sha1_file(SITE_URL.SKIN_PATH.'css/css.css')}" rel="stylesheet" type="text/css" />

sha1_file() 函数计算文件的 SHA-1 散列。
sha1() 函数使用美国 Secure Hash 算法 1。
如果成功,则返回所计算的 SHA-1 散列,如果失败,则返回 false。

EG:在一个文件中存储 "test.txt" 的 SHA-1 散列:
 $sha1file = sha1_file("test.txt");
file_put_contents("sha1file.txt",$sha1file);

//在本例中,我们将测试 "test.txt" 是否已更改(即 SHA-1 hash 是否已更改):
$sha1file = file_get_contents("sha1file.txt");
if (sha1_file("test.txt") == $sha1file) {
  echo "The file is ok.";
  }else{
  echo "The file has been changed.";
  }


13 楼 shuke[2016-05-23 15:53]
13,关于标签的判断与使用
eg1,
{loop $data $n $r}
{if $showmode==0}
...{date('Y-m-d', $r[inputtime])}
{elseif $showmode==1}
...{rand()}
{/if}
{/loop}
{if $pages}<div id="pages">{$pages}</div>{/if}


进度:100% 返回程序猿

解决织梦图集中上传图片时跳出302错误

图片新热点

导航


目录


    站内搜索
    首页 | W3C | ME