今天一天的时间都折腾在这上面了,先上一张图展示下效果:
演示网站:小熙博客。
一个文章列表,两个展示形式,一个正常的文章列表,一个是类似于微博/微语的展现形式。
很早之前就有这种想法了,有一天心血来潮准备弄,一开始是准备用css做的,两个展现形式的html的代码是一样的,用css做出不一样的效果来,怎么区分呢?很简单,div属性为post+栏目id,栏目1是正常模式,栏目2是微博模式。
思路确定好了开搞,结果很快发现这样很不爽,实现是可以实现,就是html代码太多浪费的,而且css也不好写,搞了一下算了代码全删除了。
最后折腾成功的代码如下:
{foreach $articles as $article} {if $article.IsTop} {template:post-istop} {elseif $article.Category.ID=="1"} {template:shuoshuo} {else} {template:post-multi} {/if} {/foreach}
这个代码的意思是判断栏目的id=1则在文章列表启用另一种微语/微博类型的界面。在主题模板文件夹里面新建一个“shuoshuo.php”的模板文件,将上面代码中的id=1中的1修改成你网站微语/微博栏目的栏目id即可了。
微语/微博的界面则在shuoshuo.php里面去定义。