Những hàm hay sử dụng trong lập trình theme wordpress
Tiếp tục với chủ đề lập trình theme wordpress hôm nay mình sẽ giới thiệu cho các bạn những hàm hay sử dụng trong wordpress. Những hàm này hầu như tất cả các theme đều có sự hiện diện của nó.Nắm được các hàm này sẽ giúp bạn dễ tiếp cận với lập trình theme wordpress khi mới bắt đầu cũng như có thể chủ động thay đổi một số thành phần của theme.
Hàm bloginfo() và get_bloginfo()
Đây là hàm lấy một số thông tin có sẵn của website. Ví dụ như: Tiêu đề website, đường dẫn website, đường dẫn đến theme…
Các thông tin được trả về tùy thuộc vào tham số mà chúng ta truyền vào hàm này cụ thể như sau:
- bloginfo(‘name’) : Hiển thị tên của trang web – ví dụ: Học WordPress
- bloginfo(‘siteurl’) : Hiển thị địa chỉ trang chủ URL Website – ví dụ: https://hocwordpress.vn/
- bloginfo(‘description’) : Hiển thị mô tả của trang web – ví dụ: Hướng dẫn wordpress – Khóa học wordpress
- bloginfo(‘wpurl’) : Hiển thị địa chỉ url của trang web được thiết lập url từ bảng wp_options của database – ví dụ: https://hocwordpress.vn/
- bloginfo(‘url’) : Hiển thị địa chỉ của trang Web – ví dụ: https://hocwordpress.vn/
- bloginfo(‘admin_email’) : Hiển thị Email quản trị được thiết lập trong Cài đặt > Cài đặt chung
- bloginfo(‘charset’) : Hiển thị kiểu Charset Encoding của website ví dụ “UTF-8”
- bloginfo(‘version’) : Hiển thị phiên bản WordPress hiện tại đang sử dụng
- bloginfo(‘html_type’) : Hiển thị kiểu Content Type của WordPress mặc định là “text/html”
- bloginfo(‘language’) : Hiển thị ngôn ngữ site đang sử dụng
- bloginfo(‘stylesheet_url’) : Hiển thị địa chỉ đến file style.css
- bloginfo(‘stylesheet_directory’) : Hiển thị link đến thư mục theme hiện tại
- bloginfo(‘rss_url’) : Hiển thị địa chỉ RSS 0.92 feed
- bloginfo(‘rss2_url’) : Hiển thị the RSS 2.0 feed
Hàm bloginfo() khi chạy hàm này dữ liệu sẽ tự động in ra luôn, còn hàm get_bloginfo() thì để in ra chúng ta cần phải echo ví dụ: <?php echo get_bloginfo(‘name’); ?>
Hàm get_header(), get_footer(), get_sidebar()
Các hàm này tương ứng để lấy nội dung của 3 file sau trong theme:
- get_header() lấy nội dung của file header.php
- get_footer() lấy nội dung của file footer.php
- get_sidebar() lấy nội dung của file sidebar.php
Các hàm này đều có tham số là các slug, để lấy nội dung của các file con ví dụ như:
get_header(‘child’) sẽ lấy nội dung của file header-child.php. Đối với 2 hàm còn lại cũng tương tự.
Ngoài ra để lấy nội dung của một file bất kỳ trong lập trình theme wordpress chũng ta có thể sử dụng hàm get_template_part(), ví dụ như sau:
- get_template_part(‘slider’) sẽ lấy nội dung của file slider.php trong theme.
- get_template_part(‘content/gird’) sẽ lấy nội dung của file grid.php trong thư mục content của theme.
Hàm wp_head() và wp_footer()
Đây là 2 hàm đơn giản mà vô cùng quan trọng trong lập trình theme wordpress. Nếu thiếu nó có thể dẫn đến một số chức năng hay plugin của website không hoạt động.
Hàm wp_head()
Hàm wp_head() thường được đặt ở phần đầu của website (trong cặp thẻ <head></head>). Hàm này có chức năng bổ sung các thành phần mặc định của wordpress cũng như plugin wordpress.
Ví dụ: Chúng ta dùng plugin wordpress seo thì hàm này sẽ bổ sung các thẻ meta giúp website chuẩn seo.
Hàm wp_footer()
Hàm wp_footer() có chức năng bổ sung các thành phần vào cuối của website như nhúng các đoạn js của plugin vào website.
Hàm này cũng giúp tạo thanh admin bar cho website khi chúng ta login vào website.
Để admin bar xuất hiện ngoài giao diện khi login vào chúng ta phải sử dụng wp_footer()
Một số hàm điều kiện trong lập trình theme:
- comments_open( $args ) Kiểm tra chức năng bình luận của post hiện tại có đang được mở hay không.
- has_tag( $args ) Kiểm tra post hiện tại có được đặt Tag hay không.
- has_term ( $args ) Kiểm tra post hiện tại có chứa một term của bất kỳ taxonomy nào hay không. Ví dụ bạn có một category mang tên là ABC thì cái ACB đó chính là term của taxonomy tên Category.
- in_category( $args ) Kiểm tra post hiện tại có nằm trong category nào hay không.
- is_404() Kiểm tra trang bạn đang truy cập có bị lỗi 404 hay không.
- is_admin() Kiểm tra bạn có đang truy cập vào trang quản trị của WordPress hay không.
- is_archive() Kiểm tra xem bạn có đang truy cập vào trang lưu trữ của bất kỳ một taxonomy nào hay không.
- is_attachment() Kiểm tra xem bạn có đang truy cập vào trang hiển thị tài liệu đính kèm trong post hay không (Media).
- is_author( $args ) Kiểm tra bạn có đang xem trang lưu trữ của một tác giả nào đó hay không.
- is_child_theme() Kiểm tra nếu theme hiện tại đang sử dụng là child theme hay theme bình thường.
- is_comments_popup() Kiểm tra trang hiện tại đang truy cập có phải là trang popup của comment hay không.
- is_date() Kiểm tra trang đang truy cập có phải là trang lưu trữ dạng ngày tháng hay không.
- is_day() Kiểm tra xem trang bạn đang xem có phải là trang lưu trữ theo ngày hay không.
- is_feed() Kiểm tra xem đối tượng bạn đang xem có thuộc trang RSS Feed hay không.
- is_front_page() Kiểm tra xem trang hiện tại bạn đang xem có phải là trang chủ mà đã được thiết lập trong Settings -> Reading hay không.
- is_home() Kiểm tra xem trang hiện tại của bạn có là trang chủ hay không. Kết quả sẽ trả về là TRUE nếu bạn không thiết lập trang chủ trong Settings -> Reading hoặc bạn thiết lập một trang trở thành Post page trong Settings -> Reading.
- is_month() Kiểm tra xem trang đang xem có phải là trang lưu trữ theo háng hay không.
- is_multi_author() Kiểm tra xem website đang truy cập có nhiều hơn 1 tác giả đăng bài hay không.
- is_multisite() Kiểm tra xem trang hiện tại có phải là WordPress Multisite hay không.
- is_main_site( $args ) Kiểm tra xem trang hiện tại có phải là website chính trong mạng WordPress Multiste hay không.
- is_page( $args ) Kiểm tra trang hiện tại có phải thuộc Page hay không.
- is_page_template( $args ) Kiểm tra page hiện tại có dùng Page Template hay không.
- is_paged() Kiểm tra xem trang hiện tại có được phân trang hay không. Không áp dụng cho Post và Page.
- is_preview() Kiểm tra xem trang bạn đang xem có phải là trang xem thử bài viết ở chế độ viết nháp hay không.
- is_rtl() Kiểm tra ngôn ngữ đang sử dụng cho website có thuộc danh sách các quốc gia sử dụng bố cục đọc từ phải trang trái hay không. Ví dụ như tiếng Ả Rập sẽ đọc từ phải sang trái.
- is_search() Kiểm tra trang đang xem có phải là trang hiển thị kết quả tìm kiếm hay không.
- is_single( $args ) Kiểm tra xem trang hiện tại có phải là trang hiển thị chi tiết nội dung của bất kỳ post type nào hay không. Chỉ áp dụng cho các post type có tham số Hierarchical là True, tức là giống Post.
- is_singular( $args ) Kiểm tra xem trang hiện tại có phải là trang hiển thị chi tiết nội dung của bất kỳ post type nào hay không, nó giống như is_single() nhưng áp dụng cho toàn bộ loại post type và nó cũng sẽ trả kết quả là TRUE nếu như is_single(), is_page() và is_attachment() trả kết quả về là TRUE.
- is_sticky( $args ) Kiểm tra xem post đang xem có đang được đánh dấu vào nút Sticky hay không.
- is_super_admin( $args ) Kiểm tra thành viên đang truy cập có phải là Super Admin hay không.
- is_tag( $args ) Kiểm tra xem trang hiện tại có phải là trang hiển thị danh sách bài viết của một tag nào đó không.
- is_tax( $args ) Trả về TRUE nếu trang hiện tại là trang hiển thị danh sách bài viết của một taxonomy nào đó.
- username_exists( $args ) Kiểm tra sự tồn tại của một username.
- is_taxonomy_hierarchical( $args ) Kiểm tra một taxonomy nào đó có được bật tính năng hierarchical hay không.
- is plugin active( $args ) Trả về TRUE nếu một plugin nào đó được kích hoạt.
- in_the_loop() Kiểm tra đối tượng hiện tại có đang nằm trong loop không.
- is_activate_sidebar( $args ) Kiểm tra một sidebar nào đó có đang được sử dụng hay không.
- is_activate_widget( $args ) Kiểm tra một widget nào đó có đang được sử dụng (đưa vào sidebar) không.
- is_dynamic_sidebar() Kiểm tra sidebar xem nó đã được thêm widget chưa.
- is_user_logged_in() Kiểm tra người đang xem có phải là thành viên đã đăng nhập hay không.
- wp_is_mobile() Kiểm tra thiết bị đang truy cập có phải là điện thoại di động hay không.
Tổng kết:
Hôm nay Congtyannhien đã giới thiệu cho các bạn về những hàm hay dùng trong lập trình theme wordpress. Đây là những kiến thức ban đầu cho việc làm quen cũng như dễ tiếp cận với việc tạo theme sau này.