一、数据库通过自定义字段调取文章
1.常见调取方式
{dede:sql sql="SELECT * FROM dede_archives WHERE title LIKE '%~shorttitle~%'"}
<li><a href='[field:id runphp='yes'] $id=@me;@me='';$url=GetOneArchive($id);@me=$url['arcurl'];[/field:id]' title="[field:title/]" target="_blank">[field:title function=cn_substr(@me,40,0)/]</a></li>
{/dede:sql}
说明:
1.dede_archives 代表你的数据库表前缀
2. title 代码你要调取的数据库里面信息的自动 title 是检查标题
3. like 进行匹配
4.%正则匹配% 匹配%中间的文字 是否有一样的 有就调取
5.~~ 中间的为你的自定义字段 自己设置
2.多个自定义字段调取文章
{dede:sql sql="SELECT * FROM dede_archives WHERE title LIKE '%~ziduan1~%' or title LIKE '%~ziduan2~%' or title LIKE '%~ziduan3~%' order by click desc limit 15 offset 1"}
说明:
1.order by click 按点击排序
2.desc 降序 asc 正序
3.limit 15 调用15条
3.自定义字段指定id栏目随机调取文章
{dede:sql sql="SELECT * FROM dede_archives WHERE typeid=4 and title LIKE '%~diaoqu2~%' or title not LIKE '%~ziduan3~%' order by rand() limit 8 offset 1"}
说明:
1.typeid=4 指定id栏目
2.order by rand() 随机调用
3.not 排除标题带ziduan3文章
4.channelid='17' 指定id模型
4.sql排除当前文章调取
{dede:sql sql="SELECT * FROM dede_archives WHERE title LIKE '%~变量~%' and title != '~title~' order by click desc limit 9 offset 0"}
说明:
排除标签是 and title != '~title~' 解释,数据库dede_archives表格检索title不等于当前标题的所有包含shorttitle的url
变量如果是汉字,去掉~ ~ 如果是函数变量就必须加上
二、tag通过数据库调取文章
{dede:sql sql="SELECT * FROM dede_archives WHERE title like CONCAT('%',(SELECT tag FROM dede_taglist WHERE aid=~id~),'%')"}
说明:先查出tag ,再根据tag 查标题里含tag的文章
转载请注明:本文《织梦dede:sql调取文章方法大全》链接: http://seo.leidu.net/post-393.html
百度已收录
发表评论: