Artur3194
@Artur3194

Ошибка при подключении своего виджета?

При создании своего плагина и подключении его непосредственно в файл functions.php ошибки нет и плагин работает корректно.
А при попытке вынести его в отдельный файл выдает такие ошибки:
5e9edb104b015579052728.png
Код файла плагина (/inc/widgets/contacts-widget.php)
class contacts_widget extends WP_Widget {
function __construct() {
	parent::__construct(
	// widget ID
	'contacts_widget',
	// widget name
	__('Вывод контактов', ' custom_widget_domain'),
	// widget description
	array( 'description' => __( 'Вывод номера телефонов и электронной почты', 'custom_widget_domain' ), )
	);
}
public function widget( $args, $instance ) {
	$title = apply_filters( 'widget_title', $instance['title'] );
	echo $args['before_widget'];
	//if title is present
	if ( ! empty( $title ) )
	echo $args['before_title'] . $title . $args['after_title'];
	//output
	$tel1 = fw_option('tel1');
	$tel2 = fw_option('tel2');
	$email = fw_option('email1');

	echo ('<ul><li><a href="tel:'.$tel1.'">'.$tel1.'</a></li>');
	echo ('<li><a href="tel:'.$tel2.'">'.$tel2.'</a></li>');
	echo ('<li><a href="mailto:'.$email.'">'.$email.'</a></li></ul>');
	echo $args['after_widget'];
}
public function form( $instance ) {
	if ( isset( $instance[ 'title' ] ) )
	$title = $instance[ 'title' ];
	else
	$title = __( 'Контакты', 'custom_widget_domain' );
	?>
	<p>
		<label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( 'Title:' ); ?></label>
		<input class="widefat" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" type="text" value="<?php echo esc_attr( $title ); ?>" />
	</p>
	<?php
}
public function update( $new_instance, $old_instance ) {
	$instance = array();
	$instance['title'] = ( ! empty( $new_instance['title'] ) ) ? strip_tags( $new_instance['title'] ) : '';
	return $instance;
}
}
function custom_register_widget() {
	register_widget( 'contacts_widget' );
}
add_action( 'widgets_init', 'custom_register_widget' );

Подключение в файле functions.php
require get_stylesheet_directory_uri() . '/inc/widgets/contacts-widget.php';

Делаю на дочерней теме.

Что я делаю не так?
  • Вопрос задан
  • 35 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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