dedecms制作展示型网站

1、channelartlist实现currentstyle属性

打开include\taglib\channelartlist.lib.php找到:
$pv->Fields[‘typeurl’] = GetOneTypeUrlA($typeids[$i]);
在此行代码下方增加以下代码:

if($typeids[$i][‘id’] == $refObj->TypeLink->TypeInfos[‘id’] || $typeids[$i][‘id’] == $refObj->TypeLink->TypeInfos[‘reid’] )
{
    $pv->Fields[‘currentstyle’] = $currentstyle ? $currentstyle : ‘current';
}else{
    $pv->Fields[‘currentstyle’] = ”;
}

调用方法

{dede:channelartlist typeid=’2′ currentstyle=’current’}
<li class='{dede:field.currentstyle/}’>
    <a href='{dede:field name=’typeurl’/}’>{dede:field name=’typename’/}</a>
</li>
{/dede:channelartlist}

2、对当前位置position的修改

{dede:field name = "position" runphp='yes'}  
    <!--里面的 '> >' 是被代替的字符 ,' > /" 其中的 "/" 是需要自己需要的字符  -->
    @me=substr(str_replace('> >','> -',@me),0,strlen(@me)-2);   
{/dede:field}

3、调用上一篇、下一篇

通用的调用方法是:

{dede:prenext get='pre'/} 
{dede:prenext get='next'/}

单独获取“上一篇文章地址”:

{dede:prenext get='pro' runphp="yes"}
    preg_match_all('/<a.*?(?: |\\t|\\r|\\n)?href=[\'"]?(.+?)[\'"]?(?:(?: |\\t|\\r|\\n)+.*?)?>(.+?)<\/a.*?>/sim', @me, $strResult, PREG_PATTERN_ORDER);
    @me=$strResult[1][0];
{/dede:prenext}

单独获取“下一篇文章地址”:

{dede:prenext get='next' runphp="yes"}
    preg_match_all('/<a.*?(?: |\\t|\\r|\\n)?href=[\'"]?(.+?)[\'"]?(?:(?: |\\t|\\r|\\n)+.*?)?>(.+?)<\/a.*?>/sim', @me, $strResult, PREG_PATTERN_ORDER);
    @me=$strResult[1][0];
{/dede:prenext}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,466评论 25 708
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,981评论 19 139
  • ✨马基雅弗利:政治无道德✨ 马基雅弗利,意大利著名的政治思想家、外交家和历史学家。他是一位深受文艺复兴影响的法学思...
    小义子_正版阅读 293评论 0 1
  • 以下做法是错误的,因为这个地址会随着时间推移而变得不可用,因此合理的安排项目目录是更为合理的解决方案!!!! 项目...
    南尼喜嘛斯嘎阅读 12,624评论 0 2
  • 老师在课堂上解释:什么是垃圾?垃圾就是:旧了的不能用的东西是垃圾。学生回答说:故宫里的有些钟表旧了,也走不了,不能...
    蓝山胖曹阅读 731评论 2 2