Thay đổi permalink post type WordPress

5 tháng ago, WordPress Plugin, Views
Thay đổi permalink post type WordPress

Giới thiệu về Permalink và Post Type trong WordPress

Permalink, hay còn gọi là liên kết tĩnh, là địa chỉ URL cố định của một bài viết, trang hoặc loại nội dung khác trên website WordPress của bạn. Nó đóng vai trò quan trọng trong SEO (Search Engine Optimization) và trải nghiệm người dùng. Một permalink thân thiện với SEO giúp công cụ tìm kiếm dễ dàng thu thập thông tin và xếp hạng nội dung của bạn, đồng thời giúp người dùng dễ nhớ và chia sẻ liên kết hơn.

Post Type (Loại Bài Viết) là một tính năng mạnh mẽ của WordPress cho phép bạn tổ chức và quản lý các loại nội dung khác nhau trên website của mình. Mặc định, WordPress cung cấp hai loại bài viết chính: “Bài viết” (post) và “Trang” (page). Tuy nhiên, bạn có thể tạo các loại bài viết tùy chỉnh (Custom Post Type) để phù hợp với nhu cầu cụ thể của website, ví dụ như “Sản phẩm” (product) cho một website thương mại điện tử, hoặc “Dự án” (project) cho một website portfolio.

Việc điều chỉnh permalink cho các loại bài viết khác nhau, đặc biệt là các Custom Post Type, là một bước quan trọng để tối ưu hóa SEO và tạo ra một cấu trúc website rõ ràng, dễ điều hướng.

Tại sao cần thay đổi Permalink cho Post Type?

Có nhiều lý do khiến bạn cần thay đổi permalink cho post type trong WordPress:

  • Tối ưu hóa SEO: Permalink thân thiện với SEO chứa các từ khóa liên quan đến nội dung, giúp công cụ tìm kiếm hiểu rõ hơn về chủ đề của bài viết và xếp hạng nó cao hơn.
  • Cải thiện trải nghiệm người dùng: Một permalink dễ nhớ và dễ đọc giúp người dùng dễ dàng chia sẻ liên kết và quay lại website của bạn.
  • Tạo cấu trúc website rõ ràng: Điều chỉnh permalink cho các loại bài viết khác nhau giúp bạn tạo ra một cấu trúc website logic và dễ điều hướng, giúp người dùng và công cụ tìm kiếm dễ dàng tìm thấy nội dung cần thiết.
  • Tránh xung đột URL: Khi bạn có nhiều loại bài viết với tiêu đề tương tự, việc điều chỉnh permalink có thể giúp tránh xung đột URL và đảm bảo rằng mỗi bài viết có một địa chỉ duy nhất.
  • Thương hiệu và tính nhất quán: Bạn có thể muốn điều chỉnh permalink để phản ánh thương hiệu của mình hoặc để đảm bảo tính nhất quán trong cấu trúc URL của website.

Các phương pháp thay đổi Permalink Post Type WordPress

Có một vài phương pháp để thay đổi permalink cho post type trong WordPress. Chúng ta sẽ xem xét các phương pháp phổ biến nhất:

1. Sử dụng Cài đặt Permalink mặc định của WordPress

WordPress cung cấp một số tùy chọn permalink mặc định mà bạn có thể chọn trong trang “Cài đặt > Đường dẫn tĩnh” (Settings > Permalinks). Tuy nhiên, các tùy chọn này thường không đủ linh hoạt để điều chỉnh permalink cho các Custom Post Type.

Các tùy chọn permalink mặc định bao gồm:

  • Plain: Đây là tùy chọn đơn giản nhất, sử dụng ID bài viết trong URL (ví dụ: ?p=123). Nó không thân thiện với SEO và không nên sử dụng trong môi trường sản xuất.
  • Day and name: Sử dụng ngày và tiêu đề bài viết trong URL (ví dụ: /2023/10/27/tieu-de-bai-viet/).
  • Month and name: Sử dụng tháng và tiêu đề bài viết trong URL (ví dụ: /2023/10/tieu-de-bai-viet/).
  • Numeric: Sử dụng ID bài viết dưới dạng số (ví dụ: /archives/123).
  • Post name: Sử dụng tiêu đề bài viết trong URL (ví dụ: /tieu-de-bai-viet/). Đây là tùy chọn phổ biến nhất và được khuyến nghị cho SEO.
  • Custom Structure: Cho phép bạn tạo một cấu trúc permalink tùy chỉnh bằng cách sử dụng các thẻ như %post_id%, %postname%, %category%, %author%, v.v.

