[Lập trình theme WordPress] Code cho sidebar.php [NEW]



Đến đây, chúng ta đã gần đến giai đoạn hoàn thiện “bộ xương” của một theme, chỉ vài công đoạn nữa là chúng ta đã có một theme cho riêng mình. Ở các phần trước chúng ta đã tập trung nhiều vào việc code cho các thành phần hiển thị nội dung, trong bài này chúng ta sẽ tiến hành code cho chức năng hiển thị sidebar của website.

Bạn có nhớ, trong phần mã hóa cho functions.php, chúng tôi đã tạo một thanh bên với mã này:


/*
* Tạo sidebar cho theme
*/
$sidebar = array(
‘name’ => __(‘Main Sidebar’, ‘thachpham’),
‘id’ => ‘main-sidebar’,
‘description’ => ‘Main sidebar for Thachpham theme’,
‘class’ => ‘main-sidebar’,
‘before_title’ => ‘<h3 class="widgettitle">’,
‘after_sidebar’ => ‘</h3>’
);
register_sidebar( $sidebar );

Lưu ý tham số ID trong biến $sidebarchúng ta có main-sidebar, và đây là tên slug của thanh bên mà chúng ta đã tạo trong functions.php. Sau khi một thanh bên được khởi tạo ở đây, bạn sẽ thấy nó được hiển thị trong Appearance -> Widgetsbạn tạo nhiều thanh bên, nó sẽ hiển thị nhiều thanh trong số chúng.

Tuy nhiên, không phải cứ tạo sidebar bằng đoạn mã trên là trang web bạn đã hiển thị mà phải làm thêm một bước nữa để chúng ta hiển thị là đang sử dụng hàm dynamic_sidebar() để hiển thị nó bên ngoài giao diện.

Trong các tệp như index.php, single.php, archive.php, v.v., tất cả chúng ta đều có chức năng hiển thị thanh bên dưới dạng get_sidebar(). Hàm này sẽ tải tệp sidebar.php có trong chủ đề hoặc nếu bạn viết get_sidebar('index') sau đó nó sẽ tiến hành tải tập tin sidebar-index.php có trong theme.

Bây giờ để hiển thị thanh bên, hãy mở tệp sidebar.php đã tạo và chèn mã sau:


<?php
if ( is_active_sidebar(‘main-sidebar’) ) {
dynamic_sidebar( ‘main-sidebar’ );
} else {
_e(‘This is widget area. Go to Appearance -> Widgets to add some widgets.’, ‘thachpham’);
}
?>

Đoạn trên có nghĩa là tôi sẽ sử dụng hàm is_activate_sidebar() để kiểm tra xem thanh bên chính có bất kỳ tiện ích nào không, nếu nó đã được thêm các tiện ích, nó sẽ hiển thị thanh bên bằng cách sử dụng chức năng dynamic_sidebar(). Trong trường hợp nếu thanh bên không có bất kỳ widget nào, một phần nội dung sẽ được hiển thị yêu cầu bạn thêm widget.

Bây giờ, bạn nên cài đặt plugin Monster Widget, sau đó thêm widget này vào Sidebar. Chức năng của widget này là hiển thị tất cả các widget mặc định của WordPress trong sidebar để sau này chúng ta có thể dễ dàng viết CSS cho nó để đảm bảo theme của bạn hiển thị tốt trên các widget mặc định.

[Lập trình theme WordPress] Code cho sidebar.php [NEW]

Và bây giờ nó đã hiển thị thanh bên trên trang web rồi.

laptrinhtheme-finish-sidebar

Ok, vậy là chúng ta sẽ hoàn thành việc hiển thị sidebar bên ngoài chủ đề.

Trong phần tiếp theo, chúng ta sẽ thực hiện bước cuối cùng trong việc mã hóa khung sườn cho theme, đó là tạo hai Mẫu trang tùy chỉnh để làm trang liên hệ và trang hiển thị nội dung không có sidebar.

Đánh giá nội dung này

Tiếp tục đọc trong bộ truyện