Nhóm lưu trữ: Wordpress

Wordpress, một cái tên không còn xa lạ đối với những người từng hoặc đang sử dụng Blog. Là nền tảng Blog phổ biến nhất hiện nay. Được xây dựng dựa trên nền tảng mã nguồn mở, với sự tham gia của một cộng đồng IT khổng lồ trên khắp hành tinh.

remove-title-categories

Bỏ thuộc tính Title của menu(Categories) WordPress

Ở những website sử dụng mã nguồn WordPress, một điều dễ thấy là khi bạn rê chuột vô menu hay phân loại(Categories) thì thuộc tính Title của thẻ liên kết xuất hiện, như là “View all posts filed under…” hay “View all posts in…”. Đôi khi thuộc tính này không cần thiết và khiến người dùng khó chịu. Hướng dẫn sau sẽ giúp bạn loại bỏ thuộc tính này.

  1. Cách 1: Mở file functions.php trong Theme bạn đang dùng, sau đó copy và paste đoạn code này vào:
    add_filter( 'the_category', 'remove_category_link_prefix' );
    add_filter( 'wp_list_categories', 'remove_category_link_prefix' );
    function remove_category_link_prefix($output) {
            $replace = array( 
                    'View all posts in ',
                    'View all posts filed under ' 
            );
    
            return str_replace( $replace, '', $output);
    }
  2. Cách 2: Mở file functions.php trong Theme bạn đang dùng, sau đó copy và paste đoạn code này vào:
    function remove_title_attributes($output) 
    { 
       $output = preg_replace('` title="(.+)"`', '', $output); return $output; 
    } 
    add_filter('wp_list_categories', 'remove_title_attributes');
    add_filter( 'the_category', 'remove_title_attributes' );
    
  3. Cách 3: Sử dụng Plugin, bạn có thể download 1 trong 2 Plugin sau về và active để sử dụng:
    No Title Tooltips
    Remove Title Attributes

Vậy là bạn có nhiều lựa chọn cho việc sử lý vấn đề này. Chúc bạn thành công.

tu-dong-them--rel-nofollow-va-target-_blank-vao-lien-ket-trong-bai-viet-wordpress

Tự động thêm rel=”nofollow” và target=”_blank” vào liên kết trong bài viết WordPress

Hướng dẫn sau đây sẽ giúp bạn thêm thuộc tính rel với giá trị nofollow cho thẻ liên kết đến các trang web ngoài nằm trong nội dung của bài viết trong WordPress. Hướng dẫn bao gồm sử dụng Plugin và không sử dụng Plugin.

  1. Sử dụng Plugin: Hiện nay có rất nhiều plugin được sử dụng để hỗ trợ chức năng này, tuy nhiên theo kinh nghiệm dùng và thực tiễn sử dụng thì chỉ nên dùng những plugin nhẹ và gọn cho chức năng này. Hướng dẫn này khuyến cáo bạn sử dụng Plugin Nofollow for External Link. Một số điểm nổi bật của Plugin này như sau:
    • Thêm rel=nofollow vào tất cả các liên kết ngoài (external link) có trong bài viết cũng như Pages.
    • Thêm target=_blank(Mở tab mới) vào tất cả các liên kết ngoài có trong bài viết cũng như Pages.
    • Plugin này sẽ không thêm thuộc tính rel=nofollow và target=_blank vào các liên kết nội bộ (internal link) trong bài viết cũng như Pages.
    • Nếu liên kết ngoài đã được thêm thuộc tính target=_blank thì nó sẽ không thêm thuộc tính này lần nữa.

    Bạn có thể download về và cài đặt cho website.

  2. Không sử dụng Plugin: Có nhiều khuyến cáo không nên sử dụng Plugin trên website để giảm tốn kém tài nguyên web cũng như ảnh hưởng đến tốc độ web. Tuy nhiên, đối với Plugin trên thì việc này là không cần thiết vì đây là 1 Plugin đơn giản. Ngoài ra, việc sử dụng Plugin cũng giúp bạn dễ dàng cập nhật phiên bản mới. Đó là một lời khuyên, và bạn có thể không muốn sử dụng Plugin,  vậy bạn có thể làm theo cách sau:
    • Download plugin ở cách 1 về
    • Giải nén plugin đó
    • Mở file nofollow-for-external-link/nofollow-external-link.php
    • Copy đoạn code trong file này, ta có đoạn code như sau:
      add_filter( 'the_content', 'cn_nf_url_parse');
      
      function cn_nf_url_parse( $content ) {
      
      	$regexp = "<a\s[^>]*href=(\"??)([^\" >]*?)\\1[^>]*>";
      	if(preg_match_all("/$regexp/siU", $content, $matches, PREG_SET_ORDER)) {
      		if( !empty($matches) ) {
      
      			$srcUrl = get_option('siteurl');
      			for ($i=0; $i < count($matches); $i++)
      			{
      
      				$tag = $matches[$i][0];
      				$tag2 = $matches[$i][0];
      				$url = $matches[$i][0];
      
      				$noFollow = '';
      
      				$pattern = '/target\s*=\s*"\s*_blank\s*"/';
      				preg_match($pattern, $tag2, $match, PREG_OFFSET_CAPTURE);
      				if( count($match) < 1 )
      					$noFollow .= ' target="_blank" class="ext"';
      
      				$pattern = '/rel\s*=\s*"\s*[n|d]ofollow\s*"/';
      				preg_match($pattern, $tag2, $match, PREG_OFFSET_CAPTURE);
      				if( count($match) < 1 )
      					$noFollow .= ' rel="nofollow" ';
      
      				$pos = strpos($url,$srcUrl);
      				if ($pos === false) {
      					$tag = rtrim ($tag,'>');
      					$tag .= $noFollow.'>';
      					$content = str_replace($tag2,$tag,$content);
      				}
      			}
      		}
      	}
      
      	$content = str_replace(']]>', ']]&gt;', $content);
      	return $content;
      
      }
    • Dán nó vào file functions.php trong theme mà bạn dùng.

    Vậy là xong, bạn có đầy đủ những đặt điểm của Plugin đó mà không cần phải cài đặt Plugin.

