dedecms怎么随机调用相同关键词的文章!
我觉得你这个问题有点BC
第一,如果你的文章是手动添加而不是采集的话,你在发表文章的时候可以顺便添加一个“推荐”(flag='c')的属性,然后在“系统”——“系统基本参数”——“性能选项 ”里面这们设置:(如图)
然后你在调用文章{dede:arclist:typeid='1' row='10' (等等)}的时候加上这个 flag='c', 这样做的效果是,你一发表完文章了,系统就会马上自动更新所有相关的栏目和内容页,这样就达到了“动态更新”的效果了,没必要另外去搞……
第二,如果你的是搞论坛或者社区之类的,那没就必要用织梦了。还不如用Dicuz!或者其它的专门做论坛用的CMS了……
试试这个代码{dede:channelartlist row=6}
<dl>
<dt><a href='{dede:field name='typeurl'/}'>{dede:field name='typename'/}</a></dt>
<dd>
{dede:arclist titlelen='42' row='10'} <ul class='autod'>
<li><a href="[field:arcurl /]">[field:title /]</a></li>
<li>([field:pubdate function="MyDate('m-d',@me)"/])</li>
</ul>
{/dede:arclist}
</dl>
{/dede:channelartlist}
你的不管用是没有调出文章还是调出来的文章是不是随机的,建议尝试下这个
{dede:article row='4' orderby='rand’ titlelen='42' keyword='xxx'}可以用代码二次开发,我给你讲一下我的实现方法。
首先要添加一个作者栏目,然后在栏目里面添加作者文档,定义一个模板,模板中用{dede:sql}调用这个作者的所有小说即可。
代码如下:
{dede:sql sql="Select id,title,litpic,writer,description from dede_archives where writer=~title~ order by pubdate DESC"}<li><a href="[field:id runphp='yes'] $id=@me;@me='';$url=GetOneArchive($id);@me=$url['arcurl'];[/field:id] "><img src=[field:litpic/] width="114px" height="160px"/><h2>[field:title/] - [field:writer/]</h2><p>[field:description/]</p></a></li>{/dede:sql}然后在小说更新的时候添加个自定义字段,作者链接,模板的作者处调用该字段即可,如果没有作者,则留空。
代码如下:
<a href="{dede:fieldofficialdemo runphp='yes'}if(@me =='http://') @me='#';else @me=@me;{/dede:fieldofficialdemo}">{dede:fieldwriter/}</a>这样的好处是符合逻辑,并且作者页面可以生成静态,坏处是工作量变大,如果你图简单,可以自己做个authorphp页面,接受传参,里面直接按照传参搜索数据库就可以了,然后小说模板中作者处调用如下代码:
authorphpkey=[fieldwriter /]这样也可以啊。
0条评论