content
yapılandırılmış biçimlendiricileri temel alan oluşturma dizilerini içerir.
Gerçek değerlere erişmek istiyorsanız, onlara varlık nesnesi üzerinden erişmek istersiniz. Örneğin, bu zaten şablonunuz tarafından kullanılabilir node
. Sizin durumunuz için, biraz özeldir, çünkü block_content, blok şablonunda kendi şablonu olmadan işlenir, bu nedenle bunu kendiniz yourtheme_preprocess_block($variables)
böyle bir şekilde sunmanız gerekir :
if (isset($variables['elements']['content']['#block_content'])) {
$variables['block_content'] = $variables['elements']['content']['#block_content'];
}
Ardından, bir alan değerine ile erişebilirsiniz block_content.field_name.property
. Yani senin durumunda block_content.field_align.value
. Özellik value
çoğu alan türü içindir, başvurular target_id
için kimlik veya entity
başvurulan varlık nesnesi için kullanabilirsiniz. Evet, bununla ilgili alanlara doğrudan erişebilirsiniz, ancak her zaman bir başvurunun var olup olmadığını kontrol ettiğinizden emin olun, aksi takdirde ölümcül hatalar veya istisnalarla karşılaşabilirsiniz. Örneğin bir terim referansının etiketine erişmek için, etikete şu şekilde erişebilirsiniz block_content.field_tags.entity.name.value
.
Alan deltasını belirtmezseniz, varsayılan olarak birincisi olur. Farklı bir deltaya erişmek istiyorsanız, entity.field_name.1.value
vb. Kullanabilirsiniz . Bunların üzerinde de döngü yapabilirsiniz.
Tüm bunlar doğrudan PHP $block_content->field_tags->entity->name->value
ile eşleşir , ayrıca önişlemede ve block_content'in bulunduğu diğer yerlerde de yapabilirsiniz.