Вызов неопределенной функции settings_fields () в структуре плагина котельной плиты

Я создаю плагин на основе структуры котельной плиты, и я пытаюсь создать страницу меню администратора, но я получаю ошибку.
Ниже мой код.

код ниже в class-plugin-name.php внутри админки,

$this->loader->add_action( 'admin_menu', $plugin_admin, 'define_admin_page' );
$this->loader->add_action( 'admin_init', $plugin_admin, 'register_setting' );

внутри class-plugin-name-admin.php,

public function define_admin_page(){

add_menu_page(
__('SEO Boost', 'seo-boost'),
__('SEO Boost', 'seo-boost'),
'manage_options',
'seo-boost',
array(&$this, 'seo_boost_page_callback')
);
}

public function seo_boost_page_callback(){
include_once 'partials/plugin-name-admin-display.php';
}

public function register_setting(){
add_settings_section(
$this->option_name.'_general-section',
__( 'General', 'seo-boost' ),
array( $this, $this->option_name . '_general_line' ),
$this->plugin_name
);

add_settings_field(
$this->option_name . '_text',
__("Text box label:", 'seo-boost'),
array( $this, $this->option_name . '_text_api_element' ),
$this->plugin_name,
$this->option_name.'general-section',
array( 'label_for' => $this->option_name . '_text' )
);

register_setting($this->option_name.'general-section', $this->option_name . '_text');

}

public function seo_boost_general_line(){
echo '<p>' . __( 'Please change the settings accordingly.', 'outdated-notice' ) . '</p>';
}

public function seo_boost_text_api_element(){
$text = get_option( $this->option_name . '_text' );
echo '<input type="text" name="' . $this->option_name . '_text' . '" id="' . $this->option_name . '_text' . '" value="' . $text . '"> ' . __( 'text', 'seo-boost' );
}

внутри plugin-name-admin-display.php есть код для отображения полей формы страницы администратора,

<div class="wrap">
<h1><?php _e('Seo Settings', 'seo-boost'); ?></h1>
<form action="options.php" method="post">
<?php
settings_fields($this->option_name.'_general-section');
do_settings_sections($this->plugin_name);
submit_button(); ?>
</form>
</div>

Но я получаю ошибку фатальной ошибки:

Вызов неопределенной функции settings_fields () в plugin-name-admin-display.php в строке 20

Я использую ссылку из этой ссылки для создания плагина.
Ссылка плагин

0

Решение

Невероятно, но вы должны добавить пробел между скобками, чтобы призыв к работе. Так что вместо:

settings_fields($this->option_name.'_general-section');

Вы должны кодировать это как:

settings_fields( $this->option_name.'_general-section' );
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector