2012-12-30 85 views
2

我在由我的描述(文本)字段填入一個Drupal 7內容類型計算字段:如何訪問Drupal 7中的標題(Node模塊元素)字段?

$entity_field[0]['value'] = $entity->field_desciption['und'][0]['value']; 

它工作正常。我想要創建另一個由標題(節點模塊元素)字段填充的計算字段。

我嘗試了以下幾行,但它們不起作用。

$entity_field[0]['value'] = $entity->title['und'][0]['value']; 
$entity_field[0]['value'] = $node->title; 

我怎樣才能做到這一點?

回答

2

節點標題不是字段;因此,使用$entity->title['und'][0]['value']將不起作用。你應該使用的是$entity->title

備註:要得到一個字段的值,應該使用field_get_items(),該字段負責爲該字段設置的語言,而不一定是LANGUAGE_NONE

0

您應該看看如何將數組/對象打印到頁面以查看您正在使用的內容。

嘗試增加print_r($entity);print_r($node);到實體或節點出現,隨後出現exit;

然後,您可以右鍵單擊頁面,並點擊「查看頁面源代碼」,以顯示在一個結構化的格式輸出的頁面。使用它來查看變量名稱,對象/數組類型和層次結構,然後正確地編寫完整的變量代碼。

print_r($node); 
exit; 

我會想象它應該是$節點 - >標題雖然...

1

如果它是一個節點模塊元件時,應該通過$entity->title是直接訪問。 嘗試使用print_r($entity); die;來獲取實體的所有元素。希望這對你有所幫助。

+1

我強烈建議安裝devel模塊並使用 dpm($ variable_you_want_to_inspect); 它使用優秀的krumo庫來顯示數組,因此它變得更容易檢查。 – D34dman