织梦(dedecms)用SQL获取文章静态地址
在
织梦
(dedecms)系统里面,可以自由使用SQL语句来配合织梦标签进行更多的个性化调用。基本参照格式为:{dede:sql sql='select 字段 From 表名称 where 条件语句'} [field:字段名/] {/dede:sql}
由上面这种基本格式,我们就可以基本转换出一条调用文档列表的调用标签了,代码为:
{dede:sql sql='select * From dede_archives limit 10'} < a href="/plus/view.php?aid=[field:id/]">[field:title/]</a> {/dede:sql}
大家看到了上面的文档链接的底层模板地址的是动态的,那么我们要如何来进行转换,让它链接到静态地址呢,这里我们只需要对[field:id/]进行一下转换,转换后的完整代码为:
{dede:sql sql="SELECT * FROM dede_archives limit 10"} <li>·<a href='
[field:id runphp='yes'] $id=@me;@me='';$url=GetOneArchive($id);@me=$url['arcurl'];[/field:id]'>[field:title/]</a>
</li> {/dede:sql}
如果是dede:php标签,也差不多,主要是运用GetOneArchive这个方法,例如:
{dede:php} $dsql->SetQuery("SELECT * FROM dede_archives limit 10"); $dsql->Execute(); while($arr = $dsql->getArray()){ $arcurl = GetOneArchive($arr['aid']); echo '<li>·<a href=“'.$arcurl['arcurl'].'”>[field:title/]</a></li>'; } {/dede:php}