🎉 سال نو، مهارت نو، مشاوره رایگان نقشه راه برنامه نویسی (آفر ویژه ثبت نام قبل از افزایش قیمت 🔥)
۰ ثانیه
۰ دقیقه
۰ ساعت
۳ Mehdi Hajati
ابزارک‌های ایجاد شده در جلسات قبل
کیوان علی محمدی حل شده توسط کیوان علی محمدی

سلام خسته نباشید من دستورات جلسه جست و جو و کتگوری‌ها رو مو به مو اجرا کردم ولی توی ابزارک هام نمایش داده نمیشن. مشکلش رو هم پیدا نمیکنم اصلا

اینم ابزارکی که ایجاد کردم

<?php 
class webyar_search_widget extends WP_Widget 
{
    public function __construct()
    {  
        parent::__construct(false,'ابزارک جستجوی سایت');
    }
    public function widget($args,$instance)
   { 
        echo $args['before_widget'];
        echo $args['before_title'];
        echo $args['after_title'];
        ?>
            <div class="blog-widget mt-40">
                <h4 class="blog-widget-title">Search</h4>
                <form class="widget-search-form">
                    <input placeholder="Search keyword" name="s" type="text" class="search-field">
                    <button type="submit" class="search-btn"><i class="fa fa-search"></i></button>
                </form>
            </div>
        <?php
         echo $args['after_widget'];
        
     }
    public function form($instance)
    {  
        $title = !empty($instance['title'])? $instance['title']:'ابزارک جستجوی سایت';
        ?>
       <p>
       <label for="<?php echo esc_attr($this ->get_field_id('title'));?>"> عنوان : </label>
        <input class="widfat" id="<?php esc_attr($this ->get_field_id('title'));?>"
         name="<?php esc_attr($this ->get_field_id('title'));?>" 
         value="<?php esc_attr($title);?>" type="text" >
         </p>
        <?php
    }
    public function update($new_instance,$old_instance)
    { 
       $instance=array();
       $instance['title']= (!empty($new_instance['title'])) ? sanitize_text_field($new_instance['title']):'';
       return $instance;
     }
}
function register_webyar_search_wiget(){
    register_widget('webyar_search_widget');
}
add_action('widget_init','register_webyar_search_wiget');
Mehdi Hajati ۱۶ فروردین ۱۴۰۰، ۰۸:۲۵

سلام خدمت شما. هوکی که برای رجیستر کردن یک ویجت استفاده کنید widgetsinit هست و شما widgetinit رو استفاده کردید.

بهترین پاسخ
کیوان علی محمدی ۱۶ فروردین ۱۴۰۰، ۱۱:۳۵

سلام خدمت دوست گرامی

add_action( 'widgets_init', 'register_webyar_search_wiget' );
-->این را وارد کنید

شما به جای 

widgets_init

عبارت

 

.نوشته ایدwidget_init

 

موفق باشید

رضا ۱۷ فروردین ۱۴۰۰، ۰۲:۱۲