ACF Options Page Admin
*** Добавлена новая функция: пользовательские ярлыки идентификаторов сообщений *** Это дополнительный плагин для расширенных настраиваемых полей (ACF) 5 + Add On Page Add On (или ACF Pro). Этот плагин не будет предоставлять никаких функций, если не установлены ACF 5 и Add On страницы параметров (или ACF5 Pro). Этот плагин предоставляет интерфейс администратора для добавления страниц параметров в ACF, включая все параметры для страниц параметров ACF. Можно выбрать большинство параметров, например расположение меню, возможности и место сохранения значений полей. Дополнительные сведения см. В разделе «Другие примечания и снимки экрана» Репозиторий Github. Этот плагин также находится на GitHub https://github.com/Hube2/acf-options-page-adder. Возможность изменения Для добавления / редактирования параметров страницы параметров требуется возможность «manage_options». Эту возможность можно изменить, добавив фильтр. add_filter ('acf-параметры-страница-сумматор / возможность', 'my_acf_options_page_adder_cap'); функция my_acf_options_page_adder_cap ($ cap) {$ cap = 'edit_published_posts'; return $ cap; } Сохранение значений на странице параметров сообщения ACF v5.2.7 добавила возможность сохранять поля страницы параметров в идентификатор сообщения. Этот плагин позволит вам сохранить параметры с тем же идентификатором сообщения, что и сообщение, созданное при добавлении страницы параметров с помощью этого плагина. Вы даже можете использовать get_fields ($ options_page_id), не беспокоясь о получении полей для самой страницы параметров. Почему? потому что все поля, используемые для создания страницы параметров, начинаются с подчеркивания _ и не будут возвращены функцией get_fields (). Единственное, о чем вам нужно быть осторожным, - это не использовать какие-либо имена полей, используемые этим плагином, что должно быть очень просто, поскольку все они начинаются с acfop. Сохранение значений с помощью настраиваемого ярлыка идентификатора сообщения Можно использовать настраиваемый ярлык для сохранения значений страницы параметров. Например, если вы хотите сохранить значения страницы параметров для пользователя, вы можете указать «user_1» в качестве значения $ post_id для страницы параметров. Это также имеет еще один побочный эффект. Обычно, когда ACF сохраняет значения в «options» в таблице параметров, вы найдете поля с префиксом «options_». Так, например, если ваше имя поля - «my_field», тогда в таблице опций вы найдете «options_my_field» в качестве имени опций. Для этого вы можете предоставить настраиваемый ярлык, допустим, вы установили для параметра идентификатора сообщения для страницы параметров значение «my-custom-slug». это приведет к тому, что то же поле на странице параметров получит имя «my-custom-slug_my_field». В этот плагин были добавлены 2 новые параметры, и вы можете использовать ярлык страницы параметров для идентификатора сообщения или вы можете указать собственный ярлык для использования вместо него. Получить идентификатор сообщения для страницы параметров. Для получения правильного значения ACF $ post_id, используемого для получения значений со страницы параметров, доступны функция и фильтр. Эта функция / фильтр вернет «параметры» для страниц параметров, хранящихся в параметрах, или вернет правильный идентификатор сообщения, если параметры сохранены в сообщении. Правильный идентификатор возвращается на основе значения «menu_slug» на странице параметров. / пример 1: function get_options_page_id () // получить post_id страницы опций $ post_id = get_options_page_id ('my_options_page_slug'); // получить значение с помощью $ post_id $ value = get_field ('my_option_field', $ post_id); // или их можно комбинировать следующим образом $ value = get_field ('my_option_field', get_options_page_id ('my_options_page_slug')); // пример 2: по фильтру $ default = 'option', $ slug = 'my_options_page_slug'; $ post_id = apply_filters ('get_option_page_id_filter', $ default, $ slug); $ value = get_field ('my_option_field', $ post_id); // или их можно комбинировать так: $ value = get_field ('my_option_field', apply_filters ('get_option_page_id_filter', $ default, $ slug)); Есть условие, при котором вы получите неверный идентификатор сообщения. Это условие создается за счет наличия страницы перенаправления верхнего уровня, настроенной на перенаправление на первую страницу дополнительных параметров. Если страницы дополнительных параметров не существует, она вернет значение для страницы параметров верхнего уровня. Если вы позже создадите страницу дополнительных параметров, она вернет новое значение со страницы дополнительных параметров. Вот почему я вижу значение по умолчанию для перенаправления на false. Если вы хотите, чтобы страница верхнего уровня перенаправляла, вам нужно знать, что это может вызвать у вас проблемы позже, если вы не создали страницу дополнительных опций. Вы также должны специально установить порядок страниц дополнительных параметров, чтобы они не изменились в какой-то момент в будущем, потому что добавление новой страницы параметров с тем же порядком, что и существующая страница верхнего уровня, изменит сохранение и получит местоположение для новых параметров. страница. Есть упоминание, что я могу с этим поделать, так как это работает. При настройке страниц параметров ACF для сохранения в сообщение вместо параметров вы должны быть более точными с аргументами страницы параметров. Поддержка Font Awesome Обратите внимание, что этот плагин не ставит в очередь и не включает Font Awswsome в админку вашего сайта. Если вы включите Font Awsome в свой админ, вы можете использовать Font Awesome Icons для значков на странице параметров верхнего уровня. Например, если вы хотите использовать значок адресной книги, все, что вам нужно сделать, это добавить fa fa-address-book в поле «Значок» при добавлении или редактировании страницы параметров. Параметры фильтра Верхний колонтитул / Нижний колонтитул / Контент В версии 3.8.0 этого плагина добавлена возможность настройки страницы параметров ACF путем добавления содержимого верхнего и нижнего колонтитула. В дополнение к полям WYSIWYG, которые были добавлены в редактор администратора страницы параметров, вы также можете настроить эти разделы или всю страницу параметров с помощью фильтров. Версия 3.8.2 этого плагина добавляет переключатель для включения этой функции. Эта функция может вызвать фатальную ошибку нехватки памяти на страницах параметров с большим количеством полей. Если содержимое было введено в это поле до включения переключателя, переключатель будет автоматически включен. В противном случае по умолчанию эта опция будет отключена. Содержимое заголовка add_filter ('acf-options-page-adder / page-header', 'my_custom_options_page_header', 10, 2); function my_custom_options_page_header ($ content, $ hook) {// $ content = content, по умолчанию это '' или значение редактора WYSIWYG // $ hook = текущий обработчик страницы параметров, который вызывается $ content = '
Мой собственный контент заголовка
'; вернуть $ content; } Контент нижнего колонтитула add_filter ('acf-options-page-adder / page-footer', 'my_custom_options_page_footer', 10, 2); function my_custom_options_page_footer ($ content, $ hook) {// $ content = content, по умолчанию это '' или значение редактора WYSIWYG // $ hook = текущий обработчик страницы параметров, который вызывается $ content = 'Мое пользовательское содержимое нижнего колонтитула
'; вернуть $ content; } Фильтровать всю страницу параметров add_filter ('acf-options-page-adder / page-content', 'my_custom_options_page_filter', 10, 2); function my_custom_options_page_filter ($ content, $ hook) {// $ content = весь контент или страница параметров, включая все поля ACF // $ hook = текущая вызываемая страница параметров, // при внесении изменений в содержимое страницы возвращает $ content; } Remove Nag Если вы хотите удалить мою маленькую ворчание, которое появляется на некоторых страницах администратора, добавьте следующее в свой файл functions.php add_filter ('remove_hube2_nag', '__return_true');Автор: John A. Huebner II
Версия: 3.10.0
Последнее обновление: 2021-07-03 1:14pm GMT