Как создать универсальный блок для ACF Flexible Content и Gutenberg

Поділитися
Вставка
  • Опубліковано 23 гру 2024

КОМЕНТАРІ • 7

  • @A1_TR_812
    @A1_TR_812 Рік тому

    отличное видео спасибо

  • @redproduction7730
    @redproduction7730 3 роки тому +1

    А как вы выводите контент гутенберга без функции the_content()? И зачем тогда поля ACF флекс нужны, если вы отдельную группу полей создаете которая никак не связана с ними, а просто дублирует набор полей? Странное решение

    • @WordPressMoscow
      @WordPressMoscow  3 роки тому +1

      Спасибо за вопрос. Смотрите, сама ситуация с универсальным блоком нужна, например, когда страницы используют флексибл-контент, а в постах идет гутенберг и некоторые блоки вы хотите использовать и там и там. Тогда для страниц the_content() не нужен, так как вся информация хранится в acf-полях и данные выводятся через конструкцию while ( have_rows() ).
      Две группы полей нужны вот для чего, блоки гутенберг сделанные с помощью ACF используют функции the_field() и get_field(), а в блоках флексибл-контента -- функции the_sub_field() и get_sub_field(). Этот момент мне уже удалось обойти и создание дубликата группы полей для каждого блока вручную большей не нужно

  • @nic7708
    @nic7708 2 роки тому

    Способ классный. Спасибо что делитесь. Правда попытки повторить ваши шаги не приводят к результату. ACF-блок работает, но цикл с index.php не выводит его на страницу во фронте

    • @WordPressMoscow
      @WordPressMoscow  2 роки тому

      напишите мне в телеграм или vk, помогу разобраться. мой ник solidcreature

    • @nic7708
      @nic7708 2 роки тому

      @@WordPressMoscow Спасибо. Пока пробую сам разобраться. Уже попереписывал тему с нуля раза три, переустанавливал WP и т.д.
      У меня работает только с функцией вывода the_content(), а с have_rows() ничего нет. Ниже комментатор спрашивал про это, но в моем случае как-то безрезультатно.
      Кстати, на вашем ролике от 01 фев. 2019 - "Создание универсального gutenberg-блока с помощью ACF Flexible Content" на 07:58 минуте заметил, что у вас есть файл в корне темы - page.php со стандартным циклом while(have_posts()): the_post(); the_content(); endwhile;
      Если этот файл держать там, то по иерархии шаблонов, WP использует page.php и через the_content() выводит запись и ACF-блок как надо.
      В ролике что сейчас от 2021г., заметил, что в корне темы лежит single.php. Если сунуть этот цикл туда, то также всё работает. При этом, если принудительно открывать index.php со своим while(have_rows('page_floors')): the_row(); то ничего нет, как будто плагин не понимает о чем идет речь в шаблоне)

    • @nic7708
      @nic7708 2 роки тому

      @@WordPressMoscow написал вам в ВК