dedecms添加文章的时候,怎么让每个作者加上链接
在Dedecms系统中,
文章摘要(可以通过infolen或description相关标签调用)被设置了字数上限为250字符,设置上限的主要目的是减少数据库的冗余,保证网站良好的性能。因此,如果对简介内容不设置上限显然不合理,但是如果可以自由控制这一上限,那么将对网页内容布局带来积极作用。在网页设计过程中,往往需要在频道列表页面调用到文章摘要,如果可以有效控制文章摘要的字数,那么就可以使得页面布局很灵活。 在Dedecms中,在列表页调用文章摘要的方法主要有:
1:[field:info /]
2:[field:description /]
3:[field:info function="cn_substr(@me,字符数)"/]
4:[field:description function="cn_substr(@me,字符数)"/]
第1、2种方法是直接调用文章摘要,在调用的字数问题上,当使用[field:info /]时,可以在{dede:arclist infolen=' ' }{/dede:arclist}中,设置调用摘要的字符数(最高可设置为系统设置的250);如果使用[field:description /],则直接使用后台设置的摘要字符上限。显然,这两种方式都很被动,灵活性太差。
第3、4种方法通过function函数实现了对文章摘要显示字符的灵活调整。当然,在没有修改文章摘要内容字符上限时,这4个方法的差异并不大。但是,下面我们来说如何修改这一上限值,就可以体现出[field:description function="cn_substr(@me,字符数)"/]这一方式的重要性。
在Dedecms中,与文章摘要相关的php文件主要有:
/dede/archives_addphp
/dede/archives_editphp
/dede/article_addphp
/dede/article_editphp
/dede/article_description_mainphp
在add页面,有一句话是:“$description =
cn_substrR($description,$cfg_auot_description); ”,这句话实现了[field:description function="cn_substr(@me,字符数)"/]这一功能。因为这一语句确实有利于页面布局,因此我们在实验中没有修改。
在edit页面,有一句话是:“$description = cn_substrR($description,250); ”,这句话中出现了一个熟悉的字符数“250”,这就是系统设置的文章摘要字符数的上限值。 如果是gbk编码则显示出来的就是125个字。如果是utf-8编码则是81个字。显然,我们要突破文章摘要字符数上限,肯定得拿它开刀了。是的,这里修改“250”为其他值即可,例如“500”。
方法和详细的操作步骤如下:
1、第一步,打开织梦Dedecms的主界面,直接找到“增加顶级栏目”选项并选择跳转,见下图,转到下面的步骤。
2、第二步,执行完上面的操作之后,进入新对话框,根据实际情况进行设置,见下图,转到下面的步骤。
3、第三步,执行完上面的操作之后,请单击“确定”按钮,见下图,转到下面的步骤。
4、第四步,执行完上面的操作之后,可以调用当前栏目的文章列表,见下图。这样,就解决了这个问题了。
可以用代码二次开发,我给你讲一下我的实现方法。
首先要添加一个作者栏目,然后在栏目里面添加作者文档,定义一个模板,模板中用{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 /]这样也可以啊。
{dede:arclist typeid='' orderby='pubdate' titlelen=34 row=10}
<li><a target="_blank" href="[field:arcurl /]">[field:title/]</a></li>
{/dede:arclist}
orderby='pubdate' 按出版时间排列
orderby='' 表示排序方式,默认值是 senddate 按发布时间排列。
orderby='hot' 或 orderby='click' 表示按点击数排列
typeid='' 为空 表示调用当前栏目最新文章
楼主可以试试看看 行就给分吧 更多请关注百度空间:http://wwwbaiducom/p/疯子小组
这里肯定有啊 upload\dede\templets\article_addhtm
你下载下来后就按照这个目录找 绝对有 !!!要找不到 你可用百度hi发消息给我
templets/default/article_articlehtm 文章内容页
文章添加页:
dede/templets/article_addhtm 内容添加页(文章后台发表)模板
不知道你说的是不是这个意思!!
在后台设置:
方法1、系统---系统基本参数---性能选项---文章自动分页大小(单位: K): 设置文字的量就可以了。
方法2、还可以在后台发布文章的时候,用编辑器的分页标示 #p#副标题#e#
如图:
0条评论