WordPress luồn là một sự lựa chọn hàng đầu cho các bạn muốn sở hữu
một blog, cấu trúc đơn giản, hệ thống được tối ưu hóa tốt cho SEO. Các
phần trong wordpress hầu như đều được tối ưu hóa để hướng đến việc dễ
dàng và tiện lợi cho người sử dụng.
Đơn cữ như việc sử dụng plugin, nếu trong Joomla hoặc Drupal thì các
webmaster sẽ mất khá nhiều công để ngồi chọn lựa trên các thư việc
extension, rôi sau đó download về và tiến hành cài đặt, trong khi đó với
wordpress chỉ cần vào control panel và search sau đó install là song.
Trên hết là những phần tối ưu hóa cho SEO được các nhà phát triển
wordpress làm khá tốt, đặc biệt là khâu URL và cấu trúc trang web. Nhưng
nó vẫn tồn tại một nhược điểm là trong url của phần category vẫn luôn
xuất hiện một biến là/category/.
Sự xuất hiện của biến này vô hình dùng làm cho website của bạn đơn
thuần chỉ là một blog, và không thể tiến lên thành một CMS thực thụ. Vì
nếu để tồn tại biến /category/ này trong url, các bạn sẽ thấy ngay sự
khó chịu đối với người dùng và cả search engine ở đây. Khi mà url của
bài viết sẽ không có biến /category/, nhưng url của thư
mục chứa bài viết lại xuất hiện biết trên. Điều này dẫn tới cấu trúc
website của bạn trở nên không rõ ràng với các máy tìm kiếm khi bạn muốn
phát triển SEO cho thư mục con, và gây khó khăn cho người dung khi họ
muốn truy cập trực tiếp vào thư mục con mà không cần thông qua trang
chủ.
Bài viết này sẽ hướng dẫn các bạn cách để loại bỏ hoàn toàn /category/ ra
khỏi url của website làm bằng wordpress. Hy vọng rằng nó sẽ giúp nhiều
cho các bạn hơn trong việc phát triển SEO cho webiste của mình.
Cách 1: Can thiệp vào file functions.php
Các bạn vào file functions.php và thêm đoạn code này vào, hoặc có thể đính kèm nó vào file của 1 plugin nào đó:
<blockquote>
function fix_slash( $string, $type )
{
global $wp_rewrite;
if ( $wp_rewrite->use_trailing_slashes == false )
{
if ( $type != 'single' && $type != 'category' )
return trailingslashit( $string );
if ( $type == 'single' && ( strpos( $string, '.html/' ) !== false ) )
return trailingslashit( $string );
if ( $type == 'category' && ( strpos( $string, 'category' ) !== false ) )
{
$aa_g = str_replace( "/category/", "/", $string );
return trailingslashit( $aa_g );
}
if ( $type == 'category' )
return trailingslashit( $string );
}
return $string;
}
add_filter( 'user_trailingslashit', 'fix_slash', 55, 2 );
</blockquote>
Cách 2: Sử dụng .htaccess để điều hướng
Thêm đoạn code sau vào file .htaccess là song:
<blockquote>
RedirectMatch 301 ^/category/(.+)$ http://www.domain.com/$1
# OR
RewriteRule ^category/(.+)$ http://www.domain.com/$1 [R=301,L]
</blockquote>
Nhớ sửa lại domain cho đúng nhá !
Cách 3: Sử dụng plugin cho vấn đề này
Nếu thay đổi tập tin htaccess của bạn đã không làm việc thành công
với bất cứ lý do gì, hoặc bạn muốn gỡ bỏ tự động /category/ thì có một
plugin miễn phí hữu ích ngay lập tức giúp bạn làm việc này.
Download và install plugin No Category Base, plugin WordPress này miễn phí và dễ dàng cài đặt và sử dụng cho bạn.
Chúc bạn thành công!
một blog, cấu trúc đơn giản, hệ thống được tối ưu hóa tốt cho SEO. Các
phần trong wordpress hầu như đều được tối ưu hóa để hướng đến việc dễ
dàng và tiện lợi cho người sử dụng.
Đơn cữ như việc sử dụng plugin, nếu trong Joomla hoặc Drupal thì các
webmaster sẽ mất khá nhiều công để ngồi chọn lựa trên các thư việc
extension, rôi sau đó download về và tiến hành cài đặt, trong khi đó với
wordpress chỉ cần vào control panel và search sau đó install là song.
Trên hết là những phần tối ưu hóa cho SEO được các nhà phát triển
wordpress làm khá tốt, đặc biệt là khâu URL và cấu trúc trang web. Nhưng
nó vẫn tồn tại một nhược điểm là trong url của phần category vẫn luôn
xuất hiện một biến là/category/.
Sự xuất hiện của biến này vô hình dùng làm cho website của bạn đơn
thuần chỉ là một blog, và không thể tiến lên thành một CMS thực thụ. Vì
nếu để tồn tại biến /category/ này trong url, các bạn sẽ thấy ngay sự
khó chịu đối với người dùng và cả search engine ở đây. Khi mà url của
bài viết sẽ không có biến /category/, nhưng url của thư
mục chứa bài viết lại xuất hiện biết trên. Điều này dẫn tới cấu trúc
website của bạn trở nên không rõ ràng với các máy tìm kiếm khi bạn muốn
phát triển SEO cho thư mục con, và gây khó khăn cho người dung khi họ
muốn truy cập trực tiếp vào thư mục con mà không cần thông qua trang
chủ.
Bài viết này sẽ hướng dẫn các bạn cách để loại bỏ hoàn toàn /category/ ra
khỏi url của website làm bằng wordpress. Hy vọng rằng nó sẽ giúp nhiều
cho các bạn hơn trong việc phát triển SEO cho webiste của mình.
Cách 1: Can thiệp vào file functions.php
Các bạn vào file functions.php và thêm đoạn code này vào, hoặc có thể đính kèm nó vào file của 1 plugin nào đó:
<blockquote>
function fix_slash( $string, $type )
{
global $wp_rewrite;
if ( $wp_rewrite->use_trailing_slashes == false )
{
if ( $type != 'single' && $type != 'category' )
return trailingslashit( $string );
if ( $type == 'single' && ( strpos( $string, '.html/' ) !== false ) )
return trailingslashit( $string );
if ( $type == 'category' && ( strpos( $string, 'category' ) !== false ) )
{
$aa_g = str_replace( "/category/", "/", $string );
return trailingslashit( $aa_g );
}
if ( $type == 'category' )
return trailingslashit( $string );
}
return $string;
}
add_filter( 'user_trailingslashit', 'fix_slash', 55, 2 );
</blockquote>
Cách 2: Sử dụng .htaccess để điều hướng
Thêm đoạn code sau vào file .htaccess là song:
<blockquote>
RedirectMatch 301 ^/category/(.+)$ http://www.domain.com/$1
# OR
RewriteRule ^category/(.+)$ http://www.domain.com/$1 [R=301,L]
</blockquote>
Nhớ sửa lại domain cho đúng nhá !
Cách 3: Sử dụng plugin cho vấn đề này
Nếu thay đổi tập tin htaccess của bạn đã không làm việc thành công
với bất cứ lý do gì, hoặc bạn muốn gỡ bỏ tự động /category/ thì có một
plugin miễn phí hữu ích ngay lập tức giúp bạn làm việc này.
Download và install plugin No Category Base, plugin WordPress này miễn phí và dễ dàng cài đặt và sử dụng cho bạn.
Chúc bạn thành công!