2015-09-08 09:40:24  浏览:1903

destoon cms

destoon调用它的分类及子分类和三级分类名的方法 

 我们经常遇到需要调用某模块的分类名和他的子分类以及三级分类名,但destoon模板默认的是调用该模板的一级分类名。

下面的一种方法可以实现,三个分类名分别代表

 

一级分类名:{$m[catname]}  

二级分类名:{$c[catname]} 

三级分类名:{$b[catname]}  

 

{loop $maincat $i $m}
{php $child = get_maincat($maincat, $CATEGORY, 1);}
  <div class="hq01">
   <div class="hq-tt">
    <p><h4>{$m[catname]}</h4>

{php $a = get_maincat($m[catid], $CATEGORY, 1);}
    {loop $a $g}
    {php $f = get_maincat($g[catid], $CATEGORY, 1);}
    {loop $f $i $b}
    <span><a href="{$MOD[linkurl]}{$c[linkurl]}">{$b[catname]}</a></span>
    {/loop}
    {/loop}
   <span class="hqmore"><a href="{$MOD[linkurl]}{$m[linkurl]}">[更多]</a></span> </p>
   </div>
   <div class="clear"></div>
   {php $childs = get_maincat($m[catid], $CATEGORY, 1);}
   {loop $childs $i $c}
   <div class="hq-cc">
   <!--{php $tags=tag("moduleid=$moduleid&condition=status=3&areaid=$cityid&length=40&catid=".$c[catid]."&order=".$MOD[order]."&pagesize=5&datetype=2&target=_blank&template=null")}-->
    <ul>
     <li class="li- t"><span><a href="{$MOD[linkurl]}{$c[linkurl]}">---更多< /a></span>{$c[catname]}</li>
     {loop $tags $t}
            <li><!-- <span class="f_r">{date('Y-m-d', $t[addtime])} </span> -->
      <a href="{$t[linkurl]}"{if $target} target="{$target}"{/if}>{$t[title]}</a>
      </li>
      {/loop}
     
    </ul>
   </div>
   {/loop}
   
   <div class="clear"></div>
  </div>
  <div class="clear"></div>
{/loop}

 

Destoon tag loop 标签循环中调取内容

destoon 将内容表与标题表区分开来以便获取查询的高性能。tag标签就是专门调取标题表中字段信息的。

但有时候我们希望tag标签中能获取到内容表的信息。看来只有改装一下tag标签了(给tag功能打补丁)。

改装后,由参数控制开关,不影响原有调用方法的功能和性能。

相似问题

打开 /include/tag.func.php

找到 isset($showpage) or $showpage = 0; 这句。

在其上行或其下行添上

(isset($showcontent) && $MODULE[$moduleid]['module']=='article') or $showcontent = 0; #我的补丁

找到 $query = "SELECT ".$fields." FROM ".$table." WHERE ".$condition.$order." LIMIT ".$offset.",".$pagesize; 这句。

替换成

# 补丁开始
if($showcontent){
  $query = "SELECT t.".preg_replace('/,\s*/im','t.',$fields).",c.`content` FROM ".$table." as t left join ".preg_replace('/(\d+)$/','data_$1',$table)." as c on t.itemid=c.itemid WHERE ".$condition.$order." LIMIT ".$offset.",".$pagesize;
}else{
  $query = "SELECT ".$fields." FROM ".$table." WHERE ".$condition.$order." LIMIT ".$offset.",".$pagesize;
}
# 补丁结束

然后再模板页中使用

<!--{tag("moduleid=21&condition=status=3&pagesize=10&showcontent=1&template=list-mytpl")}-->

然后再tag循环列表模板页中使用

<ul>
{loop $tags $i $t}
<li><a title="{$t[title]}" src="" style="{$t[css]}">{$t[title]}<br/>{$t[content]}</a></li>
{/loop}
</ul>

 

destoon整合ecshop

1.首先分别安装destoon和ecshop(注意保证两个软件安装在同一数据库中)
2.进入ecshop后台,选择会员管理---会员整合---ucenter---安装

 3.会弹出如下页面

4.将uc_client目录拷贝到ecshop目录中,并且将ucenter安装到ecshop目录中


5.点击安装会出现如下图

6.在文本框填入如下信息
ucenter的url:http://zyjzd.com/shop/ucenter
ucenter创始人密码:填入安装ucenter的密码
7.在下图中选择强制为同一用户点开始导入
.
8.进入ucenter的后台,会发现自动添加了一个应用ecshop,并且用户管理里,ecshop中的会员也导入到了ucenter中




到此ucenter与 ecshop的整合已完成,下边进行ucenter与destoon的整合
9.在ucenter的后台里点应用管理---添加新应用

10.填入如下信息

11.重新进入刚添加的应用,将下列信息拷贝一会自动填充到destoon中

12.在destoon的会员管理---模块设置---会员整合---的ucenter配置信息中粘贴入刚才复制的信息点自动填充然后确认

13.回到ucenter中会发现应用通信成功了,至此整合完成
注:ecshop整合后以前的会员会自动导入到ucenter中,而destoon整合以前注册的会员,需要在destoon中重新登录一次才会出现在ucenter的用户管理中,并且登录后的会员会自动加入到ecshop中。

 

 

destoon关闭注册会员验证码

 会员管理----会员管理----模块设置----基本设置----注册验证码----关闭

 

destoon栏目首页读取文章内容

<!--{php $tags=tag("table=article_data_24&template=null");}-->
 {loop $tags $t}
 {$t[content]}
 {/loop}

 

 

destoon栏目页首页分页问题

先看效果图
 代码
 <!--{php $tags=tag("moduleid=21&pagesize=5&page=$page&showpage=1&order=itemid desc&template=newsindexlist");}--> 
