Những đoạn code hữu ích cho wordpress

Những đoạn code hữu ích cho wordpress. WordPress là một mã nguồn mở quá tuyệt vời, được sử dụng rộng rãi trên toàn thế giới, có thể làm web blog, web giới thiệu sản phẩm, web âm nhạc vv…, riêng tại Việt Nam cũng có rất nhiều công ty lớn sử dụng wordpress để làm web bán hàng chuyên nghiệp.

Các tính năng của wordpress cung cấp cho chúng ta cũng khá đầy đủ, tuy nhiên có những tính năng chúng ta không cần sử dụng tới, ví dụ như tôi làm web bán hàng thì tôi sẽ không cần dùng tới tính năng biểu tượng cảm xúc, mặc dù chúng ta không dùng nhưng chúng vẫn load các script ra, vậy thì chúng ta nên tắt chúng đi để giúp cho trang web load được nhanh hơn.

Sau đây là những đoạn code hữu ích dành cho wordpress:

1. Tắt script biểu tượng cảm xúc.

// Disable the emoji's
remove_action('wp_head', 'print_emoji_detection_script', 7);
remove_action('wp_print_styles', 'print_emoji_styles');

2. Dọn dẹp phần header gọn gàn.

// Remove auto generated feed links
function dhs_remove_feeds() {
	remove_action( 'wp_head', 'feed_links_extra', 3 );
	remove_action( 'wp_head', 'feed_links', 2 );
	remove_action( 'wp_head', 'rsd_link');
	remove_action( 'wp_head', 'wlwmanifest_link');
	remove_action( 'wp_head', 'wp_generator');
	remove_action( 'wp_head', 'start_post_rel_link');
	remove_action( 'wp_head', 'index_rel_link');
	remove_action( 'wp_head', 'adjacent_posts_rel_link');
	remove_action( 'wp_head', 'wp_shortlink_wp_head');
}
add_action( 'after_setup_theme', 'dhs_remove_feeds' );

3. Ẩn bớt trường điền URL cho comments.

// Remove website field in comments
add_action('comment_form_default_fields', 'remove_website_comment_field');
function remove_website_comment_field($fields)
{
    if (isset($fields['url'])) {
        unset($fields['url']);
    }
    return $fields;
}

4. Quy định số ký tự tối thiểu cho comments. Nếu như một bình luận mà chỉ có 1 hoặc vài từ thì chẳng có ý nghĩa gì, đoạn code dưới đây sẽ giúp bạn quy định ký tự tối thiểu cho 1 bình luận, bạn nhìn thấy con số 70 nghĩa là 70 ký tự, bạn có thể thay đổi nhiều ký tự hơn hoặc ít hơn.

// Requires a minimum length of a comment
add_filter('preprocess_comment', 'minimal_comment_length');
function minimal_comment_length($commentdata)
{
    $minimalCommentLength = 70;
    if (strlen(trim($commentdata['comment_content'])) < $minimalCommentLength) {
        wp_die('All comments must be at least ' . $minimalCommentLength . ' characters long.');
    }
    return $commentdata;
}

5. Không tạo link đường dẫn trong nội dung bình luận. Nếu một ai đó cố tình chèn link vào trong nội dung bình luận thì cũng vô ích, vì nó cũng sẽ hiển thị dạng text thông thường mà thôi, nó không hề có liên kết. Điều này sẽ giúp hạn chế spam link.

// Do not create link path in the comments
remove_filter('comment_text', 'make_clickable', 9);
</pre>
6. Tự động thêm thuộc tính nofollow cho liên kết ngoài. Nếu blog của bạn có nhiều thành viên viết bài, họ có thể chèn liên kết trỏ ra ngoài. Code này sẽ giúp tự động thêm rel=”nofollow” cho mỗi liên kết được chèn vào nội dung.
<pre>
// Add nofollow
function my_nofollow($content)
{
    return stripslashes(wp_rel_nofollow($content));
}
add_filter('the_content', 'my_nofollow');

7. Khi bạn tìm kiếm một bài viết mà trong blog của chúng ta chỉ có 1 bài duy nhất thì nó sẽ ra trực tiếp tới trang xem chi tiết luôn mà không cần thông qua trang kết quả tìm kiếm.

// Redirect to post if there is only one search result
add_action('template_redirect', 'single_search_redirect');
function single_search_redirect()
{
    if (is_search()) {
        global $wp_query;
        if ($wp_query->post_count == 1) {
            wp_redirect(get_permalink($wp_query->posts['0']->ID));
        }
    }
}

8. Tắt chức năng tự động lưu bài nháp.

// Disable post autosave
add_action('wp_print_scripts', 'disable_autosave');
function disable_autosave()
{
    wp_deregister_script('autosave');
}

9. Xóa đi phiên bản nằm phía sau các script, đường link script của chúng ta nhìn sẽ gọn hơn.

// Remove wp version strings
function remove_wp_version_strings($src)
{
    global $wp_version;
    parse_str(parse_url($src, PHP_URL_QUERY), $query);
    if (!empty($query['ver']) && $query['ver'] === $wp_version) {
        $src = remove_query_arg('ver', $src);
    }
    return $src;
}
add_filter('script_loader_src', 'remove_wp_version_strings');
add_filter('style_loader_src', 'remove_wp_version_strings');

10. Thêm thuộc tính tải không đồng bộ, điều này sẽ giúp website của chúng ta tải nhanh hơn, website sẽ load nội dung và css trước, sau đó mới load script. Dưới đây là hai đoạn code giúp tải không đồng bộ, nhưng cách viết khác nhau, bạn chỉ sử dụng một trong hai đoạn thôi nhé, mỗi dấu // là một đoạn.

// Asynchronous load JS
function defer_parsing_of_js ( $url ) {
    if ( FALSE === strpos( $url, '.js' ) ) return $url;
    return "$url' async defer='defer";
}
add_filter( 'clean_url', 'defer_parsing_of_js', 11, 1 );

// Asynchronous load JS
function async_js($tag){
$scripts_to_async = array('jquery.js', 'jquery-migrate.min.js');
foreach($scripts_to_async as $async_script){
    if(true == strpos($tag, $async_script ) )
    return str_replace(' src', ' async="async" src', $tag);    
}
return $tag;
}
add_filter( 'script_loader_tag', 'async_js', 10);

Tổng hợp những đoạn code hữu ích cho wordpress mà tôi vừa chia sẽ ở trên sử dụng bằng cách cho vào file functions.php, hi vọng sẽ giúp ích được cho bạn trong việc tối ưu wordpress.

Thuê Cloud Hosting SSD giá rẻ, Hosing linux giá rẻ