Thêm custom post types vào kết quả tìm kiếm WordPress

4 tháng ago, Hướng dẫn WordPress, Views
Thêm custom post types vào kết quả tìm kiếm WordPress

Giới thiệu: Thêm Custom Post Types vào Kết Quả Tìm Kiếm WordPress

WordPress, một nền tảng quản lý nội dung (CMS) mạnh mẽ và linh hoạt, cho phép bạn tạo ra nhiều loại nội dung khác nhau, không chỉ là bài viết và trang. Những loại nội dung tùy chỉnh này, được gọi là Custom Post Types (CPTs), giúp bạn tổ chức và quản lý nội dung một cách hiệu quả hơn, đặc biệt khi bạn có những thông tin đặc biệt cần trình bày, ví dụ như danh mục sản phẩm, dự án, đánh giá, hoặc sự kiện.

Tuy nhiên, mặc định, WordPress chỉ tìm kiếm trong các bài viết và trang khi người dùng thực hiện tìm kiếm. Điều này có nghĩa là, nếu bạn có nội dung quan trọng được lưu trữ trong các Custom Post Types, người dùng có thể không tìm thấy chúng thông qua chức năng tìm kiếm tiêu chuẩn. Bài viết này sẽ hướng dẫn bạn cách thêm các Custom Post Types vào kết quả tìm kiếm của WordPress, đảm bảo rằng mọi nội dung trên trang web của bạn đều có thể được tìm thấy một cách dễ dàng.

Tại Sao Nên Thêm Custom Post Types Vào Kết Quả Tìm Kiếm?

Việc thêm Custom Post Types vào kết quả tìm kiếm mang lại nhiều lợi ích quan trọng:

  • Cải thiện trải nghiệm người dùng: Người dùng có thể dễ dàng tìm thấy tất cả các loại nội dung mà họ cần, bất kể chúng được lưu trữ ở đâu. Điều này giúp tăng sự hài lòng và giữ chân người dùng trên trang web của bạn.
  • Tăng khả năng khám phá nội dung: Khả năng tìm kiếm toàn diện giúp người dùng khám phá những nội dung mà họ có thể chưa biết đến, đặc biệt là những nội dung quan trọng được lưu trữ trong các CPTs.
  • Tối ưu hóa SEO: Bằng cách đảm bảo rằng tất cả nội dung của bạn có thể được tìm thấy, bạn đang giúp công cụ tìm kiếm lập chỉ mục trang web của bạn một cách toàn diện hơn, từ đó cải thiện thứ hạng SEO.
  • Hiệu quả quản lý nội dung: Bạn có thể quản lý và hiển thị tất cả các loại nội dung một cách nhất quán và hiệu quả hơn.

Các Phương Pháp Thêm Custom Post Types vào Kết Quả Tìm Kiếm

Có nhiều cách khác nhau để thêm Custom Post Types vào kết quả tìm kiếm của WordPress, tùy thuộc vào mức độ kỹ năng lập trình của bạn và nhu cầu cụ thể của trang web.

1. Sử Dụng Code trong `functions.php`

Đây là phương pháp phổ biến nhất và linh hoạt nhất, cho phép bạn tùy chỉnh chính xác các loại Custom Post Types nào sẽ được bao gồm trong tìm kiếm. Bạn sẽ cần chỉnh sửa file `functions.php` của theme đang sử dụng (hoặc theme con để tránh mất các thay đổi khi cập nhật theme).

Bước 1: Mở file `functions.php`

Kết nối đến máy chủ web của bạn bằng FTP hoặc sử dụng trình quản lý file trong hosting. Tìm file `functions.php` trong thư mục theme của bạn (`wp-content/themes/ten-theme-cua-ban/`). Mở file này bằng một trình soạn thảo văn bản.

Bước 2: Thêm đoạn code sau vào file `functions.php`


function them_cpt_vao_tim_kiem( $query ) {
  if ( $query->is_search() ) {
    $query->set( 'post_type', array( 'post', 'page', 'ten_custom_post_type_1', 'ten_custom_post_type_2' ) );
  }
  return $query;
}
add_filter( 'pre_get_posts', 'them_cpt_vao_tim_kiem' );

Bước 3: Thay đổi `’ten_custom_post_type_1’` và `’ten_custom_post_type_2’`

Thay thế `’ten_custom_post_type_1’` và `’ten_custom_post_type_2’` bằng tên của các Custom Post Types mà bạn muốn thêm vào kết quả tìm kiếm. Bạn có thể thêm bao nhiêu Custom Post Types tùy thích, chỉ cần thêm chúng vào mảng `array()`.

Bước 4: Lưu file `functions.php`

Lưu các thay đổi vào file `functions.php` và tải lại trang web của bạn để kiểm tra xem các Custom Post Types đã được thêm vào kết quả tìm kiếm hay chưa.

Ví dụ: Nếu bạn có Custom Post Types tên là `’products’` và `’events’`, đoạn code của bạn sẽ trông như sau:


