帝国CMS中用自定义的标签来实现[!–newsnav–] 的效果

帝国CMS中使用自定义标签实现[!newsnav]的效果,按照以下步骤:

1、在模板文件中添加一个自定义标签的调用,[!my_newsnav]

2、接下来,我们需要创建一个自定义标签文件,在你的模板目录下,新建一个名为my_newsnav.lib的文件,在这个文件中,我们将编写自定义标签的逻辑。

3、编辑my_newsnav.lib文件,添加以下代码:

<?php
// 获取新闻分类列表
function getNewsNav($params, $row = null)
{
    global $empire, $dbtbpre;
    $cid = (int)$params['cid'];
    $relation = (int)$params['relation'];
    $orderby = $params['orderby'];
    $limit = (int)$params['limit'];
    // 查询条件
    $where = "classid='$cid'";
    if ($relation == 1) {
        $where .= " and isurl=0";
    } elseif ($relation == 2) {
        $where .= " and isurl=1";
    }
    // 排序方式
    switch ($orderby) {
        case 'id':
            $order = 'id';
            break;
        case 'newstime':
            $order = 'newstime';
            break;
        default:
            $order = 'id';
    }
    // 查询数据库
    $sql = "SELECT * FROM {$dbtbpre}ecms_news_index WHERE $where ORDER BY $order DESC LIMIT $limit";
    $result = $empire>query($sql);
    // 生成导航链接
    $nav = '';
    while ($row = $empire>fetch($result)) {
        $title = $row['title'];
        $url = $row['titleurl'];
        $nav .= "<a href='$url'>$title</a> | ";
    }
    return substr($nav, 0, 3); // 去掉最后一个分隔符
}
?>

4、在模板文件中使用自定义标签:

<!my_newsnav start >
<p>[!my_newsnav]</p>
<!my_newsnav end >

5、在模板参数中设置自定义标签的参数,

<!my_newsnav start >
<p>[!my_newsnav]</p>
<!my_newsnav end >

6、保存模板文件,然后在后台编辑页面时,选择这个模板,并设置相应的参数,如分类ID、关系、排序方式和数量等。

这样,当访问这个页面时,就会显示根据指定参数生成的新闻导航链接了。

本文摘自网络,不代表短经典网立场 https://www.duanjingdian.com/263.html

上一篇 2024 年 4 月 23 日
下一篇 2024 年 4 月 23 日

相关推荐