Mặc dù bạn có thể sử dụng “Custom Structure” để điều chỉnh permalink, nó thường phức tạp hơn và yêu cầu kiến thức về các thẻ và cách chúng hoạt động.

2. Sử dụng Plugin WordPress

Đây là phương pháp đơn giản và phổ biến nhất để thay đổi permalink cho post type, đặc biệt là các Custom Post Type. Có rất nhiều plugin WordPress miễn phí và trả phí cho phép bạn dễ dàng điều chỉnh permalink mà không cần viết code.

Một số plugin phổ biến bao gồm:

  • Custom Post Type UI: Plugin này cho phép bạn tạo và quản lý Custom Post Type, đồng thời cung cấp các tùy chọn để điều chỉnh permalink của chúng.
  • Rewrite Rules Inspector: Plugin này giúp bạn xem và quản lý các quy tắc rewrite của WordPress, cho phép bạn kiểm tra và điều chỉnh permalink một cách chi tiết.
  • Yoast SEO: Mặc dù là một plugin SEO toàn diện, Yoast SEO cũng cung cấp một số tính năng để điều chỉnh permalink, đặc biệt là cho các bài viết và trang.

Việc sử dụng plugin giúp bạn tiết kiệm thời gian và công sức, đồng thời giảm thiểu rủi ro gây ra lỗi khi chỉnh sửa code trực tiếp.

3. Chỉnh sửa Code trong functions.php (phương pháp nâng cao)

Nếu bạn là một nhà phát triển WordPress hoặc có kiến thức về lập trình PHP, bạn có thể thay đổi permalink cho post type bằng cách chỉnh sửa code trong file functions.php của theme hoặc tạo một plugin tùy chỉnh.

Phương pháp này yêu cầu bạn sử dụng hàm register_post_type() để đăng ký Custom Post Type và chỉ định các tham số như 'rewrite' để điều chỉnh permalink.

Ví dụ, để tạo một Custom Post Type có tên “sach” (sách) với permalink là /sach/%postname%/, bạn có thể sử dụng đoạn code sau trong functions.php:


function register_sach_post_type() {
  $args = array(
    'public' => true,
    'label'  => 'Sách',
    'rewrite' => array( 'slug' => 'sach/%postname%' ),
  );
  register_post_type( 'sach', $args );
}
add_action( 'init', 'register_sach_post_type' );

add_filter( 'post_type_link', 'sach_permalink', 1, 3 );
function sach_permalink( $permalink, $post, $leavename ) {

    if ( strpos( $permalink, '%postname%' ) === FALSE ) return $permalink;

    // Get post
    $post_id = $post->ID;
    $post = get_post($post_id);

    $cats = get_the_terms( $post->ID, 'category' );

    if ( empty( $cats ) ) {
        $category = "uncategorized";
    } else {
        $category = $cats[0]->slug;
    }

    $permalink = str_replace( '%category%', $category, $permalink );
    $permalink = str_replace( '%postname%', $post->post_name, $permalink );

    return $permalink;
}

Lưu ý quan trọng: Chỉnh sửa code trực tiếp có thể gây ra lỗi nếu bạn không cẩn thận. Luôn tạo bản sao lưu (backup) của website trước khi thực hiện bất kỳ thay đổi nào. Ngoài ra, nếu bạn đang sử dụng một theme con (child theme), hãy chỉnh sửa code trong file functions.php của theme con để tránh bị ghi đè khi theme cha được cập nhật.

Hướng dẫn chi tiết thay đổi Permalink sử dụng Custom Post Type UI

