Một số action hooks và filters cực hay cho WordPress

Các WordPress Action Hooks và WordPress Filters là vô cùng hữu dụng trong WordPress. Chúng cho phép bạn “hook” một hàm tùy chỉnh nào đó vào một hàm có sẵn, giúp bạn thay đổi các chức năng của WordPress mà không cần phải chỉnh sửa các tập tin cốt lõi trong WordPress.

Wordpress Action Hooks Filters Một số action hooks và filters cực hay cho WordPress

Bài viết hôm nay mình sẽ giới thiệu với các bạn 8 WordPress Action Hooks và WordPress Filters cực hay để các bạn vọc với WordPress của mình.
8 WordPress Action Hooks và WordPress Filters cực hay
Ngăn chặn việc tự động nén ảnh
Mặc định, WordPress nén các ảnh jpg của bạn khi bạn tải chúng lên trang web của bạn. Việc làm này là hữu dụng vì nó giúp tích kiệm băng thông và thời gian tải trang, nhưng đôi lúc bạn lại muốn hiển thị hình ảnh với chất lượng gốc (đặc biệt là các nhiếp ảnh gia sử dụng WordPress để trưng bày các sản phẩm của họ)
Sao chép và dán đoạn code dưới đây vào trong tập tin function.php của WordPress Theme mà bạn đang sử dụng để xóa bỏ chức năng tự động nén ảnh:
add_filter('jpeg_quality', function($arg){return 100;});


Thêm target=”blank” vào tất cả các liên kết trong trang web

Nếu bạn muốn bạn đọc của mình khi nhấp chuột vào một đường dẫn nào đó trong trang web của bạn, chỉ cần thêm đoạn code dưới đây vào trong tập tin function.php của WordPress Theme mà bạn đang sử dụng:/*

function afublog_tu_dong_target_blank($text) {
    $return = str_replace('<a', '<a target="_blank"', $text);
    return $return;
}
add_filter('the_content', 'afublog_tu_dong_target_blank');
*/

Thêm trường thông tin liên lạc vào trong hồ sơ cá nhân của người dùng

Mặc định WordPress cho phép người dùng thêm AIM vào trong hồ sơ cá nhân của họ, tuy nhiên lại không hỗ trợ Facebook hay Twitter.
Để thêm trường thông tin liên lạc vào trong hồ sơ cá nhân của người dùng, chỉ cần thêm đoạn code dưới đây vào trong tập tin function.php của WordPress Theme mà bạn đang sử dụng:
(Đoạn code dưới đây giúp thêm 2 trường thông tin Facebook và Twitter)
function afublog_them_thong_tin_lien_he($user_contactmethods){
  $user_contactmethods['twitter'] = 'Twitter Username';
  $user_contactmethods['facebook'] = 'Facebook Username';
 
  return $user_contactmethods;
}
 
add_filter('user_contactmethods', 'afublog_them_thong_tin_lien_he');

Hiển thị tin nhắn khẩn cấp trong Bảng thông tin (Dashboard) của WordPress

Nếu bạn muốn hiển thị một tin nhắn khẩn cấp nào đó cho người dùng trong Bảng thông tin, chỉ cần thêm đoạn code dưới đây vào trong tập tin function.php của WordPress Theme mà bạn đang sử dụng:
function afublog_hien_thi_tin_nhan($message, $errormsg = false){
    if ($errormsg) {
        echo '<div id="message">';
    } else {
        echo '<div id="message">';
    }
 
    echo "<p><strong>$message</strong></p></div>";
} 
 
function afublog_khoi_tao_tin_nhan() {
    afublog_hien_thi_tin_nhan("Nội dung tin nhắn.", true);
 
    if (user_can('manage_options') {
       afublog_hien_thi_tin_nhan("Hello admins!");
    }
}
 
add_action('admin_notices', 'afublog_khoi_tao_tin_nhan');

Tự động thay thế chữ trong các bài viết của bạn

Nếu bạn muốn thay đổi 1 từ hoặc 1 cụm từ nào đó trong bài viết của bạn, thay vì phải mở từng bài viết một ra xem, tìm kiếm và thay thế thì bạn chỉ cần thêm đoạn code dưới đây vào trong tập tin function.php của WordPress Theme mà bạn đang sử dụng:
function afublog_thay_the_tu($text){
    $replace = array(
        // 'TỪ CẦN THAY THẾ' => 'TỪ THAY THẾ'
        'abc' => '<a href="#">afublog.com</a>',
        'def' => '<a href="#">all4youblog</a>'
    );
    $text = str_replace(array_keys($replace), $replace, $text);
    return $text;
}
 
add_filter('the_content', 'afublog_thay_the_tu');
add_filter('the_excerpt', 'afublog_thay_the_tu');

Thêm hình thu nhỏ vào trong RSS feed cho mỗi bài viết

Nếu bạn muốn hiển thị hình ảnh thu nhỏ cho mỗi bài viết trong RSS Feed của bạn, chỉ cần thêm đoạn code dưới đây vào trong tập tin function.php của WordPress Theme mà bạn đang sử dụng:
function afublog_them_hinh_thu_nho_trong_rss($content) {
    global $post;
    if(has_post_thumbnail($post->ID)) {
        $content = '<p>' . get_the_post_thumbnail($post->ID) .
        '</p>' . get_the_content();
    }
 
    return $content;
}
add_filter('the_excerpt_rss', 'afublog_them_hinh_thu_nho_trong_rss');
add_filter('the_content_feed', 'afublog_them_hinh_thu_nho_trong_rss');

Chế độ bảo trì nhanh

Đôi lúc bạn muốn ngừng trang web của bạn lại để bảo dưỡng. Có rất nhiều WordPress plugin giúp bạn thực hiện công việc này, tuy nhiên nếu bạn không muốn sử dụng plugin, hãy thêm đoạn code dưới đây vào trong tập tin function.php của WordPress Theme mà bạn đang sử dụng:
(chế độ bảo dưỡng sẽ không hiển thị cho người dùng là quản trị viên (admin) hoặc những người dùng đang đăng nhập)
function afublog_che_do_bao_tri() {
    if ( !current_user_can( 'edit_themes' ) || !is_user_logged_in() ) {
        wp_die('Trang web tạm thời đang được bảo trì. Xin vui lòng quay trở lại sau.');
    }
}
add_action('get_header', 'afublog_che_do_bao_tri');

Xóa bỏ autolink trong phản hồi

Để tránh bị spam liên kết trong phản hồi, bạn chỉ cần vô hiệu hóa chức năng autolink của WordPress, hãy thêm đoạn code dưới đây vào trong tập tin function.php của WordPress Theme mà bạn đang sử dụng:
remove_filter('comment_text', 'make_clickable', 9);
SHARE

Unknown

  • Image
  • Image
  • Image
  • Image
  • Image

0 comments:

Post a Comment