在织梦DedeCMS中,如果你想调用包含某一关键词的文章,可以使用系统的SQL查询标签和自定义标签来实现,下面将详细解释如何实现这一功能。
使用SQL查询标签调用含有某一关键词的文章
1、进入DedeCMS后台:登录到你的DedeCMS网站管理后台。
2、找到并编辑模板文件:根据你要展示的位置,找到相应的模板文件进行编辑,如果你要在首页显示这些文章,可以编辑index.htm
文件。
3、插入SQL查询标签:
在模板文件中需要插入以下代码来调用包含特定关键词的文章:
“`php
{dede:sql name=’myquery’}
SELECT * FROM dede_archives WHERE title LIKE ‘%关键词%’ or introtext LIKE ‘%关键词%’
{/dede:sql}
{dede:list pagesize=’10’}
[field:title/]
{/dede:list}
“`
dede_archives
是默认的DedeCMS文章表名,你可以根据实际情况修改。
LIKE '%关键词%'
用于模糊匹配标题或简介中含有指定关键词的文章。
pagesize='10'
表示每页显示10篇文章,可以根据需要调整。
4、保存并更新缓存:编辑完成后,记得保存模板文件,并更新系统缓存,以便更改生效。
使用自定义标签调用含有某一关键词的文章
除了直接使用SQL查询标签外,还可以通过编写自定义标签来实现更复杂的逻辑。
1、创建自定义标签文件:
在/data/tag
目录下创建一个自定义标签文件,比如get_articles_by_keyword.tag
。
2、编写自定义标签代码:
在get_articles_by_keyword.tag
文件中编写如下PHP代码:
“`php
<?php
$keyword = "关键词"; // 替换为你需要的关键词
$row = $dsql>GetOne("SELECT * FROM#@__archives
WHERE title LIKE ‘%$keyword%’ or introtext LIKE ‘%$keyword%’ ");
if($row) :
foreach ($row as $k => $v) {
assign("row_".$k, $v);
}
include $template>GetTemplate("tags/dedecms_label");
endif;
?>
“`
3、在模板文件中调用自定义标签:
在模板文件中插入以下代码来调用自定义标签:
“`html
{dede:get_articles_by_keyword/}
“`
4、保存并更新缓存:同样地,编辑完成后保存模板文件,更新系统缓存。
相关问答FAQs
问:如何在DedeCMS中调用多个关键词的文章?
答:要调用包含多个关键词的文章,可以将SQL查询中的LIKE
条件进行扩展,假设有两个关键词“关键词1”和“关键词2”,可以这样写:
{dede:sql name='myquery'} SELECT * FROM dede_archives WHERE title LIKE '%关键词1%' OR title LIKE '%关键词2%' OR introtext LIKE '%关键词1%' OR introtext LIKE '%关键词2%' {/dede:sql}
或者在自定义标签中进行相应修改:
$keyword1 = "关键词1";
$keyword2 = "关键词2";
$row = $dsql>GetOne("SELECT * FROM#@__archives
WHERE title LIKE '%$keyword1%' OR title LIKE '%$keyword2%' OR introtext LIKE '%$keyword1%' OR introtext LIKE '%$keyword2%' ");
问:如何限制调用的文章数量?
答:可以在{dede:list}
标签中使用pagesize
属性来控制每页显示的文章数量,要显示5篇文章,可以这样写:
{dede:list pagesize='5'} [field:title/] {/dede:list}
或者在自定义标签的SQL查询中加入LIMIT
子句来限制返回结果的数量:
$row = $dsql>GetOne("SELECT * FROM#@__archives
WHERE title LIKE '%$keyword%' or introtext LIKE '%$keyword%' LIMIT 5");
标签名称 | 描述 | 示例代码 | |
{dede:arclist keyword='关键词'} | 根据关键词搜索文章列表 | {dede:arclist keyword='编程'} | |
{dede:arclist keyword='关键词' titlelen='数字'} | 根据关键词搜索文章列表,并限制标题长度 | {dede:arclist keyword='编程' titlelen='20'} | |
{dede:arclist keyword='关键词' typeid='数字'} | 根据关键词和指定分类ID搜索文章列表 | {dede:arclist keyword='编程' typeid='1'} | |
{dede:arclist keyword='关键词' typeid='数字' row='数字'} | 根据关键词和指定分类ID搜索文章列表,并限制显示数量 | {dede:arclist keyword='编程' typeid='1' row='10'} | |
{dede:arclist keyword='关键词' typeid='数字' row='数字' pagesize='数字'} | 根据关键词和指定分类ID搜索文章列表,并限制显示数量和每页显示数量 | {dede:arclist keyword='编程' typeid='1' row='10' pagesize='2'} | |
{dede:arclist keyword='关键词' typeid='数字' row='数字' pagesize='数字' pagelen='数字'} | 根据关键词和指定分类ID搜索文章列表,并限制显示数量、每页显示数量和页码长度 | {dede:arclist keyword='编程' typeid='1' row='10' pagesize='2' pagelen='2'} | |
{dede:arclist keyword='关键词' typeid='数字' row='数字' pagesize='数字' pagelen='数字' orderway='asc | desc'} | 根据关键词和指定分类ID搜索文章列表,并限制显示数量、每页显示数量、页码长度和排序方式 | {dede:arclist keyword='编程' typeid='1' row='10' pagesize='2' pagelen='2' orderway='desc'} |
最新评论
本站CDN与莫名CDN同款、亚太CDN、速度还不错,值得推荐。
感谢推荐我们公司产品、有什么活动会第一时间公布!
我在用这类站群服务器、还可以. 用很多年了。