PluginProbe ʕ •ᴥ•ʔ
Contact Form 7 / 5.7.2
Contact Form 7 v5.7.2
6.1.6 5.0.2 5.0.3 5.0.4 5.0.5 5.1 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.1.7 5.1.8 5.1.9 5.2 5.2.1 5.2.2 5.3 5.3.1 5.3.2 5.4 5.4.1 5.4.2 5.5 5.5.1 5.5.2 5.5.3 5.5.4 5.5.5 5.5.6 5.5.6.1 5.6 5.6.1 5.6.2 5.6.3 5.6.4 5.7 5.7.1 5.7.2 5.7.3 5.7.4 5.7.5 5.7.5.1 5.7.6 5.7.7 5.8 5.8.1 5.8.2 5.8.3 5.8.4 5.8.5 5.8.6 5.8.7 5.9 5.9.2 5.9.3 5.9.4 5.9.5 5.9.6 5.9.7 5.9.8 6.0 6.0.1 6.0.2 6.0.3 6.0.4 6.0.5 6.0.6 6.1 6.1.1 6.1.2 6.1.3 6.1.4 6.1.5 trunk 1.1 1.10 1.10.0.1 1.10.1 1.2 1.3 1.3.1 1.3.2 1.4 1.4.1 1.4.2 1.4.3 1.4.4 1.5 1.6 1.6.1 1.7 1.7.1 1.7.2 1.7.4 1.7.5 1.7.6 1.7.6.1 1.7.7 1.7.7.1 1.7.8 1.8 1.8.0.1 1.8.0.2 1.8.0.3 1.8.0.4 1.8.1 1.8.1.1 1.9 1.9.1 1.9.2 1.9.2.1 1.9.2.2 1.9.3 1.9.4 1.9.5 1.9.5.1 2.0 2.0-beta 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.1 2.1.1 2.1.2 2.2 2.2.1 2.3 2.3.1 2.4 2.4.1 2.4.2 2.4.3 2.4.4 2.4.5 2.4.6 3.0 3.0-beta 3.0.1 3.0.2 3.0.2.1 3.1 3.1.1 3.1.2 3.2 3.2.1 3.3 3.3.1 3.3.2 3.3.3 3.4 3.4.1 3.4.2 3.5 3.5.1 3.5.2 3.5.3 3.5.4 3.6 3.7 3.7.1 3.7.2 3.8 3.8.1 3.9 3.9-beta 3.9.1 3.9.2 3.9.3 4.0 4.0.1 4.0.2 4.0.3 4.1 4.1-beta 4.1.1 4.1.2 4.2 4.2-beta 4.2.1 4.2.2 4.3 4.3.1 4.4 4.4.1 4.4.2 4.5 4.5.1 4.6 4.6.1 4.7 4.8 4.8.1 4.9 4.9.1 4.9.2 5.0 5.0.1
contact-form-7 / includes / upgrade.php
contact-form-7 / includes Last commit date
block-editor 3 years ago css 3 years ago js 3 years ago swv 3 years ago capabilities.php 7 years ago config-validator.php 3 years ago contact-form-functions.php 3 years ago contact-form-template.php 3 years ago contact-form.php 3 years ago controller.php 3 years ago file.php 3 years ago form-tag.php 3 years ago form-tags-manager.php 3 years ago formatting.php 3 years ago functions.php 3 years ago html-formatter.php 3 years ago integration.php 3 years ago l10n.php 3 years ago mail.php 3 years ago pipe.php 4 years ago pocket-holder.php 3 years ago rest-api.php 4 years ago shortcodes.php 3 years ago special-mail-tags.php 3 years ago submission.php 3 years ago upgrade.php 7 years ago validation-functions.php 3 years ago validation.php 3 years ago
upgrade.php
86 lines
1 <?php
2
3 add_action( 'wpcf7_upgrade', 'wpcf7_convert_to_cpt', 10, 2 );
4
5 function wpcf7_convert_to_cpt( $new_ver, $old_ver ) {
6 global $wpdb;
7
8 if ( ! version_compare( $old_ver, '3.0-dev', '<' ) ) {
9 return;
10 }
11
12 $old_rows = array();
13
14 $table_name = $wpdb->prefix . "contact_form_7";
15
16 if ( $wpdb->get_var( "SHOW TABLES LIKE '$table_name'" ) ) {
17 $old_rows = $wpdb->get_results( "SELECT * FROM $table_name" );
18 } elseif ( $opt = get_option( 'wpcf7' )
19 and ! empty( $opt['contact_forms'] ) ) {
20 foreach ( (array) $opt['contact_forms'] as $key => $value ) {
21 $old_rows[] = (object) array_merge(
22 $value,
23 array( 'cf7_unit_id' => $key )
24 );
25 }
26 }
27
28 foreach ( (array) $old_rows as $row ) {
29 $q = "SELECT post_id FROM $wpdb->postmeta WHERE meta_key = '_old_cf7_unit_id'"
30 . $wpdb->prepare( " AND meta_value = %d", $row->cf7_unit_id );
31
32 if ( $wpdb->get_var( $q ) ) {
33 continue;
34 }
35
36 $postarr = array(
37 'post_type' => 'wpcf7_contact_form',
38 'post_status' => 'publish',
39 'post_title' => maybe_unserialize( $row->title ),
40 );
41
42 $post_id = wp_insert_post( $postarr );
43
44 if ( $post_id ) {
45 update_post_meta( $post_id, '_old_cf7_unit_id', $row->cf7_unit_id );
46
47 $metas = array( 'form', 'mail', 'mail_2', 'messages', 'additional_settings' );
48
49 foreach ( $metas as $meta ) {
50 update_post_meta( $post_id, '_' . $meta,
51 wpcf7_normalize_newline_deep( maybe_unserialize( $row->{$meta} ) ) );
52 }
53 }
54 }
55 }
56
57 add_action( 'wpcf7_upgrade', 'wpcf7_prepend_underscore', 10, 2 );
58
59 function wpcf7_prepend_underscore( $new_ver, $old_ver ) {
60 if ( version_compare( $old_ver, '3.0-dev', '<' ) ) {
61 return;
62 }
63
64 if ( ! version_compare( $old_ver, '3.3-dev', '<' ) ) {
65 return;
66 }
67
68 $posts = WPCF7_ContactForm::find( array(
69 'post_status' => 'any',
70 'posts_per_page' => -1,
71 ) );
72
73 foreach ( $posts as $post ) {
74 $props = $post->get_properties();
75
76 foreach ( $props as $prop => $value ) {
77 if ( metadata_exists( 'post', $post->id(), '_' . $prop ) ) {
78 continue;
79 }
80
81 update_post_meta( $post->id(), '_' . $prop, $value );
82 delete_post_meta( $post->id(), $prop );
83 }
84 }
85 }
86