Views PHP

Drupal 7能夠方便在views執行php的模組  https://www.drupal.org/project/views_php 

 顯示某個欄位內容 : field_dow  

 <?php

// 假設 $data 是你已經從資料庫或其他來源獲取的資料

$field_dow = $data->_field_data['nid']['entity']->field_dow['und'];

// 提取 [field_dow] 內的值

$dow_values = array_map(function($item) {

 return $item['value'];

}, $field_dow);

// 印出結果

echo implode(', ', $dow_values);

?> 

 field_dow 的值為 1 ～ 7，接下來轉換成 一 ～ 日（星期） 

 <?php

// 假設 $data 是你已經從資料庫或其他來源獲取的資料

$field_dow = $data->_field_data['nid']['entity']->field_dow['und'];

// 數字對應的星期轉換表

$weekdays = [

 1 => '一',

 2 => '二',

 3 => '三',

 4 => '四',

 5 => '五',

 6 => '六',

 7 => '日'

];

// 提取 [field_dow] 內的值並轉換成星期

$dow_names = array_map(function($item) use ($weekdays) {

 return $weekdays[$item['value']];

}, $field_dow);

// 印出結果

echo implode(', ', $dow_names);

?> 

 我的站有一個功能是在撈夜市的的時間，例如今天是星期五，他就會只顯示星期五的夜市 

 使用  Views Day of Week (views_dow) 達成的，但由於他預出來的值是英文，不動原始碼的情況，就用這個作法去處理