Антон Кан: Ничего "само" никогда в программировании не происходит. Код не может знать, какие типы полей и вообще какое количество полей вы там посоздавали. Поэтому да, для каждого блока пишется свой код. Как выводить каждый конкретный тип поля - подробно описано в документации к этому типу. Вам нужно помнить про get_field / get_sub_field (разница в том, что в первом случае это поле в корне, во втором - поле внутри другого поля - рипитера или flexible). А также то, что get_* - возвращает данные, а непосредственно выводит (печатает) - the_* (то есть функции the_field() и the_sub_field()). В остальном вам поможет документация.
Конкретно для галереи - вывод тайтла и дескрипшна с помощью функций the_sub_filed( 'title' ) и the_sub_field( 'description' ), только не внутри цикла галереи, там уже свои sub_fields.
RushV: Это и есть код для вывода. У вас в вашем же коде все уже есть, вам только саму строчку с WP_Query надо заменить на мой код. Вставляйте в шаблон.
Антон Кан: С кодом ACF я очень хорошо знаком, ежедневно с ним работаю. Вопрос в вашем коде. Представленный код побился, оберните его в теги code. Впрочем, на первый взгляд все ок, либо у вас названия полей не те, либо хз. Сделайте скриншот настроек группы полей - flexible этого, и рипитера в нем.
CyMPuK: На здоровье) Если в дальнейшем понадобится несколько фильтров - там сам $query->set() будет уже другим. Создавайте тогда новый вопрос и приглашайте ответить.
CyMPuK: Стоп, последний вопрос. У вас только поле "бренд"? Может есть смысл его сделать таксономией? Это чисто вопрос правильной архитектуры. Или есть еще другие параметры, а "бренд" - это лишь один пример?
CyMPuK: ну это я вам и ответил, что query_posts использовать нельзя, потому что эта функция в первую очередь как раз пагинацию и ломает. Теперь у меня вопрос почему у вас это обернуто в функцию go_filter() и как вы ее вызываете?
Правильно ли я понимаю, что вам необходимо в каталоге иметь выпадающий список брендов, и при выборе должна происходить сортировка постов по выбранному бренду? С перезагрузкой страницы или без нее?
Rou1997: Ох...
Еще раз повторяю - у вас кони-люди смешались. Вы путаете базовые понятия, что говорит о недостаточном опыте и упоротости в некоторые "идеологически якобы правильные" решения.
Во-первых, MVC != ООП. Даже более того, в 99,99% случаев Controller в MVC берет на себя слишком много, что перечит базовому Single Responsibility Principle, а размазывание одного логического объекта по всем трем составляющим - модели, контроллере и view, перечит другому принципу - энкапсуляции. В мире людей опытных, которые не зашорены как вы, и помнят языки чисто процедурные, давно ведутся дебаты по поводу того, что MVC - вообще BAD DESIGN.
Во-вторых, MVC != фреймворк, это ПАТТЕРН Model-View-Controller. Паттерн! Архитектурный паттерн. Один из многих, и не обязательно единственный и истинный. Это разделение бизнес-логики и ее отображения, не более.
В третьих, фреймворки написаны бывают не только реализуя MVC-паттерн. И не только ООП-фреймворки. Процедурное программирование было, есть и будет. У ООП свои плюсы и минусы, у Procedural свои. Это не лучше/хуже, это разные подходы.
Так, чтобы вы понимали, WordPress изначально написан на фреймворке. Процедурном, реализующем EVENT-DRIVEN паттерн. Учите матчасть.
А еще в WordPress дохрена ООП (и постепенно его становится все больше, не так быстро как хотелось бы - в силу огромной важности backward compatibility, но все же) и сам по себе WP - это Content Management Framework с кучей встроенных API, как и у любого фреймворка. А сверху накинута отличная админка. По сути, единственный ваш concern, это шаблонизатор WP, который для адептов MVC выглядит странным и олдскульным. Впрочем, это вопрос привычки, немного идеологии. К реальным задачам и их реализации он никакого отношения не имеет.
> в Wordpress очень мало архитектурных слоев
шта? Проясните, что вы имеете в виду.
ЗЫ: Термин "Монолитная CMS" не гуглится и мир о нем ничего не знает. Что опять же свидетельствует о том, что у вас каша в голове, смешались кони-люди, и вы плохо отличаете теплое от мягкого.
ЗЗЫ: Про стаж я написал как контраргумент к вашему опрометчивому заявлению, что кроме WP я ничего не знаю и не видел.
Конкретно для галереи - вывод тайтла и дескрипшна с помощью функций the_sub_filed( 'title' ) и the_sub_field( 'description' ), только не внутри цикла галереи, там уже свои sub_fields.
Смотрите обновленный ответ через пару минут.