phpcms内容页增加上一篇下一篇功能

一、使用自带标签

<div>
    上一篇:<a href="{$previous_page[url]}">{$previous_page[title]}</a>
    下一篇:<a href="{$next_page[url]}">{$next_page[title]}</a>
</div>

自带标签使用简单,当上一篇或下一篇没有文章的时候,点击会弹出 JavaScript 弹窗提示没有文章,这点有些人不能接受。

二、自定义方法

<!-- 上一篇 -->
{pc:get sql="SELECT * FROM v9_news WHERE id < $id ORDER BY id DESC" num="1" return="p"}
    {loop $p $pv}
    {php $pid = "id = $pv[id]"}
    {pc:content action="lists" catid="$catid" where="$pid" order="id DESC" num="1"}
    <ul>
        {loop $data $key $val}
        <li>上一篇: <a href="{$val['url']}">{$val['title']}</a></li>
        {/loop}
    </ul>  
    {/pc}
    {/loop}
    {if $pv[id]<=0}
        上一篇:没有了
    {/if}
{/pc}  


<!-- 下一篇 --> {pc:get sql="SELECT * FROM v9_news WHERE id > $id ORDER BY id ASC" num="1" return="ne"} {loop $ne $nev} {php $neid = "id = $nev[id]"} {pc:content action="lists" catid="$catid" where="$neid" order="id DESC" num="1"} <ul> {loop $data $key $val} <li>下一篇:<a href="{$val['url']}">{$val['title']}</a></li> {/loop} </ul> {/pc} {/loop} {if $id>$nev[id]} 下一篇:没有了 {/if} {/pc}

可以自定义上一篇文章或者下一篇文章没有内容的时候的表现。

补充,上面判断上一页/下一页是否有文章的判断语句可改为这个会更好:

// 上一页没有了
{if empty($p)}
    <li>没有了</li>
{/if}

// 下一页没有了
{if empty($ne)}
<li>没有了</li>
{/if}

判断字段是否为空值,为空值则显示“没有了”。

发表评论