Hôm nay nhận 1 task có liên quan đến yêu cầu cần tạo thêm Widget Area nên sẵn tiện viết bài này để chia sẻ cách tạo 1 Widget Area cho các bạn luôn. Widget Area mình không biết dịch sao cho sát nghĩa nhưng đại khái là vùng cho phép bạn kéo thả các widget vào.
Cũng đơn giản thôi, đầu tiên bạn thêm đoạn mã sau vào tập tin functions.php của theme bạn đang sử dụng:
1 2 3 4 5 6 7 8 9 10 11 | function new_widget_area_init() { register_sidebar( array( 'name' => 'Title Widget Area', 'id' => 'id_widget_area', 'before_widget' => '<div id="%1$s" class="widget-item %2$s">', 'after_widget' => '</div>', 'before_title' => '<h3 class="widget-title">', 'after_title' => '</h3>', ) ); } add_action( 'widgets_init', 'new_widget_area_init' ); |
Trong đó before_widget và after_widget là thẻ bao bên ngoài của mỗi widget được tạo còn before_title và after_title là thẻ bao cho tiêu đề. Vậy là xong phần khởi tạo. Và để gọi widget area ra giao diện bạn chỉ cần chèn đoạn mã sau vào vị trí muốn hiện thị widget:
1 | <?php if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('new_widget_area_init') ) : endif; ?> |
Vậy là xong. Chúc các bạn thành công.
Huỳnh Mai Anh Kiệt