Trong phần này, chúng ta sẽ đi sâu vào cách thay đổi permalink cho Custom Post Type sử dụng plugin Custom Post Type UI.

  1. Cài đặt và kích hoạt plugin Custom Post Type UI: Tìm kiếm “Custom Post Type UI” trong kho plugin của WordPress, cài đặt và kích hoạt nó.
  2. Tạo hoặc chỉnh sửa Custom Post Type: Truy cập “CPT UI > Add/Edit Post Types” để tạo một Custom Post Type mới hoặc chỉnh sửa một Custom Post Type đã tồn tại.
  3. Tìm đến mục “Rewrite”: Trong trang chỉnh sửa Custom Post Type, cuộn xuống mục “Rewrite”.
  4. Chỉnh sửa “Slug”: Trong ô “Slug”, nhập slug bạn muốn sử dụng cho Custom Post Type của mình. Ví dụ: nếu bạn muốn permalink là /du-an/ten-du-an/, hãy nhập “du-an” vào ô này.
  5. Bật “With Front”: Tùy chọn “With Front” xác định xem bạn có muốn thêm tiền tố (ví dụ: tên category) vào permalink hay không. Nếu bạn muốn permalink bắt đầu trực tiếp với slug bạn đã nhập, hãy tắt tùy chọn này.
  6. Chỉnh sửa “Custom Rewrite Slug”: Nếu bạn muốn điều chỉnh permalink chi tiết hơn, bạn có thể sử dụng ô “Custom Rewrite Slug”. Ví dụ: bạn có thể sử dụng du-an/%postname%/ để tạo permalink như /du-an/ten-du-an/.
  7. Lưu thay đổi: Nhấn nút “Save Post Type” để lưu các thay đổi của bạn.
  8. Cập nhật Permalink: Truy cập “Cài đặt > Đường dẫn tĩnh” (Settings > Permalinks) và nhấn nút “Lưu thay đổi” (Save Changes) để WordPress cập nhật lại các quy tắc rewrite và áp dụng các thay đổi permalink của bạn. Bước này rất quan trọng để đảm bảo rằng permalink mới hoạt động chính xác.

Lời khuyên và lưu ý quan trọng

  • Lập kế hoạch trước: Trước khi thay đổi permalink, hãy lên kế hoạch cẩn thận và xem xét tác động của việc thay đổi đối với SEO và trải nghiệm người dùng.
  • Sử dụng chuyển hướng 301: Nếu bạn thay đổi permalink của một trang hoặc bài viết đã có, hãy sử dụng chuyển hướng 301 (301 redirect) để chuyển hướng người dùng và công cụ tìm kiếm từ URL cũ sang URL mới. Điều này giúp tránh mất lưu lượng truy cập và duy trì thứ hạng SEO.
  • Kiểm tra kỹ lưỡng: Sau khi thay đổi permalink, hãy kiểm tra kỹ lưỡng tất cả các liên kết trên website của bạn để đảm bảo rằng chúng hoạt động chính xác.
  • Sao lưu website: Luôn tạo bản sao lưu (backup) của website trước khi thực hiện bất kỳ thay đổi nào, đặc biệt là khi chỉnh sửa code trực tiếp.
  • Tìm hiểu về Rewrite Rules: Nếu bạn muốn điều chỉnh permalink một cách chi tiết, hãy tìm hiểu về Rewrite Rules trong WordPress.

Kết luận

Thay đổi permalink post type trong WordPress là một việc quan trọng để tối ưu hóa SEO và cải thiện trải nghiệm người dùng. Bằng cách sử dụng các phương pháp đã được trình bày trong bài viết này, bạn có thể dễ dàng điều chỉnh permalink cho các loại bài viết khác nhau và tạo ra một cấu trúc website rõ ràng và dễ điều hướng. Hãy nhớ lập kế hoạch cẩn thận, sử dụng chuyển hướng 301 khi cần thiết và kiểm tra kỹ lưỡng sau khi thay đổi để đảm bảo rằng mọi thứ hoạt động chính xác.