serii81
@serii81
Я люблю phр...

Почему не работает хук «carbon_fields_register_fields»?

Установил плагин Carbon Fields.
В файле functions.php прописал страховку
if ( ! function_exists( 'carbon_get_post_meta' ) ) {
    function carbon_get_post_meta( $id, $name, $type = null ) {
        return false;
    }   
}


Тут я привел одну функцию, на самом деле я прописал все из документации.

Далее я прописал хук для подключения произвольных полей из файлов
add_action( 'carbon_fields_register_fields', 'crb_attach_post_options' );
function crb_attach_post_options() {
    // путь к пользовательскому файлу определения поля (полей), измените под себя
    require_once __DIR__ . '/inc/carbon-fields/home-fields.php';
}


А вот код из файла home-fields.php, ничего особенного
use Carbon_Fields\Container;
use Carbon_Fields\Field;

Container::make( 'post_meta', 'Текст слайдера' )
     ->show_on_post_type('page') // этот метод можно не писать, так как show_on_post_type('post') по умолчанию
     ->show_on_page('glavnaya')
         ->add_fields(array(
             Field::make('text', 'home_slider_text_1', 'Текст слайдера')
             ->set_width(33),
             Field::make('text', 'home_slider_text_2', 'Текст слайдера')
             ->set_width(33),
             Field::make('text', 'home_slider_text_3', 'Текст слайдера')
             ->set_width(33)
         ));


Так вот, в чем проблема:
Если я просто прописываю
require_once __DIR__ . '/inc/carbon-fields/home-fields.php';

в functions.php, то на странице появляются произвольные поля.
Если же я прописываю путь к файлу в тело функции хука, полей нету.
Вот так не работает
5b2b439384c05876584230.jpeg
Почему?
  • Вопрос задан
  • 490 просмотров
Решения вопроса 1
kobyakovdima
@kobyakovdima
Любитель экспериментов
Здравствуйте. Классическая ошибка. Вы, судя по всему, используете хук carbon_fields_register_fields, но работаете с CF 1.6. Этот хук появился в CF v 2.0. В версии 1.6 был хук carbon_register_fields.



От себя совет, скачайте CF 2.2 как плагин и установите его, раз только начинаете работу. Терять то нечего. Версия 1.6 уже не развивается, в ней многого нет, что есть в 2.2.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы