用Views用多之後,突然覺得有點用過頭了。
想問問大家的看法。也就是要如何用Views做出以下的呈現方式?
第一篇 標題(頭條)
[大圖]TEASER....
------------------
第二篇 標題
[小圖]teaser...
第三篇 標題
[小圖]teaser...
第四篇 標題
[小圖]teaser...
-----------------
.第五篇 標題
.第六篇 標題
.第七篇 標題
也就是第一篇是顯示大圖、版面佔比較大,
第2~4篇是顯示小圖(用imagecache)和teaser,
第5篇之後就只有標題。
也就是他是同一個Views篩選出來的東西,
但會因為順序而改變顯示的樣式。不知要如何做到這樣呢?
像這個圖這樣
Re: 用Views製作多樣顯示方式?
Views 設定就不說了, 就是列出你要的node
Views theme時
if (第一篇) { print 大圖}
if (2, 3, 4) {print 標題 / teaser}
if (5) {print 小圖 .... }
Re: 用Views製作多樣顯示方式?
謝謝你的提示,我弄出來了。
步驟如下:
1.安裝Views Custom Field
2.製作一個View,新增Custom Field的Rownumber
3.theme: views-view-fields--viewname.tpl.php
裡面寫
<?php
if($fields['rownumber']->content==1){
print $fields['field_image']->content;
print $fields['title']->content;
print $fields['teaser']->content;
}
if($fields['rownumber']->content>1&&$fields['rownumber']->content<6){
print $fields['title']->content;
}
?>
我不太會PHP,不知這樣的if正不正確?不知是不是要用elseif?
Re: 用Views製作多樣顯示方式?
也沒有太必要使用elseif
為整潔易看, 一般這樣寫:
<?php if ($title): ?>
TITLE
<?php elseif ($strong): ?>
STRONG
<?php else: ?>
TEXT
<?php endif; ?>
或許有人告訴你可以將多行的PHP合并,
但我個人建議像你這樣分行寫才對 (在THEME TPL中), 這樣更易看, 上下移動或增加HTML亦方便
Re: 用Views製作多樣顯示方式?
如果是我,我會這樣寫:
<?php
$_輸出 = '';
if ($title) {
$_輸出 = '
TITLE
';
} else if ($strong) {
$_輸出 = 'STRONG';
} else {
$_輸出 = 'TEXT';
}
print $_輸出;
?>
Re: 用Views製作多樣顯示方式?
呵呵, 在模版中不建議將 PHP + HTML 混合寫在一起
在團體合作中,PHP / HTML 分離更清楚,易容易配合
不過個人喜愛 / 團隊習慣亦很重要
Re: 用Views製作多樣顯示方式?
看了一下 Rownumber好像是d6版的Views Custom Field才有的功能
如果d5有什麼方法嗎
謝謝