如何显示产品模板中的商店字段?
How to display store fields from the product template?
我有一个 Drupal 8.7 站点和 Drupal Commerce 2.14 模块
在我的商店模板中显示字段 field_professionnel_cgv
我使用此代码 TWIG :
{{ store.field_professionnel_cgv }}
如何在我的产品模板中显示该字段。
您可以将 mymodule_preprocess_commerce_product()
钩子函数添加到您的模块中,并在该函数中获取存储实体并使用其中的数据设置 twig 变量,以便它在您的模板中可用。
查看原始函数的外观:
/modules/contrib/commerce/modules/product/commerce_product.模块
function template_preprocess_commerce_product(array &$variables) {
/** @var Drupal\commerce_product\Entity\ProductInterface $product */
$product = $variables['elements']['#commerce_product'];
$variables['product_entity'] = $product;
$variables['product_url'] = $product->isNew() ? '' : $product->toUrl();
$variables['product'] = [];
foreach (Element::children($variables['elements']) as $key) {
$variables['product'][$key] = $variables['elements'][$key];
}
}
因此,您必须像此处那样获取存储对象并分配 twig 变量。
我有一个 Drupal 8.7 站点和 Drupal Commerce 2.14 模块
在我的商店模板中显示字段 field_professionnel_cgv
我使用此代码 TWIG :
{{ store.field_professionnel_cgv }}
如何在我的产品模板中显示该字段。
您可以将 mymodule_preprocess_commerce_product()
钩子函数添加到您的模块中,并在该函数中获取存储实体并使用其中的数据设置 twig 变量,以便它在您的模板中可用。
查看原始函数的外观: /modules/contrib/commerce/modules/product/commerce_product.模块
function template_preprocess_commerce_product(array &$variables) {
/** @var Drupal\commerce_product\Entity\ProductInterface $product */
$product = $variables['elements']['#commerce_product'];
$variables['product_entity'] = $product;
$variables['product_url'] = $product->isNew() ? '' : $product->toUrl();
$variables['product'] = [];
foreach (Element::children($variables['elements']) as $key) {
$variables['product'][$key] = $variables['elements'][$key];
}
}
因此,您必须像此处那样获取存储对象并分配 twig 变量。