WordPress – OpenCart – SEO – Web Development

Cách tạo Widget trong WordPress

Widget của WordPress trở nên thật đơn giản với người dùng khi mọi người chỉ cần kéo và thả vào vị trí mà mình muốn bất kì nơi nào tạo vị trí trong theme có thể là sidebar, footer hay trên header...  Trong bài viết này bạn sẽ học được cách tạo widget WordPress của riêng đơn giản của riêng mình. Trong hướng dẩn này, chúng ta sẽ tạo một wiget đơn giản mà chỉ xuất hiện câu Hello, World! .Hãy nhìn vào đoạn code và dán nó vào file function.php hoặc trong plugin của bạn. [php] // Tạo widget với class là smw_widget class smw_widget extends WP_Widget { function __construct() { parent::__construct( // ID widget của bạn 'smw_widget', // Tên widget sẽ xuất hiện trong giao diện người dùng __('Sacmauweb Widget', 'smw_widget_domain'), // Miêu tả của widget array( 'description' => __( 'Miêu tả của widget', 'smw_widget_domain' ), ) ); } // Xuất dữ liệu ra bên ngoài widget public function widget( $args, $instance ) { $title = apply_filters( 'widget_title', $instance['title'] ); echo $args['before_widget']; if ( ! empty( $title ) ) echo $args['before_title'] . $title . $args['after_title']; // Đây là nơi chạy code và hiển thị ra vị trí widget của bạn (ở đây sẽ hiển thị dòng "Hello, World!") echo __( 'Hello, World!', 'smw_widget_domain' ); echo $args['after_widget']; } // Tạo form option cho widget public function form( $instance ) { if ( isset( $instance[ 'title' ] ) ) { $title = $instance[ 'title' ]; } else { $title = __( 'New title', 'smw_widget_domain' ); } // Tạo form widget ?> <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 } // Lưu dữ liệu khi đã nhập vào widget public function update( $new_instance, $old_instance ) { $instance = array(); $instance['title'] = ( ! empty( $new_instance['title'] ) ) ? strip_tags( $new_instance['title'] ) : ''; return $instance; } } // Kết thúc smw_widget // Đăng ký và load widget function smw_load_widget() { register_widget( 'smw_widget' ); } add_action( 'widgets_init', 'smw_load_widget' ); ?> [/php] Bây giờ hãy vào Appearance »Widget Kéo thả Sacmauweb Widget vào trong thanh bên của bạn, chỉnh sửa title, save và xem kết quả ngoài trang web. Kết quả trang admin: Kết quả khi chạy trên trang web:   Xem thêm :  http://stackoverflow.com/questions/5247302/php-namespace-5-3-and-wordpress-widget/5247436#5247436 Nếu bạn có thắc mắc hãy comment bên dưới.

Từ khóa:

Giới thiệu tác giả

Giới thiệu tác giả: .

There Are 2 Brilliant Comments

Trackback URL | Comments RSS Feed

  1. Tu says:

    Cho mình hỏi về plugin WP một chút. Bạn có biết cái plugin nào tương tự cái block newcenter của nukeviet không (Block hiển thị slide tin mới và bài viết tiêu điểm). Chỉ mình với. Giống cái trang này: kienthucphunu.com
    Thank

Gửi bình luận

Your email address will not be published. Required fields are marked *

Top