本文的重点是详细介绍dedecms如何使用sql语句调用文章的静态数据连接地址,其中涉及到SQL语句的应用和调用文章的方法。很有现实意义,朋友们一定要参考。
本文通过案例描述了dedecms使用sql语句调用文章静态数据连接地址的方式。分享给大家参考。深入分析以下内容:
很多情况下,人们在织梦后台调用数据信息时,内置的logo很多情况下无法调用我们想要的数据信息,只好自己写sql来调用。之前有个难题两天没解决,后来看到下面这篇文章,解决了问题。
Dedecms用于建立一个网站已经有五年多的时间了,在这期间建立了很多网站。我热烈欢迎所有的朋友和我谈一谈建设网站的事情。
填写:
发表完这篇文章,意外发现自己在dedecms的GetOneArchive。如果我发送一个文本文档id,我可以获得文章连接。其实这个号返回的文章信息内容数组包括:连接地址、标题、文章ID、频道ID。这里只需要商品连接地址。实际代码如下:
复制代码编码如下:{dede:SQLSQL="select*fromdede_archivesa其中a.titlelike“%智萌cms建网站%”和a.arcrank>;-1限制8"}
<;</code>;李><</code>;atitle="[field:title/]"href="[field:idrunPHP='yes']$URL=GetOneArchive(@me);@me=$URL['arcurl'];[/field:id]">;[field:titlerunphp='yes']@me=cn_substr(@me,50);[/field:title]<;/<;/code>;a></<;/code>;李>
{/dede:sql}
如果你只是要调用文章的链接地址,这种方式无非是一种方便的方式。文章下一部分详述的方式比较复杂,但是如果你既想调用文章的链接地址,又想调用列名,为什么不试试呢。
为什么要应用dede:php,dede:sql?
在一些非常复杂的调用中使用dede:arclistlogo很难解决难题,比如调用一个vip会员发布的文章,通常是按照dede:sqllogo来做的。
今天我经常说调用是唯一的,就是在首页用特定的关键词调用文章。其实这和dedecms的相关文章logo差不多。这里我们就分享两种方式。
Dede:sql标识调用特定关键字文章的静态数据地址。这里详细介绍一下dedecms官网上的dede:sql。
SqlID
功能:用SQL查看模板返回的内容。
应用领域:非扩展控制模块的所有模板。
(1)英语语法:{dede:sqlsql="在这里写sql语句"}底层模板{/dede:sql}
(2)特性:[1]sql详细的sql查看语句。
(3)底层模板:所有在SQL语句中找到的字段名都可以被[field:field/]调用。
好了,掌握了dede:sql标识后,就可以根据自己的要求编写sql语句了。在这里,我将用特定的关键词来调用一篇文章。sql语句如下:
复制以下代码:“select*fromDEDE_archivesawherea.arcrank>;-1和类似“%scripting%”的标题限制为8
语句分析:A.ARCRANK>:-1限制已批准文章的调用;如调用特定关键字的“%Scripting%”文章;限制8总共是8次呼叫。
然后我就开始写详细的logo和最低模板,如下:
1.先处理详细题目和分词问题:我申请了[field:titlerunPHP='yes']@me=cn_substr(@me,50);[/field:title]我坚信这种方法大家都经常用,这里就很少详细介绍了。之后很可能会专业地准备一篇文章详细介绍这种用法。50是截断长度。
2.处理dede:sql标记静态数据文章地址问题:这里比较麻烦。我也在网上转了一圈,得到的解决方案大多是href="/plus/view.php?Aid=[field:id/]”,显然不是我想要的。不是静态数据地址,其他地址也是arclist调用的静态数据地址。结果一篇文章有两个地址,一个静态数据,一个动态,显然对seo不友好。最好是按照自己瞎折腾,最后成功。
3.处理无法正确获取id的问题:之前没有注意到最低层模板无法获取正确的id是因为dede_arctype和dede_archives2两个表id字段相同,所以之前的select被改了,昵称被提高了。
dede:sql文章中静态数据连接地址的终极调用方式
复制以下代码:{dede:sqlSQL="select*fromDEDE_档案A、DEDE_arc类型其中a.typeid=t.id和A.titlelike“%生活小贴士%”和a.arcrank-1限制8"}
<;</code>;李><</code>;atitle="[field:title/]"href="[field:arrayrunphp='yes']@me=GetFileUrl(@me['id'],@me['typeid'],@me['title'],@me['ismake'],@me['arcrank'],@me['namerule'],@me['typedir'],@me['money']);[/field:array]">;[field:titlerunphp='yes']@me=cn_substr(@me,50);[/field:title]<;/<;/code>;a></<;/code>;李>
{/dede:sql}
反正最后达到了我想要的实际效果。然后,想想我希望dede:phplogo如何达到这个实际效果。其实方式和dede:sqllogo一样,所以我很少说什么。立即粘贴代码:
复制下面的代码。Setquery("selecta.idasaid,t.idastid,typeid,senddate,title,ismake,arcrank,namerule,typedirfromdede_archivesa,dede_arctype其中a.typeid=t.id和a.titlelike'%lifetips%'和a.arcrank。-1极限8”);
$dsql->;执行();
while($row=$dsql->;getarray()){
echo'<;</code>;李><</code>;atitle=“”。$row['title']。"href=""。GetFileUrl($row['aid'],$row['typeid'],$row['senddate'],$row['title'],$row['ismake'],$row['arcrank'],$row['namerule'],$row['typedir'],$row['money']。'">。cn_substr($row['title'],50)。'</<;/code>;a></<;/code>;李>;
}
{/dede:php}
期待以上对建设dedecms站的帮助。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)