Jak vytvořit vlastní widget?


class userWidget extends WP_Widget {

    function userWidget() {
        parent::WP_Widget(false, $name = 'userWidget');
    }

    function widget($args, $instance) {
        extract($args);
        $title = apply_filters('widget_title', $instance['title']);
        echo $before_widget;
        if ($title)
            echo $before_title . $title . $after_title;
        //zde napíšete kód widgetu
        echo $after_widget;
    }

    function update($new_instance, $old_instance) {
        $instance = $old_instance;
        $instance['title'] = strip_tags($new_instance['title']);
        return $instance;
    }

    function form($instance) {
        $title = esc_attr($instance['title']);
        ?>
        <p>
            <label for="<?php echo $this->get_field_id('title'); ?>"><?php _e('Title:'); ?></label>
            <input id="<?php echo $this->get_field_id('title'); ?>" name="<?php echo $this->get_field_name('title'); ?>" type="text" value="<?php echo $title; ?>" />
        </p>
        <?php
    }

}

add_action('widgets_init', create_function('', 'return register_widget("userWidget");'));

7 responses to “Jak vytvořit vlastní widget?”

  1. Dokázal by jste vytvořit widget na mobil, kde by se zobrazovala web stránka na které mám instalovaný webový teploměr? Na kolik by mě to vlastně přišlo? Děkuji za info.

    • Dobrý den,

      článek ne netýká widgetů pro mobily, ale widgetů pro wordpress, takže vám v této oblasti neporadím. Zkuste webtrh.cz, webfair.cz, webdeal.cz či jiné fórum, tam bude jistě dost podnikavců.

  2. Dobry den a ako ho mam prosim zapisat do stylu ked chcem aby len ten jeden ukazovalo ? dakujem

    • Dobrý den,
      můžete prosím svůj problém o něco lépe popsat. Bohužel jsem nebyl schopen pochopit, co přesně byste potřeboval.

      • Tak chcem napr iba dat na pravu stranu aktuality:
        len ked tam dam tu funkciu tak mi tam ukaže vsetky widgaet a to nechcem.

    • WordPress má už defaultní widget nazvaný Text, kam je možné vkládat i HTML kód.