رفتن به مطلب

تعریف ابزارک برا افزونه


پست های پیشنهاد شده

راه کلی که در اینجا آمده


http://codex.wordpress.org/Widgets_API

اما اگر متوجه نشدید سعی می کنم توی چند روز آینده متد عملیشو تو بخش آموزش بیارم

لینک به ارسال

در صفحه ی codex به طور کامل توضیح داده شده .

به طور کل چهار تابع(باید از کلاس والد extends شود) کلی داریم که عملیات در آنها صورت میگیرد


class My_Widget extends WP_Widget {

public function __construct() {
// widget actual processes
}

public function widget( $args, $instance ) {
// outputs the content of the widget
}

public function form( $instance ) {
// outputs the options form on admin
}

public function update( $new_instance, $old_instance ) {
// processes widget options to be saved
}
}

در construct اولین تابع توضیحات و ... را اضافه میکنید , در تابع form مواردی که میخواهید در ایزارک باشد را قرار میدهید , تو جه کنید :


<table>

<tr>
<td>
<label for="<?php echo $this->get_field_id('get_all_today_visit'); ?>"><?php _e('All today visits', 'wp-parsi-st'); ?></label>
</td>
<td>
<input type="checkbox" name="<?php echo $this->get_field_name('get_all_today_visit'); ?>" id="<?php echo $this->get_field_id('get_all_today_visit');?>" <?php if($instance['get_all_today_visit']=='on'){echo 'checked';} ?>/>
</td>
</tr>
.
.
.

در مورد get_field_id و get_field_name جستجو کنید . به طور کلی نام و آیدی یکتا تولید میکنند

تابع update آپشن ها را در بانک اطلاعاتی ذخیره میکند . تابع widget نتیجه ی توابع را در صفحه ی کاربر نشان میدهد . دفت کنید :


function update($new_instance, $old_instance)
{
global $instance;
$instance = array();
$instance = $old_instance;
$instance['get_all_today_visit'] = strip_tags($new_instance['get_all_today_visit']);
$instance['get_all_yest_visit'] = strip_tags($new_instance['get_all_yest_visit']);
$instance['get_all_week_visit'] = strip_tags($new_instance['get_all_week_visit']);
.
.
.

و


}
function widget($args, $instance)
{
$dummy = new WPPST_Widget();
$settings = $dummy->get_settings();
$static=new pageStatistic();
?>
<div id="wpvisits" style="width: 200px; min-height: 180px; background-color: darkgray;" >
<?php if($instance['get_all_today_visit']=='on'){echo __('All today visits ', 'wp-parsi-st') . $static->get_all_today_visit()."<br>";} ?>
<?php if($instance['get_all_yest_visit']=='on'){echo __('All yesterday visits ', 'wp-parsi-st') . $static->get_all_yest_visit()."<br>";} ?>
.
.
.
.

تابع register_widget کلاس را در ابزارک وردپرس ثبت میکند


function wppst_load_widgets()
{
register_widget('WPPST_Widget');
}
add_action('widgets_init', 'wppst_load_widgets');

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...