最近在修改Drupal網站廣告投放的時候遇到需要在Views頁面的标題、描述文字下方插入廣告代碼,以前的做法有兩種:一是在Views的Header裡面插入廣告代碼;二是加一個帶有廣告代碼的Block,讓其放置在Views頁面的标題下。
當Views數量不多,或者在module中容易集中修改的時候,就用上面兩種辦法之一比較友善,但如果需要手工修改的Views太多就麻煩了,我今天嘗試了一下Views的模闆檔案修改,是可以很友善實作的,下面就來介紹一下。
去年10月我寫過一篇《Drupal網站用Views模闆來替代Views PHP修改字段内容》,當時是需要使用views-view-field.tpl.php 這個模闆來修改Views中某個字段的顯示,也非常友善,解決了一個疑難問題。
今天找了Drupal 7 Views 3的官方資料《Views template files》,發現Views的顯示模闆非常靈活強大,可以修改的模闆很多、很細,列出如下:
sites/all/modules/views/theme/
theme.inc
views-view-field.tpl.php
views-view-summary.tpl.php
views-exposed-form.tpl.php
views-view-grid.tpl.php
views-view-summary-unformatted.tpl.php
views-more.tpl.php
views-view-grouping.tpl.php
views-view-table.tpl.php
views-ui-display-tab-bucket.tpl.php
views-view-list.tpl.php
views-view.tpl.php
views-ui-display-tab-setting.tpl.php
views-view-row-comment.tpl.php
views-view-unformatted.tpl.php
views-ui-edit-view.tpl.php
views-view-row-rss.tpl.php
views-view-fields.tpl.php
views-view-rss.tpl.php
<?php ?>
其中<?php print ad_code(); ?>就是插入廣告代碼在header之後,例子頁面“贊清單”、“書簽清單” ,我的部落格中可以全部Views都加入(實際測試對Json資料Views的輸出無影響),其它站還可以在模闆檔案中添加一些判斷來實作指定的要求。