function them_cpt_vao_tim_kiem( $query ) {
  if ( $query->is_search() ) {
    $query->set( 'post_type', array( 'post', 'page', 'products', 'events' ) );
  }
  return $query;
}
add_filter( 'pre_get_posts', 'them_cpt_vao_tim_kiem' );

2. Sử Dụng Plugin

Nếu bạn không thoải mái khi chỉnh sửa code trực tiếp, bạn có thể sử dụng các plugin có sẵn để thêm Custom Post Types vào kết quả tìm kiếm. Đây là một lựa chọn dễ dàng hơn, đặc biệt cho người mới bắt đầu.

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

  • Search Everything: Plugin này cho phép bạn tùy chỉnh nhiều khía cạnh của chức năng tìm kiếm WordPress, bao gồm cả việc thêm Custom Post Types.
  • Relevanssi: Một plugin tìm kiếm mạnh mẽ, cung cấp kết quả tìm kiếm chính xác hơn và nhiều tính năng tùy chỉnh, bao gồm hỗ trợ cho Custom Post Types.
  • Ivory Search: Một plugin tìm kiếm đơn giản và dễ sử dụng, cho phép bạn thêm Custom Post Types vào kết quả tìm kiếm chỉ với vài cú nhấp chuột.

Hướng dẫn sử dụng plugin (ví dụ: Search Everything):

  1. Cài đặt và kích hoạt plugin Search Everything.
  2. Vào “Settings” -> “Search Everything” trong bảng điều khiển WordPress.
  3. Chọn các Custom Post Types mà bạn muốn bao gồm trong kết quả tìm kiếm.
  4. Lưu các thay đổi.

3. Sử Dụng Code trong Plugin Tùy Chỉnh

Một cách khác là tạo một plugin tùy chỉnh và thêm đoạn code tương tự như trong phương pháp 1 vào plugin đó. Điều này giúp bạn giữ cho các thay đổi của mình được tách biệt khỏi theme, giúp dễ dàng quản lý và cập nhật hơn.

Các bước cơ bản để tạo plugin:

  1. Tạo một thư mục mới trong thư mục `wp-content/plugins/`. Ví dụ: `my-search-enhancements`.
  2. Tạo một file PHP trong thư mục đó, ví dụ: `my-search-enhancements.php`.
  3. Thêm thông tin plugin vào đầu file PHP:
    
    <?php
    /**
     * Plugin Name: My Search Enhancements
     * Description: Adds custom post types to search results.
     * Version: 1.0.0
     * Author: Your Name
     */
    
  4. Thêm đoạn code từ phương pháp 1 vào file PHP, bên dưới thông tin plugin.
  5. Kích hoạt plugin trong bảng điều khiển WordPress.

Lưu Ý Quan Trọng

  • Tạo Child Theme: Khi chỉnh sửa file `functions.php`, hãy luôn tạo một child theme để tránh mất các thay đổi khi cập nhật theme chính.
  • Sao Lưu Trang Web: Trước khi thực hiện bất kỳ thay đổi nào, hãy sao lưu trang web của bạn để có thể khôi phục lại nếu có sự cố xảy ra.
  • Kiểm Tra Kỹ Lưỡng: Sau khi thực hiện các thay đổi, hãy kiểm tra kỹ lưỡng chức năng tìm kiếm để đảm bảo rằng mọi thứ hoạt động như mong đợi.

Ví Dụ Thực Tế: Thêm Sản Phẩm WooCommerce vào Kết Quả Tìm Kiếm

Nếu bạn đang sử dụng WooCommerce để bán sản phẩm trên trang web của mình, bạn sẽ muốn đảm bảo rằng người dùng có thể tìm thấy sản phẩm thông qua chức năng tìm kiếm. WooCommerce sử dụng Custom Post Type `’product’` để lưu trữ thông tin sản phẩm. Vì vậy, bạn có thể sử dụng một trong các phương pháp trên để thêm `’product’` vào kết quả tìm kiếm.

Sử dụng code trong `functions.php`:


function them_cpt_vao_tim_kiem( $query ) {
  if ( $query->is_search() ) {
    $query->set( 'post_type', array( 'post', 'page', 'product' ) );
  }
  return $query;
}
add_filter( 'pre_get_posts', 'them_cpt_vao_tim_kiem' );

Kết Luận

Thêm Custom Post Types vào kết quả tìm kiếm là một bước quan trọng để cải thiện trải nghiệm người dùng và tối ưu hóa SEO cho trang web WordPress của bạn. Bằng cách sử dụng một trong các phương pháp được trình bày trong bài viết này, bạn có thể đảm bảo rằng mọi nội dung trên trang web của bạn đều có thể được tìm thấy một cách dễ dàng và hiệu quả. Hãy chọn phương pháp phù hợp nhất với kỹ năng và nhu cầu của bạn, và đừng quên sao lưu trang web của bạn trước khi thực hiện bất kỳ thay đổi nào.