這里給出不需要修改程序,只修改模板的方法。舉例,下面的標題列表,最長的標題50字節,只想顯示30字節,模板代碼如下:
<ul>
{dede:arclist titlelen='50' row='10'}
<li><a title="[field:title /]" href="[field:filename /]">[field:title function=' ( strlen("@me")>30 ? cn_substr("@me",30)."…" : "@me" ) ' /]</a></li>
{/dede:arclist}
</ul>
很明顯,解決問題的關鍵在于用 [field:title function=' ( strlen("@me")>30 ? cn_substr("@me",30)."…" : "@me" ) ' /] 代替了原來的 [field:title /] ,在輸出標題時多了一個判斷的過程,先判斷標題是否大于30字節,如果大于則只輸出30字節的長度,并加上省略號。而title=" [field:title /]" 則不受影響,鼠標移上去時顯示標題的全部內容。