您在這裡

求救!有關biblio

astsj's 的頭像
astsj 在 2010-06-22 (二) 10:53 發表

小弟是drupal的新手
想請教有關於biblio模組
1.要如何客製查詢後的列表(如圖biblio List)?
我想將標題擺在作者的前面
要從哪個檔案下手?

2.要如何客製內容的部分(如圖biblio content)?
要從哪個檔案下手?
是建立node-biblio.tpl.php嗎?
但資料都包在$content
我想更改排版...
並要顯示圖片...

ps:如附圖,取自http://tpa.hss.nthu.edu.tw/

附加檔案大小
Image icon biblio List.JPG105.5 KB
Image icon biblio content.JPG74.5 KB

謝謝danny!!
@@我還是弄不出來...
有好多疑問......
在建立內容那裡new template新增一個template
然後在user帳號那裡怎麼設?
再來怎麼怎麼設計呈現方式?
如果我設了許多種內容類型(node type)
也要設計每個內容類型的呈現方式時
也是透過Custom Templates模組?

真抱歉,我上面的連結貼錯了。(我也順便改正上面的連結 )

content template -> http://drupal.org/project/contemplate
裝好后,到content management -> content types -> biblio -> template -> enable "affect body output" or teaser -> 到body variable 裏面 找到( $node->body) -> copy 這一段到上面 body template 裏面 , 替換掉 $body

建議你 coyp ( $node->body)后, 另外存在一個 file 裏面。 因爲你以後如果修改不滿意,還需要再還原的話,就將原來這一段重貼就行了。

所有的variable 都列出來了,接下來就隨便你玩。

謝謝danny
我還是不是很懂....
您指的是將 $node->body裡的那一串(如最下)貼到body template中再改嗎?
但是我希望是同樣的node type都能用相同的格式。
那我該怎麼做,寫程式去濾?
變數一個一個放到body template中?
另外,我的drupal在設定 node template時會出現"warning: Parameter 1 to theme_contemplate_field() expected to be a reference, value given in C:\xampp\htdocs\drupal\includes\theme.inc on line 656."的錯誤訊息,我真的有摸不著頭緒的fu。

$node->body

英文名稱: 
Chrysanthemum Wood, Champion Bauhinia
Academic name: 
Bauhinia championii (Benth.) Benth.
class name: 
蘇木科.........

但是我希望是同樣的node type都能用相同的格式。
那我該怎麼做,寫程式去濾?

Biblio 是一種content type. Content template 是用content type 來分, 每一個content type 就有一個template (story, page, biblio 有各自不同的設定). 我不懂你說的node type 是什麽,我估計你要的應該就是content type.

否則,node 已經是最小單位了,你該不會是每一個node, 就一個template 吧 (那你的site, 如果有100篇文章node,就有100种template. 管理起來, 恐怕很累人. )。

DIY contemplate, 需要懂一些 php html css. 你也可以disable content template 的 biblio 的body output, 直接到theme裏面建立node-biblio.tpl.php (copy node.tpl.php), 然後將content template 裏面的variable, 拷貝來用 (取代籠統的 $content)。 自己重新建立所有variable 的輸出。 雖然比較辛苦,但是你可以全權控制。

biblio module 的field 不是cck, 否則我會建議你用display suite, 簡單多了。

有一點我想你可能誤解了。content template $node->body 的顯示, 是使用一篇實際已經存在的node 做例子。並不是只針對一篇node, 所有在這裡的修改, 會影響到整個content type.

很感謝danny的解惑...
我了你的說明了...
我想做的就是將story, page...等node type的template。
也試過您說的方式,要自己再打上標題(日期、內容、圖片....)在程式中
但,我發現若要做配合切換語系時標題的部分.....(日期、內容、圖片)似乎就無法使用了。
有沒有方法解決?

加上 t function
print t('圖片標題');
這個string, 要先用另外一個語言顯示后,才會在string translation 的search 裏面找的到。