zoukankan      html  css  js  c++  java
  • 让arclist标签也支持currentstyle属性 完美解决

    1.查找到: 
    $channelid = $ctag->GetAtt('channelid');

    在下面插入:
    $currentstyle = $ctag->GetAtt('currentstyle');
    2、查找:
    return lib_arclistDone
               (
                 $refObj, $ctag, $typeid, $ctag->GetAtt('row'), $ctag->GetAtt('col'), $titlelen, $infolen,
                 $ctag->GetAtt('imgwidth'), $ctag->GetAtt('imgheight'), $listtype, $orderby,
                 $ctag->GetAtt('keyword'), $innertext, $envs['aid'], $ctag->GetAtt('idlist'), $channelid,
                 $ctag->GetAtt('limit'), $flag,$ctag->GetAtt('orderway'), $ctag->GetAtt('subday'), $ctag->GetAtt('noflag'),
                 $tagid,$pagesize,$isweight
               );


    替换为:
    return lib_arclistDone
               (
                 $refObj, $ctag, $typeid, $ctag->GetAtt('row'), $ctag->GetAtt('col'), $titlelen, $infolen,
                 $ctag->GetAtt('imgwidth'), $ctag->GetAtt('imgheight'), $listtype, $orderby,
                 $ctag->GetAtt('keyword'), $innertext, $envs['aid'], $ctag->GetAtt('idlist'), $channelid,
                 $ctag->GetAtt('limit'), $flag,$ctag->GetAtt('orderway'), $ctag->GetAtt('subday'), $ctag->GetAtt('noflag'),
                 $tagid,$pagesize,$isweight,$currentstyle
               );
    其实就是在调用函数的最后加了一个$currentstyle实参
    3、查找
    function lib_arclistDone(&$refObj, &$ctag, $typeid=0, $row=10, $col=1, $titlelen=30, $infolen=160,
            $imgwidth=120, $imgheight=90, $listtype='all', $orderby='default', $keyword='',
            $innertext='', $arcid=0, $idlist='', $channelid=0, $limit='', $att='', $order='desc', $subday=0, $noflag='',$tagid='', $pagesize=0, $isweight='N')
    替换为:
    function lib_arclistDone(&$refObj, &$ctag, $typeid=0, $row=10, $col=1, $titlelen=30, $infolen=160,
            $imgwidth=120, $imgheight=90, $listtype='all', $orderby='default', $keyword='',
           $innertext='', $arcid=0, $idlist='', $channelid=0, $limit='', $att='',$order='desc', $subday=0, $noflag='',$tagid='', $pagesize=0,$isweight='N',$currentstyle='')
    其实就是在函数后面加了一个$currentstyle=''形参
    4、查找
    $row['textlink'] = "<a href='".$row['filename']."'>".$row['title']."</a>";
    在下面插入:
    if($currentstyle && $row['id']==$arcid){
                        $currentstyle = str_replace('~typelink~', $row['filename'], $currentstyle);
                        $row['currentstyle'] = str_replace('~typename~', $row['title'], $currentstyle);
                    }
    保存,即可。
    调用方法:
    {dede:arclist titlelen='42' row='10' currentstyle="<li class='current' ><a href='~typelink~'>~typename~</a></li>"}
         [field:array runphp='yes']
             if(@me['currentstyle']){
                 @me = @me['currentstyle'];
             }else{
                 @me = "<li class='current' ><a href='{@me['arcurl']}'>{@me['title']}</a></li>";
             }
         [/field:array]
    {/dede:arclist}
    也可以与channelartlist标签(详见:http://bbs.dedecms.com/read.php?tid-559891-ds-1.html )相结合使用,
    这样调用:

    {dede:arclist titlelen='42' row='10' currentstyle="<li class='current'><a href='~typelink~' >~typename~</a></li>"}
         [field:array runphp='yes']
             if(@me['currentstyle']){
                 @me = @me['currentstyle'];
             }else{
                 @me = "<li><a href='{@me['arcurl']}'>{@me['title']}</a></li>";
             }
         [/field:array]
    {/dede:arclist}
    @me = "<li><a href='{@me['arcurl']}'>{@me['title']}</a></li>";这一行不加任何样式标签

  • 相关阅读:
    Android 面试知识集1
    Android 开发自己的网络收音机2——电台列表(SlidingMenu侧滑栏)
    Android 程序drawable资源保存到data目录
    Android 开发自己的网络收音机1——功能要求及设计方案
    Android内存机制分析2——分析APP内存使用情况
    Android内存机制分析1——了解Android堆和栈
    Android Gallery实现3D相册(附效果图+Demo源码)
    Android 后台发送邮件 (收集应用异常信息+Demo代码)
    纯代码写UI的时候,如何指定style?
    解决SimpleCursorAdapter不能自动更新的问题
  • 原文地址:https://www.cnblogs.com/shanmao/p/3412340.html
Copyright © 2011-2022 走看看