Tìm hiểu các hàm điều kiện của WordPress

Tắt toàn bộ plugin trong WordPress không cần đăng nhập

Trong lập trình nói chung, các điều kiện rẽ nhánh là một tính năng không thể thiếu trong bất kỳ ngôn ngữ lập trình nào vì hầu như việc sử dụng các điều kiện để rẽ nhánh các hành động làm việc được sử dụng khá thường xuyên. Chẳng hạn như nếu số A có giá trị bằng 0 thì hành động 1 sẽ được thực thi và ngược lại.

Quay về với WordPress, chúng ta có thể sử dụng điều kiện rẽ nhánh trong PHP để làm việc như nếu trang hiện tại là trang A thì hành động sẽ thực thi, vậy làm thế nào để WordPress có thể hiểu được trang hiện tại đang thực thi là trang A? Rất dễ dàng để thực hiện việc kiểm tra này, thậm chí phải gọi là rất dễ thông qua các hàm điều kiện của WordPress. Hàm điều kiện trong WordPress nghĩa là một hàm được build sẵn trong mã nguồn để trả về giá trị là TRUE hay FALSE trong từng thời điểm tương ứng.

Chẳng hạn bạn có thể sử dụng các hàm điều kiện này để kiểm tra category A có post hay không, trang hiện tại là trang bài viết hay trang chủ,…Nếu bạn là người mới dùng WordPress, không có nhu cầu tìm hiểu sâu vào mã nguồn thì vẫn có rất nhiều cơ hội sử dụng các hàm điều kiện này, ý tưởng thực tiễn nhất là kiểm tra trang để ẩn/hiện widget tùy ý bằng plugin Widget Logic.

Tổng quan hàm điều kiện

Đã gọi là hàm điều kiện thì giá trị trả về của tất cả hàm này chỉ có TRUE hoặc FALSE, nếu kết quả trả về là TRUE thì là thỏa điều kiện và FALSE là không thỏa điều kiện. Các hàm này đa phần là bắt đầu bằng chữ is (kiểm tra xem đối tượng của phải là cái gì đó) và có một vài hàm bắt đàu bằng chữ has (kiểm tra đối tượng có một cái gì đó hay không) hoặc có kèm chữ exist (kiểm tra đối tượng có tồn tại hay không). Dễ hiểu nhất thì nên lấy ví dụ là hàm is_home(), hàm này sẽ kiểm tra xem trang đang thực thi có phải là trang chủ hay không.

Cách dùng hàm điều kiện

Hàm điều kiện có chức năng là trả về giá trị TRUE hoặc FALSE, do đó ta sử dụng nó như một giá trị kiểm tra trong cú pháp điều kiện rẽ nhánh trong PHP. Ví dụ mình muốn hiển thị chữ “Chào mừng các bạn” ở trang chủ nhưng không hiển thị ở các trang khác thì sẽ có code như sau:


	if ( is_home() ) {
		echo "Chào mừng các bạn";
	}

Nếu bạn biết qua PHP rồi thì đoạn trên cực kỳ dễ hiểu. Tức là hàm is_home() sẽ có nhiệm vụ kiểm tra xem trang khách đang truy cập có phải là trang chủ hay không, nếu kết quả hàm is_home() trả về là TRUE thì thực thi từ khóa echo phía dưới để hiển thị chữ “Chào mừng các bạn”, nếu là FALSE thì không làm gì cả.

Chúng ta cũng có thể sử dụng nhiều hàm điều kiện cho một lần kiểm tra:


	if ( is_home() && is_user_logged_in() ) {
		echo "Chào mừng thành viên";
	}

Đoạn trên nghĩa là chúng ta thêm 2 điều kiện vào, một là is_home() để kiểm tra trang chủ và hai là is_user_logged_in() để kiểm tra thành viên đó có đăng nhập hay không. Lưu ý một điều, ký tự && nghĩa là , tức là phải thỏa mãn cả 2 điều kiện thì hành động mới được thực thi. Bạn có thể sử dụng cú pháp || (tức là HOẶC) để đặt 2 điều kiện và chỉ cần thỏa mãn 1 trong 2 là hành động thực thi.

