ACF - Как использовать экспортированные группы полей в файле PHP, а не в CMS? - PullRequest
0 голосов
/ 07 ноября 2019

Я создаю сайт с помощью WordPress и использую Advanced Custom Fields Pro (ACF) для создания групп пользовательских полей. Я предпочел бы экспортировать мои группы полей и в файлах PHP ACF, а не использовать их в CMS.

В моей теме мой файл functions.php находится на корневом уровне, а мои файлы ACF находятся в library/acf/acf-file.php.

Как связать эти файлы ACF, чтобы я мог использовать их на своем сайте?

1 Ответ

1 голос
/ 07 ноября 2019

Если вы хотите импортировать поля, экспортированные как массивы php

После того, как вы сгенерировали код экспорта со страницы администратора ACF:

  1. Создайте новый файл .php в удобном местевнутри папки вашей темы и вставьте сгенерированный контент. Это должно выглядеть примерно так:
if( function_exists('acf_add_local_field_group') ):
  acf_add_local_field_group(array ());
endif;
В файле functions.php вашей темы включите ранее созданный файл
include_once('my_acf_fields.php');

Если вы хотите импортировать поля, экспортированные в виде файла json

После создания jsonфайл со страницы администратора ACF:

  1. Добавьте сгенерированный файл .json в удобное место в папке вашей темы

  2. В вашей теме functions.php file, зарегистрируйте поля:

if( function_exists('acf_add_local_field_group') ):
  $fields = json_decode( file_get_contents( 'my_acf_fields.php' ), true );

  acf_add_local_field_group( $fields );
endif;

Конечно, если у вас есть несколько файлов, вы можете написать функцию, которая загружает все файлы, содержащиеся в каталоге, и вызвать acf_add_local_field_group() длякаждый из них.

...