dedecms问题:前台调用后台,实现后台控制前台
这个你可以通过修改搜索模板文件来达到你的要求。默认的搜索结果是显示内容标题,你可以通过重新编写调用代码来实现,可以用arclist来实现,默认的是用LIST标签来调用。最好是将栏目属性设置成“模型”这样更利于调用内容。不然调用效果也不是很好。
{dede:globalcfg_templeturl/} 把这个直接改成 你模板的路径就好了 不要用标签 如果images/buy_cargif 这个是不变的话 就可以不用写标签了
如果是文章中的或缩略图那可以这么写
<img src="[dede:picname/]" />
这个简单,织梦后台有上传文件功能,你只需要吧所有都按顺序命名,比如:banner1jpg、banner2jpg、banner3jpg等等,然后把传到指定的文件夹。
然后在后台的基本参数增加新变量,变量名为:cfg_banner,如下图
接着我们拿images文件夹为例子,模板中这样写:
<img src="/images/banner{dede:globalcfg_banner/}jpg">
这样你只需在后台修改数字1、2、3、4就可以改变相应了
导航代码
{dede:channel type='self' typeid ='栏目ID'}<a href='[field:typelink/]'>[field:typename/]</a>
{/dede:channel}
列表代码
{dede:arclist typeid=1 row=20 channelid=2 col=5 titlelen=20 orderby='pubdate' imgwidth=160 imgheight=123}
<table cellspacing=2 cellpadding=0 width="98%" border=0>
<tbody>
<tr>
<td align=middle>[field:imglink/]</td></tr>
<tr>
<td align=middle>[field:textlink/]</td></tr></tbody></table>
{/dede:arclist}
普通文章列表调用内容多张不能用图集模型的办法,需要自己写一个函数,在include/extendfuncphp 增加函数
function Getpic($body){
$getpic = '';
preg_match_all("/(src)=[\"|'| ]{0,}([^>]\(gif|jpg|bmp|png))/isU",$body,$img_array);
$img_array = array_unique($img_array[2]);
if(count($img_array)>0)
{
foreach($img_array as $key=>$value)
{
$picname = preg_replace("/[\"|'| ]{1,}/", '', $value);
$getpic ="<p><img src='"$picname"' border=0 /></p>";
}
}
else
{
$getpic="<p>没有</p>";
}
return $getpic;
}
列表页模版使用标签
{dede:list pagesize='10' addfields='body'}<li><a href='[field:arcurl /]' target='_blank'>
<span class="title">[field:title /]</span>
[field:body function='Getpic(@me)'/]
</a></li>
{/dede:list}
同时到网站后台-内容模型管理,修改普通文章模型附加列表字段增加body
保存后,就可以更新列表了,这样就能在列表页显示文章正文内所有
要实现此功能,需要熟悉html与css的知识
可以使用浏览器的调试功能去更改dedecms的css从而改变的大小
以firefox为例,请先在firefox上安装firebug
用firefox打开要更改的网页,要更改的地方右键点击
可以在上图的1处看到CSS的高度为106px,1处看到的宽度为:143px,3处看到CSS在哪一个css文件的哪一行里面
点击在高度与宽度上更改数值:如下图,可以看到大小已更改
再找到3处的css文件,更改成你想要的值,保存,再上传到服务器即更改了大小
0条评论