[Drupal]改寫 Views 的結果

雖然Views本身已經提供滿多方便我們改寫輸出結果的方法了,

不過總是會有特殊的改寫無法完成,這時候就需要藉由 hook_views_pre_render(&$views) 這個 hook 函數來幫助我們達成目標。

如果只是要改寫一個欄位的輸出的話,作法類似

其中  

  • $views->name 可以取得這個 view 的機器名稱
  • $views->current_display 則可以取得目前所檢視的 view 的機器名稱,如block_1, page_1。
  • $view->attachment_before  可以讓我們放一些東西在 views的頁首
  • $view->attachment_after  可以讓我們放一些東西在 views的頁尾
  • $view->result 則可以修改輸出的內容
  • $view->field['field_name']->options 則用來進行如 改寫內容或連結等作業。