Xoá bỏ hoàn toàn database của plugin Elementor Page Builder
Sơ đồ trang
Elementor chắc không còn xa lại với nhiều người, nó là một plugin giúp chủ website dựng trang web (page builder) trực quan và không cần kiến thức về mã hóa (coding).
Với Elementor, người dùng có thể tạo và chỉnh sửa các trang web WordPress một cách linh hoạt và dễ dàng. Giao diện kéo và thả của nó cho phép bạn xây dựng trang web bằng cách kéo các thành phần (widgets) hoặc các khối (blocks) vào khu vực làm việc và tùy chỉnh chúng theo ý muốn. Các thành phần này có thể bao gồm các phần tử như văn bản, hình ảnh, video, biểu đồ, nút bấm, biểu mẫu liên hệ và nhiều hơn nữa.
Elementor cung cấp một loạt các tính năng và công cụ để điều chỉnh giao diện, font chữ, màu sắc, và căn chỉnh bố cục một cách linh hoạt. Nó cũng cho phép bạn xem trước trực tiếp những thay đổi bạn thực hiện trên trang web, giúp bạn tạo ra trang web một cách nhanh chóng và thú vị.
Với sự phổ biến và linh hoạt của mình, Elementor đã trở thành một trong những công cụ dựng trang web phổ biến nhất cho người dùng WordPress, giúp tạo ra các trang web chuyên nghiệp mà không cần có kiến thức kỹ thuật sâu.
Tuy nhiên gần đây 1 số khách hàng của tôi lo lắng về vấn đề bảo mật cũng như muốn đổi trình builder khác hoặc theme khác không sử dụng builder cho nhẹ nên đã yêu cầu xoá bỏ plugin nên trong bài viết này tôi sẽ hướng dẫn cách để xoá toàn bộ database liên quan tới plugin Elementor
Miễn trừ trách nhiệm, trước khi thao tác với cơ sở dữ liệu bạn nên backup lại trước, để nếu có mệnh hệ gì thì còn có cái mà khôi phục.
Xoá bỏ database của plugin Elementor
Khi bạn gỡ cài đặt plugin khỏi WordPress, rất nhiều plugin có thể còn sót lại trong cơ sở dữ liệu. Điều này làm cho cơ sở dữ liệu trở nên cồng kềnh và có thể làm chậm các truy vấn. Như đã nói ở trên gần đây tôi đã chuyển một trang web từ Elementor sang Generator Blocks để cải thiện hiệu suất nên đương nhiên tôi phải dọn dẹp cơ sở dữ liệu.
Hướng dẫn này dành cho việc xoá bỏ hoàn toàn cơ sở dữ liệu liên quan đến Elementor gồm: options table, postmeta, usermeta table và posts table
Trong hướng dẫn này, tôi sẽ đề cập đến
- Xóa các plugin và tệp Elementor
- Xóa các loại bài đăng Elementor (Elementor post types)
- Xóa phân loại Elementor (Elementor taxonomy)
- Xóa meta_key Elementor khỏi usermeta và postmeta
- Xóa các tùy chọn mồ côi Elementor khỏi wp_options
Tôi thực hiện các công việc này thông qua SSH nên để thực hiện theo bạn cần sử dụng VPS và có tài khoản đăng nhập vào SSH + cài đặt WP-CLI
Xóa các tệp và plugin Elementor
Xóa các plugin Elementor – việc này không bao gồm bất kỳ tiện ích bổ sung hoặc plugin bổ sung bằng wp-cli
wp plugin delete elementor --allow-root wp plugin delete elementor-pro --allow-root
Xóa thư mục tải lên Elementor
rm -rf wp-content/uploads/elementor
Xóa các loại bài đăng Elementor
Liệt kê các loại bài đăng và xem Elementor có trong đó không
wp post-type list --allow-root | grep elementor
không có kết quả, hãy tìm kiếm trong cơ sở dữ liệu
wp db query "SELECT DISTINCT(post_type) FROM $(wp db prefix --allow-root)posts" --allow-root
elementor_library được tìm thấy.
+———————+
| post_type |
+———————+
| amn_exact-metrics |
| attachment |
| custom_css |
| customize_changeset |
| download |
| edd_log |
| edd_payment |
| elementor_library |
| gp_elements |
| nav_menu_item |
| oembed_cache |
| page |
| post |
| pretty-link |
| revision |
| wpcf7_contact_form |
+———————+
Bây giờ bạn có thể xóa tất cả các elementor_library bài viết
Hãy liệt kê chúng trước
wp post list --post_type=elementor_library --post_status=draft,revision,publish --allow-root
Output
+-----+---------------------+---------------------+---------------------+-------------+ | ID | post_title | post_name | post_date | post_status | +-----+---------------------+---------------------+---------------------+-------------+ | 217 | Default Kit | default-kit | 2020-03-08 00:05:51 | publish | | 112 | WP Bullet Minify | wp-bullet-minify | 2016-12-10 22:13:29 | publish | | 64 | Works with template | works-with-template | 2016-10-30 20:02:04 | publish | | 18 | Home Final Final | home-final-final | 2016-10-26 13:52:42 | publish | +-----+---------------------+---------------------+---------------------+-------------+
Để xóa những thứ này, chúng ta phải sử dụng --force
nếu không bạn sẽ gặp lỗi
Warning: Posts of type ‘elementor_library’ do not support being sent to trash.
Please use the –force flag to skip trash and delete them permanently.
Đây là lệnh xóa mọi bài đăng elementor_library bằng WP-CLI
wp post delete $(wp post list --post_type=elementor_library --post_status=draft,revision,publish --allow-root --skip-plugins --format=ids) --force --allow-root
Đầu ra
Success: Deleted post 217. Success: Deleted post 112. Success: Deleted post 64. Success: Deleted post 18.
Xoá Elementor Taxonomy
Khi tìm kiếm cơ sở dữ liệu, tôi phát hiện ra rằng có các tham chiếu Elementor trong các bảng phân loại, vì vậy hãy đảm bảo rằng chúng ta cũng có được những tham chiếu đó! Đây là kết quả tìm kiếm cơ sở dữ liệu cho chuỗi phần tử.
wp_posts:post_type 18:elementor_library wp_posts:post_type 64:elementor_library wp_posts:post_type 112:elementor_library wp_posts:post_type 217:elementor_library wp_term_taxonomy:taxonomy 5:elementor_library_type wp_term_taxonomy:taxonomy 6:elementor_library_type
Đếm các hàng Elementor trong bảng phân loại
wp db query "SELECT COUNT(*) AS ElementorTaxonomy FROM $(wp db prefix --allow-root)term_taxonomy WHERE taxonomy LIKE '%elementor%'" --allow-root
Output
+-------------------+ | ElementorTaxonomy | +-------------------+ | 2 | +-------------------+
Bây giờ chúng ta có thể xóa chúng
wp db query "DELETE FROM $(wp db prefix --allow-root)term_taxonomy WHERE taxonomy LIKE '%elementor%'" --allow-root
Xoá Elementor postmeta
Liệt kê các hàng meta_key từ bảng postmeta có chứa phần tử chuỗi.
wp db query "SELECT DISTINCT(meta_key) FROM $(wp db prefix --allow-root)postmeta" --allow-root | grep elementor
Output
_elementor_data _elementor_edit_mode _elementor_template_type _elementor_version _elementor_conditions _elementor_page_settings _elementor_pro_version _elementor_template_widget_type _elementor_global_widget_included_posts _elementor_template_sub_type _elementor_popup_display_settings _elementor_source_image_hash _elementor_controls_usage _elementor_css
Đếm xem có bao nhiêu Elementor Postmeta
wp db query "SELECT COUNT(*) AS ElementorPostMeta FROM $(wp db prefix --allow-root)postmeta WHERE meta_key LIKE '%elementor%'" --allow-root
Output
+-------------------+ | ElementorPostMeta | +-------------------+ | 52 | +-------------------+
Xoá tất cả Elementor postmeta
wp db query "DELETE FROM $(wp db prefix --allow-root)postmeta WHERE meta_key LIKE '%elementor%'" --allow-root
Xoá Elementor usermeta
Check xem có bao nhiêu usermeta
wp db query "SELECT DISTINCT(meta_key) FROM wp_usermeta" --allow-root | grep elementor
Output
elementor_introduction elementor_admin_notices wp_elementor_connect_common_data
Xoá orphan meta_keys trong Elementor
wp db query "DELETE FROM $(wp db prefix --allow-root)usermeta WHERE meta_key LIKE '%elementor%'" --allow-root
Xoá Elementor Options
Liệt kê các tùy chọn thuộc Elementor
wp option list --field=option_name --allow-root | grep elementor
Output
elementor_active_kit elementor_allow_svg elementor_allow_tracking elementor_beta elementor_clear_cache elementor_connect_site_key elementor_container_width elementor_controls_usage elementor_cpt_support elementor_css_print_method elementor_custom_icon_sets_config elementor_default_generic_fonts elementor_disable_color_schemes elementor_disable_typography_schemes elementor_edit_buttons elementor_editor_break_lines elementor_enable_inspector elementor_exclude_user_roles elementor_font_awesome_pro_kit_id elementor_fonts_manager_fonts elementor_fonts_manager_font_types _elementor_general_settings _elementor_global_css elementor_global_image_lightbox elementor_icon_manager_needs_update _elementor_installed_time elementor_library_category_children elementor_load_fa4_shim elementor_log elementor_maintenance_mode_exclude_mode elementor_maintenance_mode_exclude_roles elementor_maintenance_mode_mode elementor_maintenance_mode_template_id elementor_page_title_selector elementor_pro_activecampaign_api_key elementor_pro_activecampaign_api_url elementor_pro_convertkit_api_key elementor_pro_donreach_api_key elementor_pro_donreach_api_url elementor_pro_drip_api_token elementor_pro_facebook_app_id elementor_pro_getresponse_api_key _elementor_pro_installed_time elementor_pro_license_key elementor_pro_mailchimp_api_key elementor_pro_mailerlite_api_key elementor_pro_recaptcha_secret_key elementor_pro_recaptcha_site_key elementor_pro_recaptcha_v3_secret_key elementor_pro_recaptcha_v3_site_key elementor_pro_recaptcha_v3_threshold elementor_pro_theme_builder_conditions elementor_pro_tracker_notice elementor_pro_upgrades elementor_pro_version elementor_remote_info_feed_data elementor_remote_info_library elementor_remote_info_templates_data elementor_replace_url elementor_reset_api_data elementor_rollback elementor_rollback_pro elementor_rollback_pro_separator elementor_scheme_color elementor_scheme_color-picker _elementor_scheme_last_updated elementor_scheme_typography _elementor_settings_update_time elementor_space_between_widgets elementor_stretched_section_container elementor_tracker_last_send elementor_tracker_notice elementor_typekit-kit-id elementor_upgrades elementor_use_mini_cart_template elementor_validate_api_data elementor_version elementor_viewport_lg elementor_viewport_md plugin_last_upgraded_date_elementor plugin_last_upgraded_date_elementor-pro-elementor-pro-php plugin_last_upgraded_version_elementor plugin_last_upgraded_version_elementor-pro-elementor-pro-php widget_elementor-library
Đếm xem có bao nhiêu options
wp db query "SELECT COUNT(*) AS ElementorOptions FROM $(wp db prefix --allow-root)options WHERE option_name LIKE '%elementor%'" --allow-root
Bạn có thể tính xem có bao nhiêu autoload với lệnh
wp db query "SELECT COUNT(*) AS ElementorAutoloaded FROM $(wp db prefix --allow-root)options WHERE option_name LIKE '%elementor%' AND autoload='yes'" --allow-root
Output
+---------------------+ | ElementorAutoloaded | +---------------------+ | 75 | +---------------------+
Xóa tất cả cài đặt Elementor khỏi bảng wp_options
wp db query "DELETE FROM $(wp db prefix --allow-root)options WHERE option_name LIKE '%elementor%'" --allow-root
Phía trên là code chi tiết, bạn có thể sử dụng shell script dưới đây để chạy là xong.
#!/usr/bin/env/bash # Purpose - clean Elementor leftover database rows from WordPress # deactivate and delete wp plugin deactivate elementor --allow-root wp plugin deactivate elementor-pro --allow-root wp plugin delete elementor --allow-root wp plugin delete elementor-pro --allow-root # clean up leftover Elementor uploads rm -rf wp-content/uploads/elementor # taxonomy wp db query "DELETE FROM $(wp db prefix --allow-root)term_taxonomy WHERE taxonomy LIKE '%elementor%'" --allow-root # custom post types wp post delete $(wp post list --post_type=elementor_library --post_status=draft,revision,publish --allow-root --skip-plugins --format=ids) --force --allow-root # postmeta wp db query "DELETE FROM $(wp db prefix --allow-root)postmeta WHERE meta_key LIKE '%elementor%'" --allow-root # usermeta wp db query "DELETE FROM $(wp db prefix --allow-root)usermeta WHERE meta_key LIKE '%elementor%'" --allow-root # options wp db query "DELETE FROM $(wp db prefix --allow-root)options WHERE option_name LIKE '%elementor%'" --allow-root
Tham khảo wp-bullet