Получил собственный аргумент для этого элемента управления ( foo ) и пытаюсь получить его значение как часть каталога очереди. >
В функции «рендеринг контента» появляется пользовательский аргумент foo.
Когда я пытаюсь сделать то же самое в очереди функции (да, я знаю, что это связано с действием ) это сломано.
После этого даже при рендеринге содержимого вывод аргумента foo исчезает.
Код: Выделить всё
class Foo_Control extends WP_Customize_Control {
public $type = 'foo_control';
public $foo; // declare foo argument
public function __construct( $manager, $id, $args = array(), $options = array() ) {
parent::__construct( $manager, $id, $args );
add_action( 'customize_controls_enqueue_scripts', array( $this, 'foo_enqueue' ), 15 );
}
public function foo_enqueue() {
wp_enqueue_script( 'foo-script', get_template_directory_uri() . '/js/foo-script.js', array( 'jquery' ), '1.0', true );
// $this->foo = $foo_dir;
// wp_enqueue_script( 'foo-script', get_template_directory_uri() . '/js/'.$foo_dir.'.js', array( 'jquery' ), '1.0', true );
}
public function render_content() {
echo $this->label; // Foo label
echo $this->description; // Foo desc
echo $this->foo; // foo-script
}
/*Добавьте настройки и элементы управления в $wp_customize */
Код: Выделить всё
$wp_customize->add_setting( 'my_foo_control', array(
'type' => 'theme_mod',
));
$wp_customize->add_control( new Foo_Control( $wp_customize,'my_foo_control', array(
'section' => 'homepage',
'label' => 'Foo label',
'description' => 'Foo desc',
'foo' => 'foo-script',
) ));
- Пробовал с $this->foo,
- Пробывал с функцией a, функцией b($a)
Подробнее здесь: https://stackoverflow.com/questions/786 ... s-in-class