Intereting Posts
Выход из WordPress только в том случае, если пользователь выйдет из системы или если пользователь удаляет историю браузера Проблемы с задержкой репликации MySQL в страницах wp-admin Получить страницу slug / id из позиции в меню Список общего числа пользователей, которые являются авторами Циклическая пользовательская таксономия для получения списков типов столбцов? Как создать сайт с одной страницей в WordPress Поместите куки-файл, когда просматривается определенная страница? Изменение следующего и предыдущего текстового сообщения Добавление кнопки отправки или обновления в пользовательский метабокс? Измените расположение add_theme_support ('custom-header') в настройке Построение индексной страницы из настраиваемых полей Почему the_content не работает, как другие, для заданного идентификатора сообщения? Сохраняйте вставленный предварительно отформатированный код так, как он есть – с вкладками в визуальном редакторе открыть все .docs в слове онлайн Удалите «Отправленный» и «Отправленный» из темы «Двадцать десять»

Создайте виджет, который позволяет вводить текст

Мне нужно создать простой виджет с текстовым полем ввода.

Мне нужен виджет, чтобы создать разметку ниже …

<div class="textwidget"> <div class="avatar"> <div class="avatartext"> <p>CONTENTS OF THE TEXT INPUT HERE</p> </div> <div class="avatarimage"></div> </div> 

Я начал процесс создания виджета с помощью кода ниже. Я просто не понимаю, как закодировать функцию my_avatar () …

 function my_avatar() { //Widget markup goes here. How to pull the widget text entry? } register_activation_hook(__FILE__, 'my_avatar'); class My_Widget_Avatar extends WP_Widget { function My_Widget_Avatar() { $widget_ops = array( 'classname' => 'widget_avatar', 'description' => __( "My Avatar Widget" ) ); $this->WP_Widget('my_avatar', __('My Avatar'), $widget_ops); } } add_action('widgets_init', create_function('', "register_widget('My_Widget_Avatar');")); 

Solutions Collecting From Web of "Создайте виджет, который позволяет вводить текст"

Полный код:

 class My_Widget_Avatar extends WP_Widget { function My_Widget_Avatar() { $widget_ops = array( 'classname' => 'widget_avatar', 'description' => __( "My Avatar Widget" ) ); $this->WP_Widget('my_avatar', __('My Avatar'), $widget_ops); } function widget( $args, $instance ) { extract($args); $text = apply_filters( 'widget_text', $instance['text'], $instance ); echo $before_widget; ?> <div class="textwidget"> <div class="avatar"> <div class="avatartext"> <p><?php echo $text; ?></p> </div> </div> <div class="avatarimage"></div> </div> <?php echo $after_widget; } function update( $new_instance, $old_instance ) { $instance = $old_instance; if ( current_user_can('unfiltered_html') ) $instance['text'] = $new_instance['text']; else $instance['text'] = stripslashes( wp_filter_post_kses( addslashes($new_instance['text']) ) ); // wp_filter_post_kses() expects slashed return $instance; } function form( $instance ) { $instance = wp_parse_args( (array) $instance, array( 'text' => '' ) ); $text = format_to_edit($instance['text']); ?> <textarea class="widefat" rows="16" cols="20" id="<?php echo $this->get_field_id('text'); ?>" name="<?php echo $this->get_field_name('text'); ?>"><?php echo $text; ?></textarea> <?php } } function lbi_widgets_init() { register_widget( 'My_Widget_Avatar' ); } add_action( 'widgets_init', 'lbi_widgets_init' );