Php Drupal 8:从细枝模板中禁用的字段获取值

Php Drupal 8:从细枝模板中禁用的字段获取值,php,drupal,twig,drupal-8,paragraphs,Php,Drupal,Twig,Drupal 8,Paragraphs,我使用段落模块创建组件,然后创建内容类型并添加段落作为参考字段 段落的形式有一个字段(列表),内容创建者可以在其中为div的背景色选择颜色名称。每个段落有3个值(太平洋蓝、烟熏白、白色) 但是,我尝试获取所选值,而不在站点上显示它 只要字段未被禁用,我就可以使用此代码获取值,并添加类以使用正确的背景色设置div的样式: <div class="c14a {{ content.group_wrap.field_color_backgrou d.0["#markup"] }}"> &

我使用段落模块创建组件,然后创建内容类型并添加段落作为参考字段

段落的形式有一个字段(列表),内容创建者可以在其中为div的背景色选择颜色名称。每个段落有3个值(太平洋蓝、烟熏白、白色)

但是,我尝试获取所选值,而不在站点上显示它

只要字段未被禁用,我就可以使用此代码获取值,并添加类以使用正确的背景色设置div的样式:

<div class="c14a {{ content.group_wrap.field_color_backgrou d.0["#markup"] }}">
  <div{{ attributes.addClass(classes) }}>
      {{ content }}
  </div>
</div>

{{content}}
那么如何获取在“管理显示”中禁用的字段的值呢


Thx…

我刚刚实现了与我正在构建的站点类似的功能。在我的例子中,内容创建者可以从下拉列表中进行选择,并根据选择将特定类应用于div

我的问题与此类似,我想提取字段的原始值,而不在前端显示字段。我遇到的问题是,禁用该字段会阻止我获取细枝模板中的原始字段值

function HOOK_preprocess_YOUR_FIELD(&$variables)
{
    unset($variables['items']);
}
我提出的解决方案是使用一个预处理函数,而不是禁用该字段,它允许我从前端删除该字段,同时仍然允许我访问模板中的字段值

function HOOK_preprocess_YOUR_FIELD(&$variables)
{
    unset($variables['items']);
}

希望此答案对其他人有所帮助

为什么要禁用显示值?如果用户(在添加内容时)从列表中选择特定的背景颜色,则不会。我想在twig模板文件中捕获它,并将该类添加到div中(请参见类c14a),您不能使用jquery或javascript来执行吗?