dashan 提交于
總有很多原因讓你不喜歡在 Drupal Block 中編寫 PHP 代碼。那如何是好?當然可以自建一個模組處理。但如果對模組認識不多,其實也可以透過版型來解決的。不同方法各有優點,自我按情況決定吧。
透過版型修改 BLOCK 的 PHP 內容跟寫版型是完全沒有分別的,看看以下示範代碼:
首先按一般方式建立一個 BLOCK,然後掛在喜歡的區域中,再編寫『版型下的 block.tpl.php』
<?php print $block->content // 原本的 BLOCK 內容 ?>
<?php print ' BLOCK ID:' . $block->bid . ''; // 取得 BLCOK ID,給下面使用 ?>
<?php if($block->bid == '10'): // 判斷是否顯示 ?>
<?php print '改變由這裏開始,編寫您自定的 PHP 代碼'; ?>
<?php endif; ?>
執行效果:
PHP 代碼簡潔到沒法再解釋。
如果只有一個 BLOCK,可以依 Drupal 版型規則建一個獨立 .tpl 檔案處理,這更可省略判斷是否顯示的代碼。我們可以建立 『block-block-1.tpl.php 』,然後可以任意修改。
值得注意的是:這裏的 "1" 跟上面例子的是有分別,如何找呢?
可以在 BLOCK 管理頁面看路徑:
也可以使用 PHP 列印出來:
<?php
print $block->delta;
?>
透過 Devel Themer 看得更詳細:
當然透過 HTML 也可以的,不說了。
- 登录以发表评论