Как добавить определенные значения в WP и с помощью ACF их потом выбирать в записи?

Ссылка скопирована
1 ответ

Здравствуйте, подскажите, как лучше реализовать.
Есть на произвольном типе записей характеристики, например цвета, которые добавляются изображения.
Как лучше и как можно реализовать, чтобы человек создал изначально список цветов и изображений к ним, а потом просто выбирал их в посте с помощью ACF?
Создавать отдельный тип записей, где их можно создавать и таким образом подтягивать?
Если например они ещё будут подразделяться на определенные типы?!
Или создавать какие-то дополнительные таксономии?

Дополнительно:

"Человек" - это кто? Какая роль? Пользователь сайта(гость), заказчик товара (или чего там), контент-менеджер, админ? Где этот выбор должен быть?
В чём вообще конечная задача?

  • Здравствуйте, а можете подробнее описать результат, который хотите получить? Да и сейчас непонятно, человек -- это пользователь (авторизован на сайте) или просто посетитель?
  • Нужно решить такую задачу?

    Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.

    Заказать помощь
    Лучший ответ
    1
    Стас DB Ответ

    Если есть заранее заданный список цветов с изображениями, а потом в записи нужно выбирать эти цвета, лучше не хранить их каждый раз руками в ACF. Нужен отдельный источник данных: таксономия или отдельный тип записей. Выбор зависит от того, насколько сложные у цветов данные.

    Если цвет — это просто название + картинка/иконка, удобно сделать таксономию colors и добавить к терминам ACF-поле изображения. Тогда редактор создаёт цвет один раз, а в записи выбирает нужные термины.

    Плюсы таксономии:

    • можно фильтровать записи по цветам;
    • можно выводить архивы;
    • легко выбирать несколько значений;
    • нет дублей названий.

    Если у цвета много полей: галерея, описание, связанная цена, тип, производитель, порядок, SEO-страница — лучше сделать CPT color и выбирать через ACF Relationship/Post Object.

    Если цвета подразделяются на типы, есть два варианта:

    • иерархическая таксономия: тип → цвет;
    • CPT «цвет» + отдельная таксономия «тип цвета».

    Для большинства каталогов достаточно таксономии. ACF-поле у термина выводится так:

    $terms = get_the_terms(get_the_ID(), 'colors');
    foreach ($terms as $term) {
        $image = get_field('image', $term->taxonomy . '_' . $term->term_id);
    }

    $terms = get_the_terms(get_the_ID(), 'colors'); foreach ($terms as $term) { $image = get_field('image', $term->taxonomy . '_' . $term->term_id); }

    Не делайте просто select со списком цветов внутри каждой записи, если список будет пополняться. Такой список неудобно поддерживать, сложно фильтровать, и изображения придётся хранить отдельно. Таксономия решает это чище.

    Другие ответы (0)

    Пока нет других ответов. Будьте первым, кто поможет автору.

    Ответить на вопрос

    комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *

    Вам также может быть интересно