[2021] Áp dụng filters trong WordPress. Sử dụng Filter Hook đúng cách

Trong bài viết này, chúng ta sẽ khám phá sự quan trọng của việc áp dụng filters trong WordPress và cách sử dụng Filter Hook một cách chính xác. Filters, cùng với action hooks, đóng vai trò quan trọng trong việc mở rộng tính năng của WordPress mà không cần can thiệp vào mã nguồn gốc của plugin, theme hoặc core WordPress. Filters giúp chúng ta linh hoạt thay đổi kết quả đầu ra theo ý muốn mà không cần thay đổi mã nguồn gốc. Trong bài viết này, chúng ta sẽ cùng tìm hiểu về Filter Hook và cách sử dụng apply_filters trong WordPress.

Filter Hook là gì?

Filter Hook giống như một điểm neo, cho phép chúng ta thay đổi dữ liệu đầu ra một cách linh hoạt mà không cần can thiệp vào mã nguồn gốc. Khi sử dụng API Filter Hook trong WordPress, chúng ta có thể tùy chỉnh các tính năng mà không cần thay đổi mã nguồn ban đầu.

Nếu bạn là một nhà phát triển theme hoặc plugin, hãy chú ý tạo ra các điểm neo với Filter Hook. Điều này giúp người dùng dễ dàng tùy chỉnh theme hoặc plugin của bạn.

Xem thêm  43 câu hỏi & 4 bước Vẽ Chân Dung Khách Hàng | Template mẫu

Bạn đang đọc: [2021] apply_filters trong wordpress. Cách dùng Filter Hook

apply_filters trong wordpress. Cách dùng Filter Hook

Sử dụng apply_filters trong wordpress. Cách dùng filter hook

Trong Filter Hook, chúng ta quan tâm đến hai hàm quan trọng: apply_filters() và add_filter().

  • apply_filters trong wordpress giúp tạo ra điểm neo để bạn có thể thay đổi dữ liệu đầu ra.
  • add_filter trong wordpress giúp bạn thay đổi dữ liệu đầu ra tại vị trí mà bạn sử dụng apply_filters trong wordpress.

Dưới đây là một ví dụ nhỏ về cách sử dụng apply_filters trong wordpress để tạo điểm neo và sử dụng add_filter trong wordpress để thay đổi dữ liệu đầu ra tại điểm neo đó.

Sử dụng apply_filters ( bạn sử dụng ở nơi muốn xuất dữ liệu ) :

$text = 'Xin chào bạn';
echo apply_filters( 'chuanseoweb_hello_world', $text );

Sử dụng add_filter để thay đổi đoạn chữ trên mà không cần thay đổi mã nguồn ban đầu. Bạn sử dụng trong file function.php của theme:

add_filter('chuanseoweb_hello_world', 'csw_change_text');
function csw_change_text( $text ) {
  $text = 'Thay đổi nội dung';
  return $text;
}

Ở đây, bạn cần chú ý đến tên “chuanseoweb_hello_world” đó là Filter Hook bạn tạo ra như một điểm neo. Trong trường hợp bạn muốn thay đổi nội dung đầu ra trong core, bạn cần biết tên này và sử dụng hàm add_filter. Bạn có thể đặt tên “csw_change_text” tùy ý sao cho dễ hiểu.

Xem thêm: Thị phần là gì? Cách xác định thị phần tương đối

Bạn hoàn toàn có thể tìm hiểu thêm danh sách các Filter Hook trong WordPress tại đường link sau: Filter Hook list codex

Xem thêm  Top 6 Phần Mềm Lập Kế Hoạch Được Đánh Giá Cao Hiện Nay

Đây là ví dụ về cách bạn tạo ra điểm neo với apply_filter và thay đổi với add_filter. Sau đây, chúng ta sẽ xem ví dụ về việc thay đổi tiêu đề bài viết theo id. Nghĩa là với một số bài viết, chúng ta muốn tiêu đề của chúng thay đổi theo ý muốn của mình. Chúng ta sử dụng filter “the_title” được WordPress cung cấp. Bạn chỉ cần thêm đoạn mã sau vào file “function.php”:

add_filter('the_title', 'csw_change_title', 10, 2);
function csw_change_title($title, $id) {
  $arr_id_change_title = [1,2,5,18];
  if( in_array($id, $arr_id_change_title) ) {
    $title = $title. ' - Chuẩn Seo Web';
  }     
  return $title;
}
  • “the_title” là tên hook, là điểm neo mà core WordPress tạo sẵn bằng hàm apply_filter.
  • “csw_change_title” là tên hàm bạn thêm tùy ý để dễ hiểu.
  • 10 là độ ưu tiên của hàm mà bạn sử dụng. Với một điểm neo, bạn có thể sử dụng nhiều add_filter. Độ ưu tiên này cho phép bạn biết hàm nào chạy trước và hàm nào chạy sau.
  • 2 là số lượng tham số bạn truyền vào. Ở đây, chúng ta truyền cả hai tham số là $title và $id.
  • Chúng ta muốn nối chuỗi “Chuẩn Seo Web” vào tiêu đề. Đối với các bài viết có id là 1, 2, 5, 18. Bạn có thể thay đổi theo ý muốn của mình.

Một số hàm Filter khác bạn nên biết

Ngoài hai hàm quan trọng nhất là add_filter và apply_filters trong WordPress, bạn cũng nên biết một số hàm khác liên quan đến filter. Chúng sẽ giúp bạn nhiều trong quá trình phát triển theme hoặc plugin.

Xem thêm  Bí mật về sàn giao dịch ASX Markets, Review đánh giá sàn giao dịch ASX Markets đầy đủ và chi tiết nhất

Loại bỏ một hàm đang kết nối vào Filter Hook:

Bạn sử dụng hàm remove_filter( $hook_name, $callback, $priority )

  • $hook_name là tên hook.
  • $callback là tên hàm mà bạn muốn loại bỏ khỏi $hook_name.
  • $priority là thứ tự ưu tiên để xác định hàm nào sẽ được loại bỏ trước. Bạn có thể để trống tham số này với giá trị mặc định là 10.

Loại bỏ tất cả các hàm đã kết nối vào một Filter Hook:

Bạn sử dụng remove_all_filters( $hook_name, $priority )

  • $hook_name là tên hook.
  • $priority là số thứ tự ưu tiên. Giá trị mặc định là false.

Kiểm tra xem hook có tồn tại hay không:

Bạn sử dụng hàm has_filter( $hook_name, $callback )

  • $hook_name là tên hook.
  • $callback là tên hàm callback có đang kết nối vào $hook_name hay không. Bạn có thể để trống tham số này với giá trị mặc định là false.

Kết Luận

Qua bài viết này, chúng ta đã tìm hiểu cách sử dụng Filter Hook, apply_filters và add_filter trong WordPress. Mong rằng bài viết đã giúp bạn hiểu rõ hơn về cách sử dụng filters trong WordPress. Nếu bạn có bất kỳ câu hỏi hoặc khó khăn nào, hãy để lại phản hồi bên dưới. Cảm ơn bạn đã theo dõi bài viết!

Source: https://wikifin.net – Category: Blog