代码中注意以下几个地方
1、&page=$page
2.  showpage=1
以上二个必须手动加入,并且这里的 pagesize=5是指每页显示多少条数据,不是只调用多少条数据

 主 要说这个&showpage=1&page=$page,如果要显示分页就要加这个,&showpage只要为真就可以,& amp;page一定要是$page这样可以接受地址栏传递过来的&page=多少,比如houdunwang.com?itemid=304& amp;page=3

 

destoon修改购买商品需卖家确认才能付款 

将destoon的买家购买商品,付款前需卖家确认这步跳过,直接购买后付款。



项目---module---member---trade.inc.php

找到大约310行的样子,

$db->query("INSERT INTO {$DT_PRE}finance_trade (buyer,seller,title,linkurl,thumb,amount,addtime,updatetime,note, buyer_postcode,buyer_address,buyer_name,buyer_phone,buyer_receive,status) VALUES ('$_username','$seller','$title','$linkurl','$thumb','$amount','$DT_TIME','$DT_TIME','$note','$buyer_postcode','$buyer_address','$buyer_name','$buyer_phone','$buyer_receive',1)");

将红色加粗的代码加入进去,OK!

注:5.0以上版本可以直接在商场模块设置关闭

 

destoon更换域名后还有以前链接问题 

主要问题是:(伪静态造成)

伪静态样式:http://31.com/sell/1/sell_info_358.html

非伪静态样式:http://31.com/sell/list.php?catid=4

数据库中已将全部地址换为新的域名地址,网站后台已更新缓存和重新生成首页,但点页面链接时还是会跳到以前的域名上去的问题。

解决步骤:

首先,进入Destoon的后台,网站设置—SEO优化—网站首页生成html(关闭)—-URL Rewrite(关闭)。

第二步,功能模块—供应管理—-模块设置—-SEO设置—-列表页是否生成html(关闭)—-PHP列表页地址规则(最后一个)—内容页是否生成html(否)—-PHP内容页地址规则(最后一个)。

第三步,将求购、行情等模块如第三步一样设置。

第四步,将各模块更新数据—一键生成。

 

destoon幻灯灯样式修改 

修改后效果如下:


一、找到项目中相应的广告位假如广告位为40,然后在项目中找到cache\htm\ad_40.htm 即可修改

二、将其中的代码代为如下:

<DIV id=sasFlashFocus27></DIV>
<script src="/file/script/flashobj.js" type=text/javascript></script>
<script type="text/javascript">
var pics = "http://36.com/file/upload/201109/16/10-00-27-70-1.jpg|http://36.com/file/upload/201109/16/10-10-00-75-1.jpg|http://36.com/file/upload/201109/16/10-07-07-64-1.jpg|http://36.com/file/upload/201109/16/10-08-38-57-1.jpg";
var links = "|||";
var texts = "红塔集团|长沙卷烟厂|中外名酒城|中国苏烟";
var sohuFlash2 = new sohuFlash("/file/flash/demo001.swf", "27", 522, 245, "7");
sohuFlash2.addParam("quality", "high");
sohuFlash2.addParam("wmode", "opaque");
sohuFlash2.addVariable("image",pics);
sohuFlash2.addVariable("url",links);
sohuFlash2.addVariable("info", texts);
sohuFlash2.addVariable("stopTime","5000");
sohuFlash2.write("sasFlashFocus27");
</script>

注:a.其中的<script src="/file/script/flashobj.js" type=text/javascript></script>是手动加的js代码,需要手动加入相应的目录

b.var pics为图片存放的目录和图片名称

c.var links为图片的链接

d.var texts为图片下显示的相应文字

e./file/flash/demo001.swf为显示的flash需手动加进去,如果不加进去图片这些将会显示不出来

 

 

争对以上改法,当后台更新广告时,幻灯片的样式又会被改回默认的样式,所以需要找到项目--template--extend--下的ad_code.htm,在其中将{elseif $typeid == 5}下的内容改为以下代码在保存

<DIV id=sasFlashFocus27></DIV>
<script src="/file/script/flashobj.js" type=text/javascript></script>
<script type="text/javascript">
var pics = "{loop $tags $k $v}{if $k}|{/if}{$v[thumb]}{/loop}";
var links = "{loop $tags $k $v}{if $k}|{/if}{$v[linkurl]}{/loop}";
var texts = "{loop $tags $k $v}{if $k}|{/if}{$v[title]}{/loop}";
var sohuFlash2 = new sohuFlash("/file/flash/demo001.swf", "27", 522, 245, "7");
sohuFlash2.addParam("quality", "high");
sohuFlash2.addParam("wmode", "opaque");
sohuFlash2.addVariable("image",pics);
sohuFlash2.addVariable("url",links);
sohuFlash2.addVariable("info", texts);
sohuFlash2.addVariable("stopTime","5000");
sohuFlash2.write("sasFlashFocus27");
</script>

 

destoon在已有的项目上修改配置方法 

一、选好要用作修改的项目,复制一份,并将其改名为要新做的项目名

二、找到项目根目录内的config.inc.php文件,打开修改里边的相应内容

三、修改数据库,如jiancai.360ads.net改为相应的网址如10.com

四、进入后台更新广告

五、进入后台更新缓存

五、进入后台更新缓存

 

解决destoon二次开发标签调用以前的数据问题

在destoon后台中虽然已经将上个项目的数据删除掉了,但是在标签调用时依然是以前的数据,争对这个问题主要是在后台相关内容的回收站中将其全部删除在即可。

 

 

内容二次整理自【╱/.hāppy熊oоΟ的空间】

返回首页