PluginProbe ʕ •ᴥ•ʔ
WPForms – Easy Form Builder for WordPress – Contact Forms, Payment Forms, Surveys, & More / 1.5.8.2
WPForms – Easy Form Builder for WordPress – Contact Forms, Payment Forms, Surveys, & More v1.5.8.2
1.10.1.1 1.10.1 1.10.0.5 trunk 1.1.4 1.1.4.2 1.1.5 1.1.5.1 1.1.6 1.1.6.1 1.1.7 1.1.7.1 1.1.7.2 1.1.8 1.1.8.1 1.1.8.2 1.1.8.3 1.1.8.4 1.10.0.1 1.10.0.2 1.10.0.3 1.10.0.4 1.2.0 1.2.0.1 1.2.1 1.2.2 1.2.2.1 1.2.2.2 1.2.3 1.2.3.1 1.2.3.2 1.2.4 1.2.4.1 1.2.5 1.2.5.1 1.2.6 1.2.7 1.2.8 1.2.8.1 1.2.9 1.3.0 1.3.1 1.3.1.1 1.3.1.2 1.3.2 1.3.3 1.3.5 1.3.6 1.3.6.1 1.3.6.2 1.3.7.2 1.3.7.3 1.3.7.4 1.3.8 1.3.9.1 1.4.0.1 1.4.1.1 1.4.2 1.4.2.1 1.4.2.2 1.4.3 1.4.4 1.4.4.1 1.4.5 1.4.5.1 1.4.5.2 1.4.5.3 1.4.6 1.4.7.1 1.4.7.2 1.4.8.1 1.4.9 1.5.0.1 1.5.0.3 1.5.0.4 1.5.1 1.5.1.1 1.5.1.3 1.5.2.1 1.5.2.2 1.5.2.3 1.5.3 1.5.3.1 1.5.4.1 1.5.4.2 1.5.5 1.5.5.1 1.5.6 1.5.6.2 1.5.7 1.5.8.2 1.5.9.1 1.5.9.4 1.5.9.5 1.6.0.1 1.6.0.2 1.6.1 1.6.2.2 1.6.2.3 1.6.3.1 1.6.4 1.6.4.1 1.6.5 1.6.6 1.6.7 1.6.7.1 1.6.7.2 1.6.7.3 1.6.8 1.6.8.1 1.6.9 1.7.0 1.7.1.1 1.7.1.2 1.7.2 1.7.2.1 1.7.3 1.7.4 1.7.4.1 1.7.4.2 1.7.5.1 1.7.5.2 1.7.5.3 1.7.5.5 1.7.6 1.7.7 1.7.7.1 1.7.7.2 1.7.8 1.7.9 1.7.9.1 1.8.0.1 1.8.0.2 1.8.1.1 1.8.1.2 1.8.1.3 1.8.2.1 1.8.2.2 1.8.2.3 1.8.3 1.8.3.1 1.8.4 1.8.4.1 1.8.5.2 1.8.5.3 1.8.5.4 1.8.6.2 1.8.6.3 1.8.6.4 1.8.7.2 1.8.8.2 1.8.8.3 1.8.9.1 1.8.9.2 1.8.9.4 1.8.9.5 1.8.9.6 1.9.0.1 1.9.0.2 1.9.0.3 1.9.0.4 1.9.1.1 1.9.1.2 1.9.1.3 1.9.1.4 1.9.1.5 1.9.1.6 1.9.2.1 1.9.2.2 1.9.2.3 1.9.3.1 1.9.3.2 1.9.4.1 1.9.4.2 1.9.5 1.9.5.1 1.9.5.2 1.9.6 1.9.6.1 1.9.6.2 1.9.7.1 1.9.7.2 1.9.7.3 1.9.8.1 1.9.8.2 1.9.8.4 1.9.8.7 1.9.9.2 1.9.9.3 1.9.9.4
wpforms-lite / uninstall.php
wpforms-lite Last commit date
assets 6 years ago includes 6 years ago languages 6 years ago lite 6 years ago src 6 years ago templates 6 years ago vendor 6 years ago changelog.txt 6 years ago readme.txt 6 years ago uninstall.php 6 years ago wpforms.php 6 years ago
uninstall.php
92 lines
1 <?php
2 /**
3 * Uninstall WPForms.
4 *
5 * Remove:
6 * - Entries table
7 * - Entry Meta table
8 * - Entry fields table
9 * - Form Preview page
10 * - wpforms_log post type posts and post_meta
11 * - wpforms post type posts and post_meta
12 * - WPForms settings/options
13 * - WPForms user meta
14 * - WPForms term meta
15 * - WPForms Uploads
16 *
17 * @since 1.4.5
18 *
19 * @var WP_Filesystem_Base $wp_filesystem
20 */
21
22 // phpcs:disable WordPress.DB.DirectDatabaseQuery
23
24 // Exit if accessed directly.
25 if ( ! defined( 'WP_UNINSTALL_PLUGIN' ) ) {
26 exit;
27 }
28
29 // Confirm user has decided to remove all data, otherwise stop.
30 $settings = get_option( 'wpforms_settings', array() );
31 if ( empty( $settings['uninstall-data'] ) ) {
32 return;
33 }
34
35 global $wpdb;
36
37 // Delete entries table.
38 $wpdb->query( 'DROP TABLE IF EXISTS ' . $wpdb->prefix . 'wpforms_entries' );
39
40 // Delete entry meta table.
41 $wpdb->query( 'DROP TABLE IF EXISTS ' . $wpdb->prefix . 'wpforms_entry_meta' );
42
43 // Delete entry fields table.
44 $wpdb->query( 'DROP TABLE IF EXISTS ' . $wpdb->prefix . 'wpforms_entry_fields' );
45
46 // Delete Preview page.
47 $preview_page = get_option( 'wpforms_preview_page', false );
48 if ( ! empty( $preview_page ) ) {
49 wp_delete_post( $preview_page, true );
50 }
51
52 // Delete wpforms and wpforms_log post type posts/post_meta.
53 $wpforms_posts = get_posts(
54 array(
55 'post_type' => array( 'wpforms_log', 'wpforms' ),
56 'post_status' => 'any',
57 'numberposts' => -1,
58 'fields' => 'ids',
59 )
60 );
61 if ( $wpforms_posts ) {
62 foreach ( $wpforms_posts as $wpforms_post ) {
63 wp_delete_post( $wpforms_post, true );
64 }
65 }
66
67 // Delete plugin settings.
68 $wpdb->query( "DELETE FROM {$wpdb->options} WHERE option_name LIKE 'wpforms\_%'" );
69
70 // Delete plugin user meta.
71 $wpdb->query( "DELETE FROM {$wpdb->usermeta} WHERE meta_key LIKE 'wpforms\_%'" );
72
73 // Delete plugin term meta.
74 $wpdb->query( "DELETE FROM {$wpdb->termmeta} WHERE meta_key LIKE 'wpforms\_%'" );
75
76 // Remove any transients we've left behind.
77 $wpdb->query( "DELETE FROM {$wpdb->options} WHERE option_name LIKE '\_transient\_wpforms\_%'" );
78 $wpdb->query( "DELETE FROM {$wpdb->options} WHERE option_name LIKE '\_site\_transient\_wpforms\_%'" );
79 $wpdb->query( "DELETE FROM {$wpdb->options} WHERE option_name LIKE '\_transient\_timeout\_wpforms\_%'" );
80 $wpdb->query( "DELETE FROM {$wpdb->options} WHERE option_name LIKE '\_site\_transient\_timeout\_wpforms\_%'" );
81
82 // Remove plugin cron jobs.
83 wp_clear_scheduled_hook( 'wpforms_email_summaries_cron' );
84
85 // Remove uploaded files.
86 $uploads_directory = wp_upload_dir();
87 if ( ! empty( $uploads_directory['error'] ) ) {
88 return;
89 }
90 global $wp_filesystem;
91 $wp_filesystem->rmdir( $uploads_directory['basedir'] . '/wpforms/', true );
92