POST TIME:2017-11-13 00:58
在Dedecms系統(tǒng)中,文章摘要(能夠經(jīng)過infolen或description相關(guān)標(biāo)簽調(diào)用)被設(shè)置了字?jǐn)?shù)上限為250字符,設(shè)置上限的主要目的是減少數(shù)據(jù)庫的冗余,保證網(wǎng)站良好的性能。因而,假如對簡介內(nèi)容不設(shè)置上限顯然不合理,但是假如能夠自在控制這一上限,那么將對網(wǎng)頁內(nèi)容布局帶來積極作用。在網(wǎng)頁設(shè)計過程中,常常需求在頻道列表頁面調(diào)用到文章摘要,假如能夠有效控制文章摘要的字?jǐn)?shù),那么就能夠使得頁面規(guī)劃很靈敏。
在Dedecms中,在列表頁調(diào)用文章摘要的辦法主要有:
第 1、2種辦法是直接調(diào)用文章摘要,在調(diào)用的字?jǐn)?shù)問題上,當(dāng)運用[field:info /]時,能夠在{dede:arclist infolen=’ ‘ }{/dede:arclist}中,設(shè)置調(diào)用摘要的字符數(shù)(最高可設(shè)置為系統(tǒng)設(shè)置的250);假如運用[field:description /],則直接運用后臺設(shè)置的摘要字符上限。顯然,這兩種方式都很被動,靈敏性太差。
第3、4種辦法經(jīng)過function函數(shù)完成了對文章摘要顯現(xiàn)字符的靈敏調(diào)整。當(dāng)然,在沒有修正文章摘要內(nèi)容字符上限時,這4個辦法的差別并不大。但是,下面我們來說如何修正這一上限值,就能夠表現(xiàn)出 [field:description function=”cn_substr(@me,字符數(shù))”/]這一方式的重要性。
在Dedecms中,與文章摘要相關(guān)的php文件主要有:
在 add頁面,有一句話是:“$description = cn_substrR($description,$cfg_auot_description); ”,這句話完成了[field:description function=”cn_substr(@me,字符數(shù))”/]這一功用。由于這一語句的確有利于頁面規(guī)劃,因而我們在實驗中沒有修正。
在edit頁面,有一句話是:“$description = cn_substrR($description,250); ”,這句話中呈現(xiàn)了一個熟習(xí)的字符數(shù)“250”,這就是系統(tǒng)設(shè)置的文章摘要字符數(shù)的上限值。 假如是gbk編碼則顯現(xiàn)出來的就是125個字。假如是utf-8編碼則是81個字。顯然,我們要打破文章摘要字符數(shù)上限,肯定得拿它開刀了。是的,這里修改“250”為其他值即可,例如“500”。這里不引薦設(shè)置得過高,一個是在列表頁沒必要展現(xiàn)太多內(nèi)容(展現(xiàn)太多內(nèi)容不如直接用body了),另一個是避免數(shù)據(jù)庫產(chǎn)生冗余。
完成上面的修正還不夠,還需求修正article_description_main.php
在 article_description_main.php頁面,找到“if($dsize>250) $dsize = 250;”語句,這里限制了在后臺自動獲取摘要的字符數(shù)。把這里的“250”修正為“500”即可,也就是和之前修正的字符數(shù)分歧即可。(假如你確認(rèn)你的每一條文章都是手動添加,手動完成摘要獲取就不需求修正這個文件了。自動摘要獲取主要還是給大量文章和采集準(zhǔn)備的。)
最后,登錄后臺,在系統(tǒng)-系統(tǒng)根本參數(shù)-其它選項中,自動摘要長度,改成500即可,也就是和之前修正的字符數(shù)分歧即可。
完成上述修正后,我們再到頻道列表頁,經(jīng)過標(biāo)簽調(diào)用即可,示例標(biāo)簽如下: