UCMS实现tag的方法

admin 2018-1-24 519

UCMS原生是不带标签云集功能的,但在添加字符段的过程中,确显示有标签,折腾了好久,却搞不出来,后来发现,其实可以通过简单的搜索功能来实现标签的功能。

实现条件

文章字符段中包括关键词(keyword)、tag(标签(横)或(竖))。

实现方法

1. 发表文章时,填写tag和关键词,关键词等于各个标签用“,”隔开,如标签为“UCMS”“标签”这两个,关键词就填写“UCMS,标签”,可以添加额外内容。

2. 新建自定义页面,地址为/so.php,模板文件为so.php,模板中so.php的内容为:

{if isset($_GET["keyword"])}

<!DOCTYPE HTML>

<html class="no-js">

<head>

<title>关键字“{strip_tags($_GET["keyword"])}”的搜索结果</title>

</head>

<body>

{$set=array()}

{$set['cid']=0}

{$set['keyword']=strip_tags($_GET["keyword"])}

{$set['searchcolumn']=title,keywords}

{$set['page']=page}

{$set['pagesize']=20}

{$articles=alist($set)}

{loop $articles['list'] as $a}

<a href="{$a['link']}">{$a['title']}</a>

{/loop}

</body>

</html>

{else}

{notfound()}

{/if}

3. 在需要加入tag的地方添加代码:

{$tags=$a['tag']|json_decode(1)}

{loop $tags as $tag}

<a href="so.php?keyword={$tag}" title="搜索关键字{$tag}">{$tag}</a>

{/loop}

注意:上面的代码实在文章列表页面用的,如果实在文章页面,需要将{$tags=$a['tag']|json_decode(1)}改为

{$tags=$article['tag']|json_decode(1)}


最新回复 (0)
全部楼主
返回