PluginProbe
Kit (formerly ConvertKit) – Email Newsletter, Email Marketing, Membership, Subscribers and Landing Pages / 3.4.3
Kit (formerly ConvertKit) – Email Newsletter, Email Marketing, Membership, Subscribers and Landing Pages v3.4.3
3.4.3 3.4.2 3.4.1 3.4.0 3.3.9 3.3.8 3.3.7 3.3.6 3.3.5 3.3.4 3.3.3 3.3.2 3.3.1 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.2.5 2.2.6 2.2.7 2.2.8 2.2.9 2.3.0 2.3.1 All 196 releases
← All changes | views/backend/post/meta-box.php +116 -86 2.2.53.4.3 View file →
@@ -15,28 +15,24 @@
15 15 <label for="wp-convertkit-form"><?php esc_html_e( 'Form', 'convertkit' ); ?></label>
16 16 </th>
17 17 <td>
18 18 <div class="convertkit-select2-container convertkit-select2-container-grid">
19 - <select name="wp-convertkit[form]" id="wp-convertkit-form" class="convertkit-select2 widefat">
20 - <option value="-1"<?php selected( - 1, $convertkit_post->get_form() ); ?> data-preserve-on-refresh="1">
21 - <?php esc_html_e( 'Default', 'convertkit' ); ?>
22 - </option>
23 - <option value="0"<?php selected( 0, $convertkit_post->get_form() ); ?> data-preserve-on-refresh="1">
24 - <?php esc_html_e( 'None', 'convertkit' ); ?>
25 - </option>
26 - <?php
27 - if ( $convertkit_forms->exist() ) {
28 - foreach ( $convertkit_forms->get() as $form ) {
29 - ?>
30 - <option value="<?php echo esc_attr( $form['id'] ); ?>"<?php selected( $form['id'], $convertkit_post->get_form() ); ?>>
31 - <?php echo esc_attr( $form['name'] ); ?>
32 - </option>
33 - <?php
34 - }
35 - }
36 - ?>
37 - </select>
38 - <button class="wp-convertkit-refresh-resources" class="button button-secondary hide-if-no-js" title="<?php esc_attr_e( 'Refresh Forms from ConvertKit account', 'convertkit' ); ?>" data-resource="forms" data-field="#wp-convertkit-form">
19 + <?php
20 + $convertkit_forms->output_select_field_all(
21 + 'wp-convertkit[form]',
22 + 'wp-convertkit-form',
23 + array(
24 + 'convertkit-select2',
25 + 'widefat',
26 + ),
27 + esc_attr( $convertkit_post->get_form() ),
28 + array(
29 + '-1' => esc_html__( 'Default', 'convertkit' ),
30 + '0' => esc_html__( 'None', 'convertkit' ),
31 + )
32 + );
33 + ?>
34 + <button class="wp-convertkit-refresh-resources" class="button button-secondary hide-if-no-js" title="<?php esc_attr_e( 'Refresh Forms from Kit account', 'convertkit' ); ?>" data-resource="forms" data-field="#wp-convertkit-form">
39 35 <span class="dashicons dashicons-update"></span>
40 36 </button>
41 37 <p class="description">
42 38 <code><?php esc_html_e( 'Default', 'convertkit' ); ?></code>
@@ -48,12 +44,12 @@
48 44 <br />
49 45 <?php esc_html_e( 'Any other option will display that form after the main content.', 'convertkit' ); ?>
50 46 <br />
51 47 <?php
52 - echo sprintf(
48 + printf(
53 49 /* translators: Link to sign in to ConvertKit */
54 50 esc_html__( 'To make changes to your forms, %s', 'convertkit' ),
55 - '<a href="' . esc_url( convertkit_get_sign_in_url() ) . '" target="_blank">' . esc_html__( 'sign in to ConvertKit', 'convertkit' ) . '</a>'
51 + '<a href="' . esc_url( convertkit_get_sign_in_url() ) . '" target="_blank">' . esc_html__( 'sign in to Kit', 'convertkit' ) . '</a>'
56 52 );
57 53 ?>
58 54 </p>
59 55 </div>
@@ -70,32 +66,44 @@
70 66 </th>
71 67 <td>
72 68 <div class="convertkit-select2-container convertkit-select2-container-grid">
73 69 <select name="wp-convertkit[landing_page]" id="wp-convertkit-landing_page" class="convertkit-select2">
74 - <option <?php selected( '', $convertkit_post->get_landing_page() ); ?> value="0" data-preserve-on-refresh="1">
75 - <?php esc_html_e( 'None', 'convertkit' ); ?>
76 - </option>
70 + <option <?php selected( '', $convertkit_post->get_landing_page() ); ?> value="0" data-preserve-on-refresh="1"><?php esc_html_e( 'None', 'convertkit' ); ?></option>
77 71 <?php
78 - if ( $convertkit_landing_pages->exist() ) {
79 - foreach ( $convertkit_landing_pages->get() as $landing_page ) {
80 - if ( isset( $convertkit_landing_page['url'] ) ) {
72 + $non_legacy_landing_pages = $convertkit_landing_pages->get_non_legacy();
73 + if ( is_array( $non_legacy_landing_pages ) ) {
74 + foreach ( $non_legacy_landing_pages as $landing_page ) {
75 + ?>
76 + <option value="<?php echo esc_attr( $landing_page['id'] ); ?>"<?php selected( $landing_page['id'], $convertkit_post->get_landing_page() ); ?>><?php echo esc_attr( $landing_page['name'] ); ?></option>
77 + <?php
78 + }
79 + }
80 +
81 + // If the currently-saved landing page is a legacy resource, append
82 + // it here so the dropdown truthfully reflects the saved value
83 + // without offering other legacy pages as new selection choices.
84 + $current_landing_page = $convertkit_post->get_landing_page();
85 + if ( $current_landing_page && $convertkit_landing_pages->is_legacy( $current_landing_page ) ) {
86 + // data-preserve-on-refresh keeps this option in place when
87 + // the Refresh Resources button repopulates the dropdown,
88 + // so the saved legacy selection isn't silently lost.
89 + // Pre-1.9.6 storage: the saved value is the legacy URL itself.
90 + if ( is_string( $current_landing_page ) && strstr( $current_landing_page, 'http' ) ) {
91 + ?>
92 + <option value="<?php echo esc_attr( $current_landing_page ); ?>" data-preserve-on-refresh="1" selected><?php echo esc_attr( $current_landing_page ); ?></option>
93 + <?php
94 + } else {
95 + $legacy_landing_page = $convertkit_landing_pages->get_by_id( (int) $current_landing_page );
96 + if ( $legacy_landing_page ) {
81 97 ?>
82 - <option value="<?php echo esc_attr( $landing_page['url'] ); ?>"<?php selected( $landing_page['url'], $convertkit_post->get_landing_page() ); ?>>
83 - <?php echo esc_attr( $landing_page['name'] ); ?>
84 - </option>
98 + <option value="<?php echo esc_attr( $legacy_landing_page['id'] ); ?>" data-preserve-on-refresh="1" selected><?php echo esc_attr( $legacy_landing_page['name'] ); ?></option>
85 99 <?php
86 - } else {
87 - ?>
88 - <option value="<?php echo esc_attr( $landing_page['id'] ); ?>"<?php selected( $landing_page['id'], $convertkit_post->get_landing_page() ); ?>>
89 - <?php echo esc_attr( $landing_page['name'] ); ?>
90 - </option>
91 - <?php
92 100 }
93 101 }
94 102 }
95 103 ?>
96 104 </select>
97 - <button class="wp-convertkit-refresh-resources" class="button button-secondary hide-if-no-js" title="<?php esc_attr_e( 'Refresh Landing Pages from ConvertKit account', 'convertkit' ); ?>" data-resource="landing_pages" data-field="#wp-convertkit-landing_page">
105 + <button class="wp-convertkit-refresh-resources" class="button button-secondary hide-if-no-js" title="<?php esc_attr_e( 'Refresh Landing Pages from Kit account', 'convertkit' ); ?>" data-resource="landing_pages" data-field="#wp-convertkit-landing_page">
98 106 <span class="dashicons dashicons-update"></span>
99 107 </button>
100 108 <p class="description">
101 109 <?php esc_html_e( 'Select a landing page to make it appear in place of this page.', 'convertkit' ); ?>
@@ -100,12 +108,12 @@
100 108 <p class="description">
101 109 <?php esc_html_e( 'Select a landing page to make it appear in place of this page.', 'convertkit' ); ?>
102 110 <br />
103 111 <?php
104 - echo sprintf(
112 + printf(
105 113 /* translators: Link to sign in to ConvertKit */
106 114 esc_html__( 'To make changes to your landing pages, %s', 'convertkit' ),
107 - '<a href="' . esc_url( convertkit_get_sign_in_url() ) . '" target="_blank">' . esc_html__( 'sign in to ConvertKit', 'convertkit' ) . '</a>'
115 + '<a href="' . esc_url( convertkit_get_sign_in_url() ) . '" target="_blank">' . esc_html__( 'sign in to Kit', 'convertkit' ) . '</a>'
108 116 );
109 117 ?>
110 118 </p>
111 119 </div>
@@ -122,79 +130,101 @@
122 130 </th>
123 131 <td>
124 132 <div class="convertkit-select2-container convertkit-select2-container-grid">
125 133 <select name="wp-convertkit[tag]" id="wp-convertkit-tag" class="convertkit-select2">
126 - <option value="0"<?php selected( '', $convertkit_post->get_tag() ); ?> data-preserve-on-refresh="1">
127 - <?php esc_html_e( 'None', 'convertkit' ); ?>
128 - </option>
134 + <option value="0"<?php selected( '', $convertkit_post->get_tag() ); ?> data-preserve-on-refresh="1"><?php esc_html_e( 'None', 'convertkit' ); ?></option>
129 135 <?php
130 136 if ( $convertkit_tags->exist() ) {
131 137 foreach ( $convertkit_tags->get() as $convertkit_tag ) {
132 138 ?>
133 - <option value="<?php echo esc_attr( $convertkit_tag['id'] ); ?>"<?php selected( $convertkit_tag['id'], $convertkit_post->get_tag() ); ?>>
134 - <?php echo esc_attr( $convertkit_tag['name'] ); ?>
135 - </option>
139 + <option value="<?php echo esc_attr( $convertkit_tag['id'] ); ?>"<?php selected( $convertkit_tag['id'], $convertkit_post->get_tag() ); ?>><?php echo esc_attr( $convertkit_tag['name'] ); ?></option>
136 140 <?php
137 141 }
138 142 }
139 143 ?>
140 144 </select>
141 - <button class="wp-convertkit-refresh-resources" class="button button-secondary hide-if-no-js" title="<?php esc_attr_e( 'Refresh Tags from ConvertKit account', 'convertkit' ); ?>" data-resource="tags" data-field="#wp-convertkit-tag">
145 + <button class="wp-convertkit-refresh-resources" class="button button-secondary hide-if-no-js" title="<?php esc_attr_e( 'Refresh Tags from Kit account', 'convertkit' ); ?>" data-resource="tags" data-field="#wp-convertkit-tag">
142 146 <span class="dashicons dashicons-update"></span>
143 147 </button>
144 148 <p class="description">
145 149 <?php esc_html_e( 'Select a tag to apply to visitors of this page who are subscribed.', 'convertkit' ); ?>
146 150 <br />
147 - <?php esc_html_e( 'A visitor is deemed to be subscribed if they have clicked a link in an email to this site which includes their subscriber ID, or have entered their email address in a ConvertKit Form on this site.', 'convertkit' ); ?>
151 + <?php esc_html_e( 'A visitor is deemed to be subscribed if they have clicked a link in an email to this site which includes their subscriber ID, or have entered their email address in a Kit Form on this site.', 'convertkit' ); ?>
148 152 </p>
149 153 </div>
150 154 </td>
151 155 </tr>
152 156
153 - <?php
154 - if ( $restrict_content_settings->enabled() ) {
155 - ?>
156 - <tr valign="top">
157 - <th scope="row">
158 - <label for="wp-convertkit-restrict_content"><?php esc_html_e( 'Member Content', 'convertkit' ); ?></label>
159 - </th>
160 - <td>
161 - <div class="convertkit-select2-container convertkit-select2-container-grid">
162 - <select name="wp-convertkit[restrict_content]" id="wp-convertkit-restrict_content" class="convertkit-select2">
163 - <option value="0"<?php selected( '', $convertkit_post->get_restrict_content() ); ?> data-preserve-on-refresh="1">
164 - <?php esc_html_e( 'Don\'t restrict content to members only.', 'convertkit' ); ?>
165 - </option>
157 + <tr valign="top">
158 + <th scope="row">
159 + <label for="wp-convertkit-restrict_content"><?php esc_html_e( 'Member Content', 'convertkit' ); ?></label>
160 + </th>
161 + <td>
162 + <div class="convertkit-select2-container convertkit-select2-container-grid">
163 + <select name="wp-convertkit[restrict_content]" id="wp-convertkit-restrict_content" class="convertkit-select2">
164 + <option value="0"<?php selected( '', $convertkit_post->get_restrict_content() ); ?> data-preserve-on-refresh="1"><?php esc_html_e( 'Don\'t restrict content to member-only.', 'convertkit' ); ?></option>
166 165
166 + <optgroup label="<?php esc_attr_e( 'Forms', 'convertkit' ); ?>" data-resource="forms">
167 167 <?php
168 + // Forms.
169 + if ( $convertkit_forms->inline_exist() ) {
170 + foreach ( $convertkit_forms->get_inline() as $convertkit_form ) {
171 + printf(
172 + '<option value="form_%s"%s>%s [%s]</option>',
173 + esc_attr( $convertkit_form['id'] ),
174 + selected( $convertkit_post->get_restrict_content(), 'form_' . $convertkit_form['id'], false ),
175 + esc_attr( $convertkit_form['name'] ),
176 + ( ! empty( $convertkit_form['format'] ) ? esc_attr( $convertkit_form['format'] ) : 'inline' )
177 + );
178 + }
179 + }
180 + ?>
181 + </optgroup>
182 +
183 + <optgroup label="<?php esc_attr_e( 'Tags', 'convertkit' ); ?>" data-resource="tags">
184 + <?php
185 + // Tags.
186 + if ( $convertkit_tags->exist() ) {
187 + foreach ( $convertkit_tags->get() as $convertkit_tag ) {
188 + ?>
189 + <option value="tag_<?php echo esc_attr( $convertkit_tag['id'] ); ?>"<?php selected( 'tag_' . $convertkit_tag['id'], $convertkit_post->get_restrict_content() ); ?>><?php echo esc_attr( $convertkit_tag['name'] ); ?></option>
190 + <?php
191 + }
192 + }
193 + ?>
194 + </optgroup>
195 +
196 + <optgroup label="<?php esc_attr_e( 'Products', 'convertkit' ); ?>" data-resource="products">
197 + <?php
198 + // Products.
168 199 if ( $convertkit_products->exist() ) {
169 - ?>
170 - <optgroup label="<?php esc_attr_e( 'Products', 'convertkit' ); ?>">
200 + foreach ( $convertkit_products->get() as $product ) {
201 + ?>
202 + <option value="product_<?php echo esc_attr( $product['id'] ); ?>"<?php selected( 'product_' . $product['id'], $convertkit_post->get_restrict_content() ); ?>><?php echo esc_attr( $product['name'] ); ?></option>
171 203 <?php
172 - foreach ( $convertkit_products->get() as $product ) {
173 - ?>
174 - <option value="product_<?php echo esc_attr( $product['id'] ); ?>"<?php selected( 'product_' . $product['id'], $convertkit_post->get_restrict_content() ); ?>>
175 - <?php echo esc_attr( $product['name'] ); ?>
176 - </option>
177 - <?php
178 - }
179 - ?>
180 - </optgroup>
181 - <?php
204 + }
182 205 }
183 206 ?>
184 - </select>
185 - <button class="wp-convertkit-refresh-resources" class="button button-secondary hide-if-no-js" title="<?php esc_attr_e( 'Refresh Products Pages from ConvertKit account', 'convertkit' ); ?>" data-resource="products" data-field="#wp-convertkit-restrict_content">
186 - <span class="dashicons dashicons-update"></span>
187 - </button>
188 - <p class="description">
189 - <?php esc_html_e( 'Select the ConvertKit product that the visitor must be subscribed to, permitting them access to view this members only content.', 'convertkit' ); ?>
190 - </p>
191 - </div>
192 - </td>
193 - </tr>
194 - <?php
195 - }
196 - ?>
207 + </optgroup>
208 + </select>
209 + <button class="wp-convertkit-refresh-resources" class="button button-secondary hide-if-no-js" title="<?php esc_attr_e( 'Refresh Products and Tags from Kit account', 'convertkit' ); ?>" data-resource="restrict_content" data-field="#wp-convertkit-restrict_content">
210 + <span class="dashicons dashicons-update"></span>
211 + </button>
212 + <p class="description">
213 + <?php esc_html_e( 'Select the Kit form, tag or product that the visitor must be subscribed to, permitting them access to view this member-only content.', 'convertkit' ); ?>
214 + <br />
215 + <code><?php esc_html_e( 'Form', 'convertkit' ); ?></code>
216 + <?php esc_html_e( ': Displays the Kit form. On submission, the email address will be subscribed to the selected form, granting access to the member-only content. Useful to gate free content in return for an email address.', 'convertkit' ); ?>
217 + <br />
218 + <code><?php esc_html_e( 'Tag', 'convertkit' ); ?></code>
219 + <?php esc_html_e( ': Displays a WordPress styled subscription form. On submission, the email address will be subscribed to the selected tag, granting access to the member-only content. Useful to gate free content in return for an email address.', 'convertkit' ); ?>
220 + <br />
221 + <code><?php esc_html_e( 'Product', 'convertkit' ); ?></code>
222 + <?php esc_html_e( ': Displays a link to the Kit product, and a login form. Useful to gate content that can only be accessed by purchasing the Kit product.', 'convertkit' ); ?>
223 + </p>
224 + </div>
225 + </td>
226 + </tr>
197 227 </tbody>
198 228 </table>
199 229
200 230 <?php