2017-03-11 64 views
0

我想在Drupal 8中創建一個簡單的模塊,它看起來像Drupal 7中真正簡單的東西現在令人難以置信地變得複雜。它可以與StackOverflow的和谷歌的幫助下完成的,然而,一個例子:OOP真的有幫助嗎?

從節點獲取字段值是這樣的:

'name' => $node->get('title')->getValue(), 
'body' => $node->get('body')->getValue(), 
'image' => file_create_url($node->field_fotografia->entity->getFileUri()), 

爲什麼正從標題和正文像場不同的方式嗎?我如何知道使用什麼方式,以後如果有其他方式可用於其他類型的領域,我將如何知道?

回答

0

的邏輯很簡單

$node->get('body')->getValue(); 

是指:獲得場的 「身體」

D7相當於是

$node['body'][$language][$index]['value]; 

這是straigh向前

現在的屬性值其他例子

$node->field_fotografia->entity->getFileUri() 

意味着:獲取存儲在字段「field_fotografia」中的實體的屬性uri,因爲圖像不是屬性值而是單獨的實體;實際上我相信$ node-> get('field_fotografia') - > getValue()返回有意義的圖像ID。相同的模型適用於所有實體引用(多字段,段落,其他節點等)。