15
2012-07

KesionCMS9.0循环标签不显示非图片文章解决办法

Kesion CMS 9.0zho中,尝试使用一个循环列表标签,来显示所有一级栏目,外循环定义如下:
   {$IF ({@autoid} MOD 2=1)}{<div class=floatl>}{<div class=floatr>}{/$IF}
              <div class="title"><span><a href="{@classurl}" target="_blank">更多>></a></span>{@classname}< /div>
              <div class="floatlbox">
                    
                   
                        {$InnerText}
                   
                </div>
</div>
内循环定义如下:
 [loop=1]
                        <div class="c_pt_1">
                            <div class="Pic"><a href="{@linkurl}" target="_blank"><img src="{@photourl}"></a></div>
                            <div class="Txt">
                            <h3><a href="{@linkurl}">{@title}</a></h3>
                            <p>{@intro}...</p>
                             </div>
                        </div>
                         [/loop]
                         <div class="dotline clear"></div>
                                                <div class="synews9">
                            <ul>
                            [loop=5]
<li><span id="date">{@adddate}</span><a href="{@linkurl}"   target="_blank">{@title}</a> </li>     [/loop]
                            </ul>
                        </div>
出现了一个问题,有一个文章类栏目没有任何内容显示.这个文章栏目里面全部非图片文章,可是从设置上却看不到哪里要求必须是带图片文章才显示.为了测试,手动把数据库中该栏目下文章的图片文章标志字段PicNews置为1,问题依旧存在,该栏目还是不显示任何内容.

好在asp是可以查看源码的,最终在Kesion.Label.FunctionCls.asp文件中找到了答案.
第392行:If PrintType=2 or (instr(LabelStyle,"{@photourl}")>0 and PrintType>2) Then Param = Param & " And I.PhotoUrl<>''"
在内循环的标签中,使用了{@photourl},于是此标签只列出带图片路径的的文章.知道了问题所在,就好办了,不了解PrintType是什么意思,也不去管它,简单的把(instr(LabelStyle,"{@photourl}")>0 and PrintType>2)删掉就OK了.
« 上一篇下一篇 »

相关文章:

留言列表:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。