Trong một vài trường hợp, có thể bạn cần kiểm tra ngược lại, ví dụ nếu trang hiện tại KHÔNG PHẢI (NOT) là trang chủ thì sẽ thực hiện một việc gì đó. Để làm việc kiểm tra đó, bạn sẽ cần gán thêm ký tự ! (dấu chấm cảm) ở trước hàm điều kiện. Ví dụ:


	if ( !is_home() ) {
		echo "Bạn không đang ở trang chủ";
	}

Tham số trong hàm điều kiện

Tất cả các hàm điều không phải cái nào cũng có tham số nhưng có rất nhiều hàm điều kiện cho phép chúng ta kiểm tra từng giá trị riêng lẻ trong đối tượng đó. Ví dụ nếu bạn cần kiểm tra xem trang hiện tại có phải là category 123 hay không thì sẽ dùng đến nó. Nhưng bạn có thể không điền tham số nếu không cần thiết vì nó không bắt buộc.

Tất cả hàm điều kiện đều cho phép bạn đặt tham số với 3 kiểu dữ liệu là chuỗi ký tự (String), số (Numeric) và mảng (Array) và mỗi kiểu giá trị đều có ý nghĩa riêng của nó. Ví dụ, mình muốn kiểm tra xem post hiện tại họ đang xem có phải là post có số ID là 69 hay không thì mình sẽ viết code như sau:


	if ( is_single( 69 ) ) {
		echo "Hiện quảng cáo 69 đê";
	}

Hoặc chúng ta sẽ chèn thêm một cái array vào để kiểm tra cùng lúc nhiều post:


	if ( is_single( array( 69,96 ) ) ) {
		echo "Hiện quảng cáo 69 và 96 đê";
	}

Cũng xin nói thêm rằng, cụm từ Post mà mình nhắc đến trong đây là nó bao gồm Custom Post Type và cái Post mặc định vì bạn có thể điền ID của bất cứ post type nào bạn cần kiểm tra.

Kiểm tra slug của một category nào đó với kiểu dữ liệu string:


	if ( is_category( 'thu-thuat' ) ) {
		echo "Bạn đang ở category Thủ thuật";
	}

Danh sách các hàm điều kiện của WordPress

Nãy giờ chắc bạn cũng thắc mắc là làm sao để biết WordPress đang hỗ trợ hàm điều kiện nào đúng không? Đây, nó ở ngay đây, mình sẽ thiệt kê ra và kèm chú thích cho các bạn hiểu chức năng. hàm nào mình có kèm thêm $args bên trong nghĩa là hàm đó có hỗ trợ tham số.

  •  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. Ngoài ra bạn có thể có thêm được nhiều hàm có chức năng tương tự thế này bằng cách cài plugin, xem thêm bài Kỹ thuạt xây dựng Adaptive Theme.

Sử dụng với Widget Logic

Widget Logic là plugin cho phép bạn điều khiển việc hiển thị từng widget ở những trang mà mình cần cho widget hiển thị thông qua các hàm điều kiện ở trên, đây là một cách làm quen với hàm điều kiện dành cho những bạn mới học ngại viết nhiều code.

Sử dụng Widget Logic cũng khá đơn giản, sau khi kích hoạt plugin thì bạn sẽ cần mở widget cần thêm hàm điều kiện ra và viết hàm điều kiện ở bên dưới phần Widget Logic.

widget-logic

Lời kết

Ở bài này mình đã nói qua khá chi tiết và đầy đủ về các hàm điều kiện có sẵn trong WordPress và có thể nó sẽ rất có ích cho bạn trong nhiều bài toán khác nhau cần xử lý. Thực ra đây là vấn đề khá đơn giản mà mình từng nghĩ chắc nhiều người cũng biết nên mình đã không nói qua, ai ngờ lại nhận được khá nhiều câu hỏi liên quan nên mình viết bài cụ thể luôn.

Nguồn: Tìm hiểu các hàm điều kiện của WordPress | Thạch Phạm

