Cập nhật URL WordPress khi thay đổi link, tên miền mới

Đã có rất nhiều bạn hỏi tôi về vấn đề cập nhật chuyển tên miền hoặc thay đổi link của một Website sử dụng WordPress. Nó ảnh hưởng rất lớn đến SEO nếu như bạn không làm việc này một cách đúng và kịp thời. Trong bài viết này tôi sẽ hướng dẫn các bạn các trường hợp các bạn đang gặp nếu như không muốn ảnh hưởng về kết quả của SEO bằng việc cập nhật ngay URLs khi thay đổi link hoặc chuyển sang 1 tên miền mới. Bạn sẽ cần trong các trường hợp sau:

  • Chuyển từ HTTP sang HTTPS
  • Đổi từ tên miền A sang tên miền B
  • Đổi link ví dụ từ www.domain.com/link-cũ sang www.domain.com/link-mới
  • Thay đổi dữ liệu cả toàn trang từ nội dung A sang nội dung B

Nội dung bài viết này tôi sẽ hướng dẫn bằng việc sử dụng chạy lệnh trên phpmyadmin và từ console của VPS. Nếu bạn muốn sử dụng Plugins để thực hiện thì tham khảo bài viết này: Chuyển từ HTTP sang HTTPS không lo mất SEO.

Cập nhật URL WordPress khi thay đổi tên miền, URL mới

Sau khi di chuyển một trang web WordPress sang một URL mới hoặc đến một trang web trực tiếp (điều này thường gặp khi các bạn ban đầu làm trên localhost sau đó chuyển lên tên miền riêng), chuỗi URL mới trong cơ sở dữ liệu mysql cần phải được thay đổi và cập nhật trong các bảng cơ sở dữ liệu mysql khác nhau.

Cập nhật cơ sở dữ liệu WordPress

Trước khi thực hiện, tôi khuyên bạn nên backup 1 bản dữ liệu để đề phòng nếu bạn không cảm thấy tự tin mình sẽ làm chính xác hoặc nếu có xảy ra sai sót 1 gì đó.

Vào SQL của cỡ sở dữ liệu mà bạn muốn cập nhật, chạy một số cập nhật sql và các lệnh thay thế trên các bảng đáng, wp_options, wp_posts, wp_postmeta. Đây cũng là các bảng có chứa nội dung, url cần thay thế.

Sử dụng mã như dưới đây và hoán đổi trong URL cũ và mới của bạn, không có dấu gạch dưới. Ngoài ra nếu cần thiết thay đổi các giá trị tiền tố bảng nếu áp dụng (tức là wp_ là mặc định của WordPress khi cài đặt, nhưng nhiều bạn chỉnh thành khác thì hãy chú ý thay nó ở lệnh dưới đây)

UPDATE wp_options SET option_value = replace(option_value, 'http://www.URLcũ', 'http://www.URLmới') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = replace(guid, 'http://www.URLcũ','http://www.URLmới');
UPDATE wp_posts SET post_content = replace(post_content, 'http://www.URLcũ', 'http://www.URLmới');
UPDATE wp_postmeta SET meta_value = replace(meta_value,'http://www.URLcũ','http://www.URLmới');

Phpmyadmin chạy lệnh SQL thay thế dữ liệu

Hoặc bạn có thể sử dụng lệnh thông qua terminal

username@[~/Desktop]: mysql -u username -p databasename
Enter password:
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 892
Server version: 5.5.13 MySQL Community Server (GPL)

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

mysql> UPDATE wp_options SET option_value = replace(option_value, 'http://www.URLcũ', 'http://www.URLmới') WHERE option_name = 'home' OR option_name = 'siteurl';
Query OK, 0 rows affected (0.00 sec)
Rows matched: 2 Changed: 0 Warnings: 0

mysql> UPDATE wp_posts SET guid = replace(guid, 'http://www.URLcũ','http://www.URLmới');
Query OK, 0 rows affected (0.02 sec)
Rows matched: 964 Changed: 0 Warnings: 0

mysql> UPDATE wp_posts SET post_content = replace(post_content, 'http://www.URLcũ', 'http://www.URLmới');
Query OK, 0 rows affected (0.05 sec)
Rows matched: 964 Changed: 0 Warnings: 0

mysql> UPDATE wp_postmeta SET meta_value = replace(meta_value,'http://www.URLcũ','http://www.URLmới');
Query OK, 0 rows affected (0.01 sec)
Rows matched: 686 Changed: 0 Warnings: 0

Như vậy sau khi sử dụng 1 trong 2 cách này là bạn đã cập nhật được toàn bộ link mới trong dữ liệu website của bạn. Đối với nhiều trường hợp rất cần thay thế dữ liệu nội dung. Tôi ví dụ, những người SEO sản phẩm là năm 2017, nhưng khi năm 2017 qua đi vẫn với các sản phẩm đó họ cần đổi năm 2017 thành năm 2018 thì hòan toàn dễ thực hiện 1 cách đồng loạt với cách 1 chạy lệnh SQL.

Tôi thường xuyên phải làm việc này khi tôi cài SSL từ dạng HTTP sang HTTPS cho một số bạn đọc theo dõi tôi có hỏi và muốn được hướng dẫn. Có rất nhiều lợi ích của việc làm này, đặc biệt trong SEO nếu bạn cần chuyển đổi 1 link A của tất cả link nội bộ thành link B thì chỉ cần thực hiện 1 lần lệnh, bạn có thể chắc chắn rằng tôi đã đặt lại liên kết nội bộ sang link B trên toàn bộ Website của tôi.

Đây chỉ là một nội dung hướng dẫn kỹ thuật khá ngắn, nên tôi để những vấn đề liên quan đến nó ở 1 bài viết gần đây. Hy vọng, bạn sẽ có những góc nhìn chi tiết hữu ích cho Website của bạn.

Biên soạn: Phong Vũ

Kiến thức SEO /
Nên chọn có WWW hay không có WWW tốt cho SEO

Tên miền www hay không có www - Lựa chọn tốt nhất cho SEO

Cách chuyển Website từ http sang https mà không lo ảnh hưởng SEO

Thẻ Meta Description viết blog bởi VNG

Meta Description là gì? Tạo mô tả tìm kiếm cực tốt cho SEO

Thiết kế Website chuẩn SEO

Thiết kế Web chuẩn SEO cần những gì? Kiểm tra như thế nào

Trở thành người đầu tiên bình luận cho bài viết này!

Email của bạn sẽ không được hiển thị công khai.

Website này sử dụng Akismet để hạn chế spam. Tìm hiểu bình luận của bạn được duyệt như thế nào.