<php?
while($n=1)
{
$n++;
}
?>
[{if $r[tid]==2}求购{elseif$r[tid]==3}二手{elseif $r[tid]==4}促销{else}供应{/if}]
搜索代码
<formtarget="_blank" action="search.php"name="site_search">
<inputtype="hidden" name="typeid" value="0"/>
<inputtype="hidden" name="areaid" value="0"/>
<inputtype="hidden" name="orderby"value="a.contentid+DESC"/>
<inputtype="hidden" name="mod" value="phpcms"/>
<inputtype="hidden" name="dosubmit" value="1"/>
<divclass="search">
<p class="input_search">
<inputname="title" type="text" id="keyword"class="inp_search" value="输入关键字搜索..."/>
</p>
<inputname="s" id="button" type="submit"value=" "class="bt_search"/>
</div>
</form>
<scripttype="text/javascript">
$("#keyword").focus(function () {$(this).val(""); });
$("#keyword").blur(function () {var keyword = $(this).val(); if (keyword == "") { $(this).val("输入关键字搜索..."); } });
</script>
<inputtype="text" value="请输入用户名"οnfοcus="if(value=='请输入用户名') {value=''}" οnblur="if(value=='') {value='请输入用户名'}">
循环加1 第一条定义样式
{loop $data $n $r}
<li {if $n=0}class="on"{/if}val="{php echo $n+1;}"><img src="{thumb($r[thumb], $width,$height)}" width="{$width}" height="{$height}"alt="{$r[title]}" /></li>
{/loop}
内容页调用图组循环
{loop $xijiezhanshi $k $r}
<li><atarget="_blank"href="{$xijiezhanshi[$k][filepath]}"><imgsrc="{thumb($r[filepath], 217, 145)}" alt="{if$xijiezhanshi[$k][description]}{$xijiezhanshi[$k][description]}{/if}"width="217" height="145" />{if$xijiezhanshi[$k][description]}{$xijiezhanshi[$k][description]}{/if}</a></li>
{/loop}
栏目页调用广告 只用一个模板 PHP判断栏目
<?php
if($catname=="神经外科"){$num=84;$nums=85;}
if($catname=="牙科种植"){$num=86;$nums=87;}
if($catname=="关节置换"){$num=88;$nums=89;}
?>
<script language="javascript"src="data/js.php?id=<?php echo $num;?>"></script>
<script language="javascript"src="data/js.php?id=<?php echo $nums;?>"></script>
页面调用,单页内容
{get sql="select * from phpcms_blockwhere blockid=26";}
{str_cut(strip_tags($r[data]),260,'')}... <ahref="about/about/">更多>></a> {/get}
blockid=26 为碎片ID
<li><ahref=""οnclick="this.style.behavior='url(#default#homepage)';this.setHomePage('{SITE_URL }');">设为首页</a></li>
<li><ahref="javascript:window.external.AddFavorite('{SITE_URL}','{$head[title]}')">加入收藏</a></li>
内容页外调用产品内容
{str_cut(strip_tags($r[content]),140)}
当前导航高亮
{php $data = subcat($module, $catid);}
{loop $data $n $r}
<li><a href="{$r[url]}"id="menu_{$r[catid]}" {if $_GET['catid']==$r[catid]}class="on" {/if}>{$r[catname]}</a></li>
{/loop}
当前导航和内容页导航高亮
<?php
function _getGlobleCatid(){
global$catid;
return$catid;
}
?>
{php $currId = _getGlobleCatid();}
{php $data = subcat($module, $catid);}
{loop $data $n $r}
{if $r[ismenu]}
<li {if $currId==$r[catid]}class="dianjb" {/if}><a href="{$r[url]}"id="menu_{$r[catid]}">{$r[catname]}</a></li>
{/if}
{/loop}
树形菜单展开代码
<div class="con_vrbord_01">
<ulclass="list_titvr">
{get sql="SELECTparentid, url, catname, arrchildid,child FROM `phpcms_category` WHERE `parentid` = 67 and `ismenu` = 1 ORDERBY listorder ASC" return="c"}
<li><i></i> <b><ahref="{$c[url]}">{$c[catname]}</a></b>
<div {if$catid==$c['catid'] || in_array($catid, explode(',',$c['arrchildid']))}style="display:block"{/if}>
<ulid="TwoMenu">
{getsql="SELECT url, catname, catid FROM `phpcms_category` WHERE `catid` IN ($c[child] = 0 AND$c[arrchildid]) and `ismenu` = 1 ORDER BY listorder ASC"return="c1"}
<li><ahref="{$c1[url]}">{$c1[catname]}</a></li>
{/get}
</ul>
</div>
</li>
{/get}
</ul>
</div>
生成静态页的页面导航高亮
<?php
function _getGlobleCatid(){
global$catid;
return$catid;
}
?>
{php $currId = _getGlobleCatid();}
{php $data = subcat($module, $catid);}
{loop $data $n $r}
{if $r[ismenu]}
<li {if $currId==$r[catid]}class="act" {/if} catid="{$r[catid]}"><ahref="{$r[url]}"id="menu_{$r[catid]}">{$r[catname]}</a></li>
{/if}
{/loop}
<scripttype="text/javascript">
$(function(){
varcatidStr = window.location.pathname;
varcatArr = catidStr.match(/(\w+\/)+(\d+)\.html$/);
$("li[catid]").each(function(){
if($(this).attr("catid")== catArr[2]){
$(this).addClass("act");
}
})
})
</script>
[2008]phpcms2008sp4导航栏目当前栏目高亮显示get标签完美解决
1. 2. <a href="#" class="nav" id="menu_phpcms">首页</a> 3. {get sql="SELECT `catid`,`catname`,`url` FROM `phpcms_category` where `ismenu` = '1'" } 4. <a href="{$r[url]}" class="nav" id="menu_{$r[catid]}">{$r[catname]}</a> 5. {/get} 复制代码
1. function menu_selected(id) 2. { 3. $('#menu_'+id).addClass('selected'); 4. } 复制代码
|
[求 助] 导航“当前位置”那个{catpos($r['catid'])}在哪里编辑
include/global.func.php里面的
function catpos($catid, $urlrule = '')
修改碎片编辑器
在admin/template/block_update_ajax.tpl.php
第42行
<?=form::editor('data', 'introduce', '100%', '300', 0)?>
把introduce 换成别的类型就可以了。
basic 基本的
introduce 就是现在用的这种了。
standard 标准型的
full 全功能的
default 默认
{get sql="SELECT * FROM`phpcms_content` WHERE contentid>$contentid AND catid=$catid ORDER BYupdatetime DESC" rows="1"}
{php $front=1;}
<li>上一篇:<a href="{$r[url]}"titile="{$r[title]}">{str_cut($r[title],80)}</a></li>
{/get}
{if $front!=1}
<li>上一篇:没有了</li>
{/if}
{get sql="SELECT *FROM `phpcms_content` WHERE contentid<$contentid AND catid=$catid ORDER BYupdatetime DESC" rows="1"}
{php $next=1;}
<li>下一篇:<a href="{$r[url]}"titile="{$r[title]}">{str_cut($r[title],50)}</a> </li>
{/get}
{if $next!=1}
<li>下一篇:没有了</li>
{/if}
如何调用当前栏目下有多少条数据呢?
在07中可以在栏目模板页面中中直接使用 {$items} ,08里依然可以的.
如何用在循环里呢?
比如首页有国内新闻|国际新闻|娱乐新闻等等栏目.他们是loop循环出来的,循环代码如下:
1. <!--{loop $subcats $catid $cat}-->
2. <div class="cat_index">
3. <divclass="cat_title"><a href="{$cat[url]}"><img src="images/more.gif" alt="更多" /></a>
4. <h3>{$cat[catname]}共有{$cat[items]}篇文章</h3>
5. </div>
6. <divclass="cat_left">
7. <ulclass="pic_list">
8. {tag_首页图片循环标签}
9. </ul>
10. </div>
11. <divclass="cat_right">
12. <ulclass="text_list">
13. {tag_网站首页内容标签}
14. </ul>
15. </div>
16. </div>
17. <!--{/loop}-->
复制代码
注意看:共有{$cat[items]}篇文章这一段.对变量稍微修改一下就可以用了.这样就会循环显示了,
在栏目内容循环中调用该内容所在栏目的标题{$CATEGORY[$r[catid]][catname]}
看见过浏览记录的解决方案。但如果要实现的话需要修改源文件,并且需要动态页面才可以调用。且没有详细的操作步骤。
相信会有不少人需要,在参考了PC黄页的产品的浏览记录后
解决如下:
1、不需要改动原来文件。新增一个文件及一个模板文件。
2、静态页面AJAX调用。
演示:www.i0580.cn
步骤:
1、根目录下新增文件readid.php
<?php
header("Cache-Control:no-cache, must-revalidate");
requiredirname(__FILE__).'/include/common.inc.php';
$contentid =isset($contentid) ? intval($contentid) : 0;
$readid =get_cookie('readid');
if(intval($readid))$readwhere= $readid;
switch($action)
{
case 'read':
if($contentid){
if(intval($readid))
{
$readid = $contentid.','.$readid;
$tmp = explode(",",$readid);
$tmp = array_unique($tmp);
while(count($tmp) > 10)array_pop($tmp);
$readid = implode(",",$tmp);
}
else $readid = $contentid;
set_cookie('readid',$readid,time()+3600*365*24);
}
break;
case 'list':
include template($mod, 'read_fang');
break;
}
?>
2、新增模板文件read_fang.html
<ul>
{if $readwhere}
{getsql="SELECT * FROM `phpcms_content` WHERE contentid IN ($readwhere) ANDstatus = '99' ORDER BY FIND_IN_SET(contentid,'$readwhere')"rows="10"}
<li><ahref="{$r[url]}"title="{$r['title']}">{$r['title']}</a></li>
{/get}
{else}
<li>您还没有浏览过任何房源</li>
{/if}
</ul>
3、静态页面调用:
(1)、需要调用的内容页面模板文件,如show.html,加上:
<scriptlanguage="JavaScript"src="readid.php?contentid={$contentid}&action=read"></script>
(2)、浏览页调用:
先添加JS代码:
<scripttype="text/javascript">
$(document).ready(function(){
$('#readhouse').load("readid.php?action=list");
});
</script>
在需要浏览记录显示的地方,添加:
<div id="readhouse"><imgsrc="images/loading.gif" align="absmiddle"> 数据加载中</div>
调用三级栏目循环 加内容
{getsql="SELECT parentid, url, catname, arrchildid,child FROM`phpcms_category` WHERE `parentid` = 87" return="c"}
<table width="100%"border="0" cellpadding="0" cellspacing="0"class="tab_cp">
<tr>
<td width="65"align="center" valign="middle"class="shouzimu">{$c[catname]}</td>
<td><tablecellpadding="0" cellspacing="0">
{getsql="SELECT url, catname, catid FROM `phpcms_category` WHERE `catid` IN ($c[child] = 0 AND$c[arrchildid])" return="c1"}
<tr>
<tdwidth="115" align="center" valign="middle"class="name">{$c1[catname]}</td>
<tdwidth="210" align="center"valign="middle"><img src="images/38.jpg"width="135" height="135" /></td>
<td><ul>
{getsql="SELECT contentid,catid,typeid,areaid,title,style,thumb,keywords,description,userid,updatetime,inputtime,urlFROM `phpcms_content` WHERE catid='$c1[catid]' ORDER BYcontentid DESC" rows="12"}
<li><a href="{$r[url]}" target="_blank">{$r[title]}</a></li>
{/get}
</ul></td>
</tr>
{/get}
</table></td>
</tr>
</table>
{/get}
在首页调用 栏目循环 加栏目链接加栏目图片
{getsql="SELECT * FROM `phpcms_category` WHERE `parentid` = 37 and `hits` = 0" return="c"}
<li><ahref="category/{$c[catid]}.html"><imgsrc="{$c[image]}" width="74" height="62"/></a></li>
{/get}
循环指定栏目下的栏目,并且按字母排序。剔除相同字母的栏目循环(DISTINCT zimu调用唯一)
{getsql="SELECT DISTINCT zimu FROM `phpcms_category` WHERE `parentid` = '$catid' and `ismenu` = 1and `items` = 0 order by zimu asc"return="c1"}
<a id="{$c1[zimu]}"name="{$c1[zimu]}"></a>
<pclass="tit_eng">以<span>{$c1[zimu]}</span>为首字母的城市</p>
<ulclass="lb_city">
{getsql="SELECT * FROM `phpcms_category` WHERE `parentid` = '$catid' and `ismenu` = 1 and `items` = 0 and `zimu`= '$c1[zimu]'" return="c"}
<li><ahref="{$c[url]}" title="{$c[catname]}"><imgsrc="{$c[image]}" width="188" height="139"alt="{$c[catname]}" /></a>
<p><ahref="{$c[url]}" title="{$c[catname]}">{$c[catname]}</a></p>
</li>
{/get}
</ul>
{/get}
在内容页中调用上传的文章 借鉴手术网站 手术计划内容页。
<?php
$showlist =$db->get_one("SELECT * FROM `".DB_PRE."c_down` WHERE`contentid`=$contentid order bycontentid asc limit 0,1");
//$abcss=flashupload("contentid",$showlist[downurls]);
$downurls=(explode("\n",$showlist[downurls]));
for($i=0;$i<=count($downurls)-1;$i++){
$down_array=explode("|",$downurls[$i]);
$arra[name] =$down_array[0];
$arra[urls] =$down_array[1];
$arr[] =$arra;
}
$sad121=(explode("\n",$showlist[sad121]));
//print_r($downurls);
for($i=0;$i<=count($sad121)-1;$i++){
$sad_array=explode("|",$sad121[$i]);
$arras[name] =$sad_array[0];
$arras[urls] =$sad_array[1];
$yarr[] =$arras;
}
?>
<?phpfor($i=0;$i<=count($arr)-1;$i++){?>
<li><ahref="{$arr[$i][urls]}"><img src="images/pdf.jpg"align="absmiddle"/> {$arr[$i][name]}</a></li>
<?php }?>
phpcms栏目图片增加上传按钮。
修改方法:admin/templates/category_add.tpl.php
找到栏目图片 ,然后在他下面加上以下代码:
<input type="button" value=" 上传 " onClick="javascript:openwinx('?mod=phpcms&file=upload&uploadtext=image&width=100&height=100','image','350','200')">
这个是添加栏目的时候,修改栏目的时候栏目图片的上传要修改文件admin/templates/category_edit.tpl.php 同样位置加入以上代码即可.
给UL CLASS样式下的LI循环给单独样式
<scripttype="text/javascript">
$(function(){
var menu=$(".con_city li"),len=$(".con_cityli").length;
for( var i=0;i<len;i++){
if(i%4 == 0){
menu.eq(i-1).addClass("city_no");
}
}
})
</script>
LI循环到第几个给个单独的样式
<scripttype="text/javascript">
(function(){
var meaus =document.getElementById("qige3").getElementsByTagName("li");
for(var i = 1;i<=meaus.length; i++){
if(i%7 === 0){
meaus[i-1].className= "last";
}
}
})()
</script>
给DIV个id让该DIV下面的DIV循环,循环到第几个时候给他个样式
<scripttype="text/javascript">
$("#sige >div.modleBox_1").each(function(i){
if((i+1)%4 === 0){
$(this).addClass("last");
}
})
</script>
给LI下的DIV循环样式
<scripttype="text/javascript">
(function(){
var meaus =document.getElementById("sige").getElementsByTagName("div");
meaus =getElmClass("goods_02");
for(var i = 1;i<=meaus.length; i++){
if(i%4 === 0){
meaus[i-1].className ="goods_020";
}
}
functiongetElmClass(className){
var arr = [];
for(var i = 0; i<=meaus.length-1; i++){
if(meaus[i].className == className){
arr.push(meaus[i]);
}
}
return arr;
}
})()
</script>
给INPUT加<input type="button" value="在线订购" οnclick="location.href='list.php?catid=72'"class="online_ord"/>
调用栏目图片
{if $image}<!-- 判断是否有栏目图片 有就显示栏目图片,图片大小可自己定义,也可以删除塞斯高,那就显示图片原来的尺寸-->
<imgsrc="{$image}" alt="{$catname}" width="100"height="100" /> <!--这里就是栏目图片-->
{else}
<!--如果没有栏目图片则显示网站logo,,当然你可以设置为显示其它的图片,比如说,有些人希望每个栏目设置不同的banner图片,也可以用这个方法-->
<imgsrc="images/logo.gif" alt="{$PHPCMS[sitename]}"width="100" height="100" />
{/if}
去掉链接四周的虚线
在<a>标签中加入onFocus="this.blur()"语句即可
<a href="http://mxes.yeah.net"onFocus="this.blur()">名雪阁</a>
内容页多图字段 分开调用 pigpic 是多图字段名称
{loop $pictureurls $k $r}
<li><img style="cursor: pointer;"src="{$r[filepath]}" width="125" height="78" {if$k==$page}class="s"{/if}/></li>
{/loop}
{loop$pigpic $k $r}
<li><img style="cursor: pointer;"src="{$r[filepath]}" width="125" height="78" {if$k==$page}class="s"{/if}/></li>
{/loop}
判断当前栏目是不是 大栏目下的栏目 如果是的话 单独给个样式 给大栏目按钮个效果
下拉类效果(参考博博网站 栏目左侧样式)
{getsql="SELECT catid, url, catname, arrchildid,child, parentid FROM`phpcms_category` WHERE `parentid` = 33and ismenu = 1 " return="c"}
{php$_arrchildid = explode(',',$c[arrchildid])}
<liclass="title"> <a class="titleA"href="javascript:;">{$c[catname]}</a>
<olclass="sub_mu" {if in_array($catid, $_arrchildid)}style="display:block;"{/if}>
{get sql="SELECT url, catname, catid FROM `phpcms_category` WHERE `catid` IN ($c[child] = 0 AND$c[arrchildid]) and ismenu = 1" return="c1"}
<li><a href="{$c1[url]}" {if $catid==$c1[catid]} style="color:#fe9b00;"{/if}>{$c1[catname]}</a></li>
{/get}
</ol>
</li>
{/get}
调用最新文章,带所在版块{pc:getsql="SELECT a.title, a.catid, b.catid, b.catname, a.url as turl ,b.url ascurl,a.id FROM `v9_news` a, `v9_category` b WHERE a.catid = b.catid ORDER BY`a`.`id` DESC "num="15" cache="300"}
{loop $data$r}
<h6><fontclass="cate"><ahref="{$r[curl]}">[{$r[catname]}]</a></font><aclass="gray"href="{$r[turl]}" title="{$r[title]}">{str_cut($r['title'],26)}</a></h6>
{/loop}
{/pc}
====<fontclass="cate"><ahref="{$r[curl]}">[{$r[catname]}]</a></font>所在版块的调用1.截取调用标题长度{str_cut($v[title],36,'')}
{str_cut($v['title'],34)}超出用 ... 代替{str_cut($v['title'],34,'???')}超出用 ???代替{str_cut($v['title'],34,'')}超出不用任何字符代替2.格式化时间调用格式化时间 2011-05-0611:22:33{date('Y-m-d H:i:s',$r[inputtime])}
<spanclass="rt">{date('m-d',$v['inputtime'])}</span>
3.多栏目调用&多推荐位调用调用需求:文章范围为59 60 61三个栏目,并且推送到了27 和28两个推荐位;从第三条开始,连续调用7篇文章。
{pc:getsql="SELECT * FROM v9_news WHERE id IN (SELECT id FROM v9_position_dataWHERE posidin(27,28) and catid in(59,60,61)) order by listorder DESC"cache="3600" start="3"num="7"return="data" }
{loop $data $n$r}
<li>·<a target="_blank" href='{$r[url]}'title="{$r[title]}"style="color:Black;">{str_cut($r[title],22,'')}</a></li>
{/loop}
{/pc}
4.显示栏目名称(只是名称,不带链接){$catname}
显示栏目名称和链接(可以点击)<ahref="{$CATEGORYS[$r[catid]][url]}">{$CATEGORYS[$r['catid']]['catname']}</A>
5.获取父栏目id/获取父栏目名称{$CATEGORY[$catid][parentid]}
父栏目名称:{$CATEGORYS[$CAT[parentid]][catname]}
6.外部数据源调用dedecmsdb 在后台数据源处添加{pc:get sql="SELECT* FROM cq_member where mtype='企业' "cache="3600" dbsource="dedecmsdb"num="7"return="data"}
{loop $data$r}
<ahref="/member/index.php?uid={$r[userid]}"title="{$r[uname]}"target="_blank">{str_cut($r[uname],28,'')}</a>
{/loop}
{/pc}
7.调用子栏目(在栏目首页模板需要用到){pc:content action="category" catid="$catid"num="25" siteid="$siteid" order="listorderASC"}
{loop $data$r}
<a href="{$r[url]}">{$r[catname]}</a>|{/loop}
{/pc}
8.显示指定id的栏目名称 (例子这里catid=22){$CATEGORYS[22]['catname']}
9.在文章面前显示文章类别{pc:content action="lists" catid="79"order="listorder DESC" num="14" }
<?php $TYPE= getcache('type_content','commons');?>
{loop $data $n$r}
<li>{if$TYPE[$r[typeid]][name]}<span style="color:#CC6600">[{$TYPE[$r[typeid]][name]}]
</span>{/if}<ahref="{$r['url']}"{title_style($r[style])}title="{$r['title']}"target="_blank">{str_cut($r[title],33,'')}</a></li>
{/loop}
{/pc}
10.指定变量循环增长(幻灯片经常用到)
{pc:content action="lists"catid="66" order="listorder DESC" thumb="1"num="5" }
{php $num = 0}
{loop $data$r}
linkarr[{$num}]= "{$r[url]}";picarr[{$num}] ="{$r[thumb]}";textarr[{$num}] ="{str_cut($r[title],36,'')}";{php $num++}
{/loop}
{/pc}
11.文章调用使用limit{pc:content action="position" posid="36"num="1" order="listorder DESC limit 1,1--" }
其他都是跟以前一样使用{pc:contentaction="position" posid="31" order="listorderDESC" limit='1,8--'}
{loop $data$r}
<li><ahref="{$r[url]}" title="{$r[title]}"target=_blank>{str_cut($r[title],36,'')}
</a></li>
{/loop}
{/pc}
12.文章从指定位置开始调用起始位置为5,调用3条。相当于limit功能。
{pc:contentaction="position" posid="27" order="listorderDESC" num="3" start="5"}
{loop $data$r}
<a href='{$r[url]}'>{str_cut($r[description],115)}...</a>
{/loop}
{/pc}
13.文章列表页调用关键字,或者首页调用关键字注意:explode(',',$r[keywords]);是将文章关键词通过英文逗号分离,也就是说每一篇文章都要以逗号间隔关键字,否则调用出来会是全部作为一个关键字。如果是空格间隔关键字,将explode(',',$r[keywords]);改成explode(' ',$r[keywords]);{pc:content action="lists"catid="$catid" num="10" order="id DESC"page="$page"}
{loop $data$r}
<ahref="{$r[url]}">{$r[title]}</a>
{php $keywords= explode(',',$r[keywords]);}
<b>文章标签:</b>
{loop$keywords $keyword}
<ahref="{APP_PATH}index.php?m=content&c=tag&catid={$catid}&tag={urlencode($keyword)}"class="blue">{$keyword}</a>
{/loop}
{/loop}
{/pc}
14.每当列表几行的时候出现一次某些符号(比如首页里面的文章推荐,一行显示两条,在这两条中间想加一条竖线 | 就用到这个代码了)数量大的话就容易出错,因为模运算嘛~~呵呵 不过一般也就4个标题以下{pc:contentaction="position" posid="8" order="listorderDESC" num="2"}
{loop $data$r}
<astyle="color:#040605" title="{$r[title]}"href="{$r[url]}"target=_blank>{str_cut($r[title],26,'')}</a>{if $n%2==1} |{/if}
{/loop}
{/pc}
15.v9 列表页完美支持自定义段调用{pc:content action="lists" catid="$catid" num="25"order="id DESC" page="$page"moreinfo="1"}
{loop $data$r}
<ahref="{$r[url]}">[{$r['字段名']}]>{$r[title]}</a>
{/loop}
<divclass="pagebar">{$pages}</div>
{/pc}
16.当前栏目调用父级及以下栏目信息方法其他代码该咋地还是要咋地 。这是要素{php $arrchildid = $CATEGORYS[$CAT[parentid]][arrchildid]}
{pc:getsql="SELECT * FROM v9_news where catid in($arrchildid)cache="3600" page="$page"num="12"return="data"}
17.V9表单功能提交之后如何返回当前页面,而不是默认的首页文件地址找到 phpcms\modules\formguide\index.php文件第73行showmessage(L('thanks'), APP_PATH);修改成如下代码即可实现自动返回前一页showmessage(L('thanks'), HTTP_REFERER);18.v9 首页或分页自定义字段调用和15差不多第一普通列表或栏目调用自定义字段在{pc:contentaction="lists" 后加上副表moreinfo=1 (等于1时显示,0时不显示)例子:
{pc:contentaction="lists" moreinfo=1 catid="2" order="idDESC" num="4"}
<ul>
{loop $data$key $val}
<li><ahref="{$val['url']}">{$val['title']}</a>
<br>价格:{str_cut($v['自定义段'],100)} //100 是字数</li>
{/loop}
</ul>
{/pc}
第二种推荐位调用自定义字段在模型里加好自定义字段后,必须把“在推荐位标签中调用”点击“是“然后用同一样的方法去调节数据就OK了,记住,如果你加了文章,必须去更新文章才会显示,自定义段在推荐中只显示你选择后,选择前加的加文章不显示,更新一下文章就显示了例子:
{pc:contentaction="position" posid="推荐位id"num="30" thumb="1"moreinfo="1"order="listorder DESC"}
{loop $data$key $val}
<LI><ahref="{$val['url']}" target="_blank"><imgsrc="{$val['自定义段']}"alt="{$val['title']}" height=36 width=98 /></a>
<ahref="{$val['url']}"target="_blank">{str_cut($val['title'],20)}</a></LI>
{/loop}
{/pc}
20.编辑器上传图片自动使用标题作为alt参数一: 修改statics/js/ckeditor/plugins/image/dialogs/image.js找到accessKey:'T','default':''
替换成accessKey:'T','default':$('#title').val()二:清除浏览器缓存21.增加文章的随机点击数找到100行的$views = $r['views'] +1修改为:
$rand_nums=rand(79,186);$views= $r['views'] + $rand_nums;表示点击一次,增加79到186次不等-------------------------------------------------------------tips:某些版本出错民间解决方法1.缩略图以及图集无法上传\phpcms\libs\classes\attachment.class.php请把24行的(也有可能是23行)$this->upload_func= 'copy';改成$this->upload_func ='move_uploaded_file';2.碎片模块搜索文章看不到栏目phpcms\modules\block\templates\search_content.tpl.php13行改成<td><?phpif(isset($_GET['dosubmit'])){?><divclass="rt"><ahref="javascript:void(0)" οnclick="$('#search').toggle()"><?phpechoL('folded_up_in_search_of')?></a></div><?php }
echoform::select_category('', $catid, 'name="catid"id="catid"', '','', '0', 1)?> </td>
22、PHPCMS V9的get标签调用1、调用本系统单条数据,示例(调用ID为1的信息,标题长度不超过25个汉字,显示更新日期):
{get sql="select* from phpcms_content where contentid=1" /}
标题:{str_cut($r[title],50)} URL:{$r[url]} 更新日期:{date('Y-m-d',$r[updatetime])}
2、调用本系统多条数据,示例(调用栏目ID为1通过审核的10条信息,标题长度不超过25个汉字,显示更新日期):
{getsql="select * from phpcms_content where catid=1 and status=99 order byupdatetime desc"rows="10"}
标题:{str_cut($r[title],50)} URL:{$r[url]} 更新日期:{date('Y-m-d',$r[updatetime])}
{/get}
3、带分页,示例(调用栏目ID为1通过审核的10条信息,标题长度不超过25个汉字,显示更新日期,带分页):
{getsql="select * from phpcms_content where catid=1 and status=99 order byupdatetime desc"rows="10" page="$page"}
标题:{str_cut($r[title],50)} URL:{$r[url]} 更新日期:{date('Y-m-d',$r[updatetime])}
{/get}
分页:{$pages}
4、自定义返回变量,示例(调用栏目ID为1通过审核的10条信息,标题长度不超过25个汉字,显示更新日期,返回变量为 $v):
{getsql="select * from phpcms_content where catid=1 and status=99 order byupdatetime desc"rows="10" return="v"}
标题:{str_cut($v[title],50)} URL:{$v[url]} 更新日期:{date('Y-m-d',$v[updatetime])}
{/get}
5、调用同一帐号下的其他数据库,示例(调用数据库为bbs,分类ID为1的10个最新主题,主题长度不超过25个汉字,显示更新日期):
{getdbname="bbs" sql="select * from cdb_threads where fid=1 order bydateline desc"rows="10"}
主题:{str_cut($r[subject],50)} URL:/viewthread.php?tid={$r[tid]}
更新日期:{date('Y-m-d',$r[dateline])}
{/get}
6、调用外部数据,示例(调用数据源为bbs,分类ID为1的10个最新主题,主题长度不超过25个汉字,显示更新日期):
{getdbsource="bbs" sql="select * from cdb_threads where fid=1 orderby dateline desc"rows="10"}
主题:{str_cut($r[subject],50)} URL:/viewthread.php?tid={$r[tid]}
更新日期:{date('Y-m-d',$r[dateline])}
{/get}
不知道有没有朋友在使用中遇到这几种方法不能满足需求的时候呢?
例如:取出评论数最多的第3条到第10条记录,有人说我是多此一举,一般取最多评论没理由不取第一和第二条,因为PHPCMS的缩略图对4:3这样的尺寸比较好,对长条形(如3:4)的图片缩略效果不好,为了自己手动更新评论最多的第一和第二条记录,故此不想自动更新读取前两条。
<ul>
<!--{getsql="selectA.contentid,A.catid,A.title,A.thumb,A.description,A.url,A.status,A.updatetime,B.contentid,B.
hits,B.commentsfrom `phpcms_content` as A INNER JOIN `phpcms_content_count` as BONA.contentid=B.contentid and A.status=99 and LENGTH(A.thumb)>0 order byB.comments desc LIMIT3,7"}-->
<li><spanclass="xxnse_fen2">{$r[comments]}人参与评论</span>·<a href="{$r[url]}"title="{$r[title]}">{str_cut($r[title],28)}</a></li>
<!--{/get}-->
</ul>
关键点就在 order byB.comments desc LIMIT 3,7 (表示从第3条记录开始,向下读取7条数据)这个在MYSQL是经常用,我抱着试试看的想法,结果是可以的。
希望做PHPCMS开发的朋友共同学习和分享phpcms V9 保留了2008的get标签的使用方法它包括了2种方式一种是内部数据,另一种是外部数据我们先分析下内部数据的使用方法1、内部数据的调用{pc:get sql="SELECT * FROM `XX` WHERE fid =$ltid AND digest =2AND ifupload =1ORDER BY tid DESC" num="2" cache="3600" return="data" }
{loop $data$r}
。。。。。
{/loop}{/pc}
由此可以看出 get 语句支持num的用法但是不支持 limit 5,5.这样的用法实在是很遗憾num是调用的条数2、外部数据的调用{ pc: get sql = "SELECT * FROM phpcms_member" cache = "3600"page = "$page" dbsource ="discuz" return = "data"}
<ul>
{ loop $data$key $val }
{ $val [username ]}< br />
{ /loop}
</ ul >
{ $pages }
{/ pc }
一个是数据源,一个是产生的pages翻页效果。
来源:仿站,南京网站建设[来源地址]:http://www.upxinyuan.com/bangzhu/94_1.html
按点击量排序
{getsql="SELECTd.contentid,c.contentid,d.hits,c.catid,c.title,c.thumb,c.url,c.description,c.inputtimefrom phpcms_content_count d left join phpcms_content c ond.contentid=c.contentid where c.status=99 and c.catid = 5 order by d.hitsdesc" rows="7"}
<li><a href="{$r[url]}"target="_blank">{str_cut($r[title], 46)}</a></li>
{/get}
调用模型字段修改global.func.php
functionget_setting_fields($fieldname, $modelid= 11, $tablename = 'phpcms_model_field'){
$arr = setting_get($tablename,"modelid=$modelid and field='{$fieldname}'");
$arr = explode("\n",$arr['options']);
$r_arr = array();
foreach($arr as $str){
list($val, $key) =explode("|", $str);
$r_arr[trim($key)] = trim($val);
}
return $r_arr;
}
functionecho_setting_fields($fieldname, $echotype = 'a', $modelid = 11, $tablename ='phpcms_model_field'){
$arr = get_setting_fields($fieldname,$modelid, $tablename);
foreach($arr as $key=>$val){
if($echotype === 'a'){
echo "<ahref='{$key}'>$val</a>";
}elseif($echotype === 'option'){
echo "<optionvalue='{$key}'>$val</option>";
}
}
}
前台调用{php echo_setting_fields('chengshi');}
控制器执行sql语句;
$get_db = pc_base::load_model("get_model");//不设置要查询的数据表,只执行查询操作
$sql="select* from `v9_category1` where keyid = 3360 and parentid=".$_GET['erji']." limit 0,1";
$db =pc_base::load_model("get_model");;
$query = $db->query($sql);
$data =$db->fetch_array($query);
Cookie判断用户登录
//登陆判断
$phpcms_auth =param::get_cookie('auth');
if(!$phpcms_auth){showmessage(L('please_login','', 'member'),'index.php?m=member&c=index&a=login&forward='.$forward);
}