Ngoài ra bạn có thể tham khảo bài viết Hướng dẫn thêm thuộc tính rel=nofollow cho liên kết trong website, Chúc bạn thành công.

remove-trang-khoi-ket-qua-tim-kiem

Loại trừ các trang(pages) khỏi kết quả tìm kiếm trong WordPress

Ở các trang sử dụng mã nguồn WordPress, các nội dung dạng trang(pages) như Giới thiệu, Liên hệ… được show ra trong kết quả tìm kiếm là không cần thiết và tạo sự thiếu tập trung vào nội dung tìm kiếm… Hướng dẫn sau đây sẽ giúp bạn khắc phục điều này.

Có 2 hướng để thực hiện điều này:

  1. Loại trừ pages ra khỏi công  cụ tìm kiếm: với cách này, chúng ta gỡ bỏ toàn bộ kiểu pages ra khỏi nội dung tìm kiếm, bạn áp dụng bằng cách thêm đoạn code bên dưới vào file functions.php của theme bạn đang dùng:
    function remove_pages_from_search() {
        global $wp_post_types;
        $wp_post_types['page']->exclude_from_search = true;
    }
    add_action('init', 'remove_pages_from_search');
  2. Hướng thứ 2 là xác định công cụ tìm kiếm chỉ hiển thị kết quả của các bài viết kiểu post:  có nghĩa là mọi từ khóa tìm kiếm chỉ cho ra kết quả là các bài viết. Với cách này kết quả tìm kiếm sẽ tập trung hơn với mục đích tìm kiếm là các bài viết trên trang, áp dụng bằng cách thêm đoạn code sau vào file functions.php của theme bạn đang dùng:
    function search_filter($query) {
    if ($query->is_search) {
    $query->set('post_type', 'post');
    }
    return $query;
    }
    add_filter('pre_get_posts','search_filter');

Tùy mỗi trang, bạn có thể lựa chọn cách áp dụng phù hợp cho trang của mình. Chúc bạn thành công.

bo-rel-category

Bỏ thuộc tính rel=”category tag” trong Categories list WordPress

Hướng dẫn này giúp bạn tháo bỏ thuộc tính rel="category tag" trong danh sách phân loại(category) nhằm gỡ bỏ lỗi HTML trên trang web sử dụng mã nguồn WordPress.

  1. Vấn đề:
    Wordpress là một bộ mã nguồn mở tuyệt vời và có rất nhiều trang web được xây dựng dựa trên mã nguồn WordPress. Nhưng vì một số lý do nào đó mà chúng ta không đào sâu nghiên cứu, mã nguồn này có một số điểm chưa phù hợp. Xét trong trường hợp này là việc tạo ra thuộc tính rel="category tag" cho liên kết khi chức năng “the_category” and “wp_list_categories” được gọi ra. Bạn có thể thấy ở đây, chỉ có giá trị “tag” là phù hợp trong thuộc tính “rel”, còn “category” thì không. Bạn có thể tham khảo thêm thông tin về thuộc tính này tại microformat.org. Điều này tạo ra một lỗi trong W3 Validator. Lỗi này được mô tả là giá trị của thuộc tính “rel” chưa được đăng ký, và yêu cầu bạn gỡ bỏ.
  2. Giải pháp:
    Giải pháp khá đơn giản là bạn chỉ việc thêm đoạn code sau đây vào file functions.php của theme bạn đang dùng:

    function remove_category_rel($output)
    {
        $output = str_replace(' rel="category tag"', '', $output);
        return $output;
    }
    add_filter('the_category', 'remove_category_rel');
    add_filter('wp_list_categories', 'remove_category_rel');
    
  3. Lưu file functions.php lại và kiểm tra trên web của mình. Chúc bạn thành công.