Cách dùng Filter Hook trong WordPress

Hướng dẫn tính năng Custom Field cơ bản

Ở phần trước chúng ta đã tìm hiểu qua một loại hook thông dụng trong WordPress là Action Hook. Nhưng bên cạnh Action Hook, chúng ta còn một loại hook nữa cũng sử dụng rất thường xuyên và đóng vai trò quan trọng không kém khi lập trình trong WordPress, đó là Filter Hook.

Filter Hook là gì?

Filter Hook nghĩa là một điểm neo được khai báo trong mã nguồn WordPress, plugin hoặc theme để chúng ta có thể sửa lại kịch bản PHP tại nơi mà điểm neo đó đã được khai báo.

Cách sử dụng Filter Hook

Filter Hook được khai báo bằng hàm apply_filters() như thế này (có thể đặt thử vào template footer.php):


    <?php
        $copyright="Design by ThachPham";
        echo apply_filters( 'thachpham_copyright', $copyright );
    ?>

Như bạn thấy, thay vì echo cái biến $copyright ra thì mình sẽ cho biến này vào hàm apply_filters(), trong đó thachpham_copyright là tên Filter Hook của mình.

Bây giờ mình muốn nó không echo cái $copyright nữa mà sẽ là biến khác do tự đặt lại thì chúng ta không cần sửa trực tiếp vào code trên mà có thể tạo ra một hàm callback rồi sử dụng hàm add_filter() để gọi nó. Và nhắc lại, đây không phải là template tag nên cho vào functions.php của theme hoặc plugin của bạn.


function thachpham_change_copyright( $output ) {
    $output="Design by WordPress";
    return $output;
}
add_filter( 'thachpham_copyright', 'thachpham_change_copyright' );

Bây giờ bạn thấy, cái dòng Design by ThachPham đã được thay thế thành chuỗi dữ liệu mới là Design by WordPress thông qua việc filter.

Filter này chỉ đơn giản là chúng ta khai báo tham số bất kỳ trong hàm callback, nó sẽ tự hiểu đây là hàm chứa dữ liệu, sau đó ở trong hàm chúng ta gán cho nó một giá trị mới và return về, cuối cùng là dùng add_filter() móc vào cái filter hook cần thay đổi.

Một số ví dụ Filter Hook trong WordPress

Cũng giống như Action Hook, WordPress có một số filter hook có sẵn mà bạn có thể sử dụng. Ở đây mình sẽ nói qua một vài filter hook điển hình để bạn thực hành.

the_content

Hook này sẽ giúp chúng ta lọc lại nội dung hiển thị ra bên ngoài. Chúng ta thử áp dụng nó vào việc in đậm một từ khoá nào đó bằng việc kết hợp hàm str_replace() trong PHP nhé.


function thachpham_content_filter( $content ) {
    $find = 'hello';
    $replacement = "<strong>hello</strong>";
    $content = str_replace( $find, $replacement, $content );
    return $content;
}
add_filter( 'the_content', 'thachpham_content_filter' );

wp_handle_upload_prefilter

Hook này sẽ được gọi ra để lọc lại tập tin upload lên Media Library của WordPress. Dựa vào hook này, bạn có thể sử dụng tham số $file để đổi tên tập tin sau khi upload lên server.


<?php
add_filter('wp_handle_upload_prefilter', 'custom_upload_filter' );

function custom_upload_filter( $file ){
    $file['name'] = 'wordpress-is-awesome-' . $file['name'];
    return $file;
}

?>

Lời kết

Cũng đơn giản phải không nào? Chỉ cần chịu khó đọc kỹ một xíu và siêng tìm đọc code trong WordPress, bạn có thể biết sử dụng một số filter có sẵn của nó rất hay để phục vụ mục đích của mình, nó cũng đơn giản giống như Action Hook thôi chứ không có gì cả. Nhưng từ cái đơn giản này, bạn có thể sẽ làm được rất nhiều việc, từ việc sử dụng một số theme framework hay tự viết plugin cho riêng mình.

Nguồn: Cách dùng Filter Hook trong 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 &amp; 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 &amp; 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ài chứng chỉ SSL miễn phí từ Let’s Encrypt lên Hosting
Chèn FAQ schema đẹp mắt với Rank Math SEO
Tác giả

Bình luận

Jamesboymn

how to fix ed https://canadaedwp.com ed treatment drugs

Leave a Message

Registration isn't required.

NguyenLp LarTheme