Categories: Content Marketing, Digital Marketing, Google Ads, Kinh doanh, PHP, SEO, Server - Hosting, WordPress, WordPress Development, Wordpress Plugin, WordPress Theme, Wordpress Tutorial,
Tags: baemin, bán hàng online, bán hàng online trên facebook, bán hàng qua facebook, bán hàng quần áo, bán hàng thời trang, bán hàng trên baemin, bán hàng trên facebook, bán hàng trên fanpage, bán hàng trên grab, bán hàng trên marketplace, bán hàng trên now, bán hàng trên tiktok, báo cáo kết quả hoạt động kinh doanh, bí quyết kinh doanh online, bít tết Âu việt, black friday, buôn bán hàng thùng, buôn bán hàng thùng tuyển chọn, cách bán hàng online đắt khách, cách bán hàng trên marketplace, cách bán hàng trên tiktok, câu chuyện kinh doanh, câu chuyện thành công, chương trình khuyến mãi, công nghệ phần mềm bán hàng, cửa hàng cafe, cửa hàng minh tuấn mobile, cửa hàng phụ kiện, cửa hàng thời trang, cửa hàng thực phẩm, cửa hàng thực phẩm sạch, doanh số bán hàng, dox garage & coffee, dox garage & coffee, đăng ký bán hàng trên baemin, đăng ký bán hàng trên go food, đăng ký bán hàng trên grab, đăng ký bán hàng trên now, facebook, facebook pos, fanpage, file excel, file excel báo cáo kết quả kinh doanh, file excel quản lý kho, foodngon, go food, go jek, grab, halo mobile, khởi nghiệp, khởi nghiệp kinh doanh, khởi nghiệp kinh doanh thời trang, kinh doanh cafe, kinh doanh điện thoại, kinh doanh điện tử điện máy, kinh doanh đồ handmade, kinh doanh gì sau dịch, kinh doanh mỹ phẩm, kinh doanh mỹ phẩm online, kinh doanh nhà hàng, kinh doanh online, kinh doanh phụ kiện, kinh doanh quán cafe, kinh doanh shop thời trang, kinh doanh siêu thị mini, kinh doanh spa, kinh doanh thành công, kinh doanh thời trang, kinh doanh thời trang trẻ em, kinh doanh thực phẩm, kinh doanh thực phẩm sạch thành công, kinh doanh trên facebook, kinh doanh trên grab, kinh nghiệm bán hàng, kinh nghiệm kinh doanh, làm đồ handmade, lily shop, link kháng tài khoản quảng cáo, lụa tơ tằm bá minh, marketing online, mặt hàng dễ bán, mẹo bán hàng, mẹo bán hàng trên facebook, mẹo hay, ngày black friday năm 2020 là ngày nào?, now, now - foody, phầm mềm quản lý bán hàng miễn phí, phần mềm chốt đơn, phần mềm chốt đơn hàng, phần mềm miễn phí, phần mềm pos, phần mềm quản lý bán hàng, phần mềm quản lý bán hàng đáng tin cậy, phần mềm quản lý bán hàng miễn phí, phụ kiện ben & tony, phụ kiện ben & tony, phụ kiện hà xinh, quán cafe hiệu quả, quản lý cửa hàng, quản lý cửa hàng thời trang, quản lý nhà hàng, quản lý nhân viên, quản lý nhân viên cứng đầu, quản lý nhân viên thời vụ, quảng cáo thương hiệu, shop thời trang, shopee, siêu thị minimart, status, status bán hàng, status quảng cáo mỹ phẩm, stella spa, stt bán hàng online hài hước, stt tương tác bán hàng, t.u.s shop, tài khoản bị vô hiệu hóa, tài khoản facebook, tài khoản facebook bị vô hiệu hóa, tải miễn phí file excel quản lý kho, tăng doanh thu mùa black friday, thời trang kosta, thời trang mine, thời trang tú trần shop, thực phẩm sạch, thực phẩm sạch 02, thực phẩm sạch tâm an, thuê mặt bằng kinh doanh, tiki, tiktok, tú trần shop,
Cách trỏ tên miền về host bằng DNS của host
[Woocommerce] Tìm hiểu các trang trong Woocommerce
Tác giả

Bình luận

Jamesboymn

cure ed https://canadaedwp.com hims ed pills

Leave a Message

Registration isn't required.

NguyenLp LarTheme