From 8e157bac5a3fc8a8c41fa78b5e23fd94006e6600 Mon Sep 17 00:00:00 2001 From: Matias Griese Date: Wed, 23 Dec 2020 21:07:23 +0200 Subject: [PATCH] Fixed taxonomy field not listing existing options in Flex Pages --- CHANGELOG.md | 1 + .../templates/forms/fields/taxonomy/taxonomy.html.twig | 7 ++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index dea6a7bc..71e93f32 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,7 @@ 1. [](#bugfix) * Fixed missed highlight on the selected page in Parents field * Fixed notifications that would not be remembered as hidden + * Fixed taxonomy field not listing existing options in Flex Pages * Fixed taxonomy field not working outside pages # v1.10.0-rc.20 diff --git a/themes/grav/templates/forms/fields/taxonomy/taxonomy.html.twig b/themes/grav/templates/forms/fields/taxonomy/taxonomy.html.twig index ebc96166..d6f267ca 100644 --- a/themes/grav/templates/forms/fields/taxonomy/taxonomy.html.twig +++ b/themes/grav/templates/forms/fields/taxonomy/taxonomy.html.twig @@ -1,6 +1,7 @@ {% extends "forms/field.html.twig" %} {% block field %} +{% set object = form.object %} {% set taxonomies = taxonomies ?? field.taxonomies ?? admin.data('config/site').taxonomies ?? [] %} {% set parentname = field.name %} {% set options = field.options %} @@ -9,7 +10,11 @@ {% for name in taxonomies %} {% set field_name = parentname ~ '.' ~ name %} {% set value = (form.value(field_name) ?? data.value(field_name) ?? default[name] ?? [])|array %} - {% set sub_taxonomies = (attribute(grav.taxonomy.taxonomy, name) ?? [])|keys %} + {% if object %} + {% set sub_taxonomies = object.getFlexDirectory().getIndex().getDistinctValues(field_name) %} + {% else %} + {% set sub_taxonomies = (attribute(grav.taxonomy.taxonomy, name) ?? [])|keys %} + {% endif %} {% set list = (options[name] ?? [])|merge(sub_taxonomies)|merge(value)|array_unique %} {% set field = {