Nội dung
- 1 1. Thay thế liên kết cũ trong bài viết
- 2 2. Thay thế hoặc xóa shortcodes
- 3 3. Xóa Post Revisions
- 4 4. Đóng bình luận cho bài viết
- 5 5. Xóa bài viết rác
- 6 6. Xóa shortcode Contact Form 7
- 7 7. Xóa Pingbacks
- 8 8. Xóa các bình luận spam
- 9 9. Xóa dữ liệu Transients từ bảng options
- 10 10. Dọn dẹp Post Meta
- 11 11. Xóa Meta cho Plugins
- 12 12. Cập nhật thông tin tác giả của bài viết
- shares
- Facebook Messenger
- Gmail
- Viber
- Skype
Nếu bạn sử dụng một thời gian dài, blog của bạn sẽ có nhiều lượng bình luận spam, các bản sửa của bài viết sẽ tăng lên và dữ liệu cache trong database. Trong bài viết này, mình đã liệt kê những câu lệnh SQL hữu ích cho bạn tối ưu wordpress, xóa hay làm sạch CSQL WordPress để tối ưu và giảm dung lượng database
Trước khi thực hiện, mình yêu cầu các bạn sao lưu WordPress, lưu bản backup CSQL mới nhất từ cPanel. Bất cứ lệnh SQL nào bạn sử dụng gây mất dữ liệu bạn cũng dễ dàng khôi phục lại như ban đầu.
1. Thay thế liên kết cũ trong bài viết
Lệnh này thay thế toàn bộ link cũ tìm thấy trong nội dung Post. Nếu bạn muốn mở rộng kiểu dữ liệu, thì khai báo thêm cho trường post_type
UPDATE `wp_posts` SET `post_content` = REPLACE( `post_content`, "http://demo.com", "https://demo.com" ) WHERE `post_type`="post";
2. Thay thế hoặc xóa shortcodes
UPDATE `wp_posts` SET `post_content` = REPLACE( `post_content`, "", "</pre>" ) WHERE `post_type`="post";
Dòng trên bạn chạy lệnh SQL để xóa các shortcodes không sử dụng & thay tế với thẻ HTML.
3. Xóa Post Revisions
Chạy lệnh sau sẽ giúp bạn xóa mọi các bản sửa đổi của nhiều bài viết ra khỏi database. Lưu ý, lệnh sql này sẽ không xóa post meta hoặc liên kết taxonomy.
DELETE FROM `wp_posts` WHERE `post_type`="revision"
4. Đóng bình luận cho bài viết
UPDATE `wp_posts` SET `comment_status` = 'closed' WHERE `post_type`="post"; UPDATE `wp_posts` SET `ping_status` = 'closed' WHERE `post_type`="post";
Lệnh trên sẽ đóng tất cả các bình luận, không cho phép người dùng bình luận cho các bài viết của bạn. Nếu bạn muốn kích hoạt lại thay từ “closed” bằng “open”
5. Xóa bài viết rác
Những bài viết Post rác đã bị xóa trước đây, bạn muốn xóa vĩnh viễn hãy sử dụng lệnh sau.
DELETE FROM `wp_posts` WHERE `post_status`="trash"
6. Xóa shortcode Contact Form 7
Bạn muốn xóa mọi shortcode contact form 7 bạn chèn vào các bài viết, nhập ID của form bạn muốn xóa & chạy lệnh sau:
UPDATE `wp_posts` SET `post_content` = REPLACE( `post_content`, '[contact-form-7 404 "Not Found"]', '' ) WHERE `post_type`="post";
7. Xóa Pingbacks
Lệnh SQL này sẽ xóa tất cả Pingbacks từ bảng comments của WordPress.
DELETE FROM `wp_comments` WHERE `comment_type` = 'pingback';
8. Xóa các bình luận spam
Những bình luận bạn đánh thẻ spam, sẽ bị xóa bởi lệnh sau:
DELETE FROM `wp_comments` WHERE `comment_approved` = 'spam';
9. Xóa dữ liệu Transients từ bảng options
Đây là dữ liệu cache từ bảng options, bạn sẽ tiết kiệm nhiều bộ nhớ và kích thước CSQL của bạn. CHạy lệnh dưới đây để xóa chúng đi:
DELETE FROM `wp_options` WHERE `option_name` LIKE '%_transient%';
10. Dọn dẹp Post Meta
DELETE m FROM `wp_postmeta` AS m LEFT JOIN `wp_posts` AS p ON m.`post_id` = p.`ID` WHERE p.`ID` IS NULL
Câu lệnh sau giúp bạn xóa tất cả các post meta không liên kết vào Post nào. Sau khi bạn xóa post revisions hoặc post sử dụng SQL, bạn sẽ cần thêm lệnh này nữa.
11. Xóa Meta cho Plugins
TÌm và xóa những khóa meta cho plugin.
DELETE FROM `wp_postmeta` WHERE `meta_key` LIKE '%aktt%'
12. Cập nhật thông tin tác giả của bài viết
Lệnh này sẽ không xóa dữ liệu của bạn, bạn muốn thay đổi tác giả của bài viết hàng loạt và bỏ tác giả cũ. Hãy sử dụng lệnh sau đây:
UPDATE `wp_posts` SET `post_author` = '1' WHERE `post_type`='post' AND `post_status`='publish'
Nếu bạn có câu lệnh hữu ích cho anh em sử dụng WordPress, đừng ngần ngại chia sẻ dưới bài viết này nhé.
Hãy cho mình biết suy nghĩ của bạn trong phần bình luận bên dưới bài viết này. Hãy theo dõi kênh chia sẻ kiến thức WordPress của Hoangweb trên Twitter và Facebook
- shares
- Facebook Messenger
- Gmail
- Viber
- Skype