PluginProbe
Kit (formerly ConvertKit) – Email Newsletter, Email Marketing, Membership, Subscribers and Landing Pages / 2.5.0
Kit (formerly ConvertKit) – Email Newsletter, Email Marketing, Membership, Subscribers and Landing Pages v2.5.0
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 2.3.2 2.3.3 All 194 releases
← All changes | includes/functions.php +150 -31 2.2.32.5.0 View file →
@@ -106,13 +106,35 @@
106 106 * @return array Post Types
107 107 */
108 108 function convertkit_get_supported_post_types() {
109 109
110 + // Define supported Post Types.
110 111 $post_types = array(
111 112 'page',
112 113 'post',
113 114 );
114 115
116 + // If public Custom Post Types can be fetched, include them now.
117 + if ( function_exists( 'get_post_types' ) ) {
118 + // Get public Custom Post Types.
119 + $custom_post_types = get_post_types(
120 + array(
121 + 'public' => true,
122 +
123 + // Don't include WordPress' built in Post Types, such as attachment, revisino and nav_menu_item.
124 + '_builtin' => false,
125 + )
126 + );
127 +
128 + // Sanity check an array was returned.
129 + if ( is_array( $custom_post_types ) ) {
130 + $post_types = array_merge(
131 + $post_types,
132 + array_keys( $custom_post_types )
133 + );
134 + }
135 + }
136 +
115 137 /**
116 138 * Defines the Post Types that support ConvertKit Forms.
117 139 *
118 140 * @since 1.9.6
@@ -129,27 +151,16 @@
129 151 * Helper method to get supported Post Types for Restricted Content (Member's Content)
130 152 *
131 153 * @since 2.1.0
132 154 *
155 + * @deprecated 2.4.3 No longer used by internal code and not recommended. Use `convertkit_get_supported_post_types` instead.
156 + *
133 157 * @return array Post Types
134 158 */
135 159 function convertkit_get_supported_restrict_content_post_types() {
136 160
137 - $post_types = array(
138 - 'page',
139 - );
161 + return convertkit_get_supported_post_types();
140 162
141 - /**
142 - * Defines the Post Types that support Restricted Content / Members Content functionality.
143 - *
144 - * @since 2.0.0
145 - *
146 - * @param array $post_types Post Types
147 - */
148 - $post_types = apply_filters( 'convertkit_get_supported_restrict_content_post_types', $post_types );
149 -
150 - return $post_types;
151 -
152 163 }
153 164
154 165 /**
155 166 * Helper method to get registered Shortcodes.
@@ -223,8 +234,32 @@
223 234
224 235 }
225 236
226 237 /**
238 + * Helper method to get registered pre-publish actions.
239 + *
240 + * @since 2.4.0
241 + *
242 + * @return array Pre-publish actions
243 + */
244 +function convertkit_get_pre_publish_actions() {
245 +
246 + $pre_publish_actions = array();
247 +
248 + /**
249 + * Registers pre-publish actions for the ConvertKit Plugin.
250 + *
251 + * @since 2.4.0
252 + *
253 + * @param array $pre_publish_panels Pre-publish actions.
254 + */
255 + $pre_publish_actions = apply_filters( 'convertkit_get_pre_publish_actions', $pre_publish_actions );
256 +
257 + return $pre_publish_actions;
258 +
259 +}
260 +
261 +/**
227 262 * Helper method to return the Plugin Settings Link
228 263 *
229 264 * @since 1.9.6
230 265 *
@@ -244,8 +279,29 @@
244 279
245 280 }
246 281
247 282 /**
283 + * Helper method to return the Plugin Settings Link
284 + *
285 + * @since 2.2.4
286 + *
287 + * @param array $query_args Optional Query Args.
288 + * @return string Settings Link
289 + */
290 +function convertkit_get_setup_wizard_plugin_link( $query_args = array() ) {
291 +
292 + $query_args = array_merge(
293 + $query_args,
294 + array(
295 + 'page' => 'convertkit-setup',
296 + )
297 + );
298 +
299 + return add_query_arg( $query_args, admin_url( 'options.php' ) );
300 +
301 +}
302 +
303 +/**
248 304 * Helper method to return the URL the user needs to visit to register a ConvertKit account.
249 305 *
250 306 * @since 1.9.8.4
251 307 *
@@ -284,15 +340,15 @@
284 340
285 341 }
286 342
287 343 /**
288 - * Helper method to return the URL the user needs to visit on the ConvertKit app to obtain their API Key and Secret.
344 + * Helper method to return the URL the user needs to visit to manage thier billing.
289 345 *
290 - * @since 1.9.6.1
346 + * @since 2.2.7
291 347 *
292 - * @return string ConvertKit App URL.
348 + * @return string ConvertKit Billing URL.
293 349 */
294 -function convertkit_get_api_key_url() {
350 +function convertkit_get_billing_url() {
295 351
296 352 return add_query_arg(
297 353 array(
298 354 'utm_source' => 'wordpress',
@@ -298,9 +354,9 @@
298 354 'utm_source' => 'wordpress',
299 355 'utm_term' => get_locale(),
300 356 'utm_content' => 'convertkit',
301 357 ),
302 - 'https://app.convertkit.com/account_settings/advanced_settings/'
358 + 'https://app.convertkit.com/account_settings/billing/'
303 359 );
304 360
305 361 }
306 362
@@ -308,9 +364,9 @@
308 364 * Helper method to return the URL the user needs to visit on the ConvertKit app to create a new Form or Landing Page.
309 365 *
310 366 * @since 2.2.3
311 367 *
312 - * @return string ConvertKit App URL.
368 + * @return string ConvertKit App URL
313 369 */
314 370 function convertkit_get_new_form_url() {
315 371
316 372 return add_query_arg(
@@ -318,9 +374,9 @@
318 374 'utm_source' => 'wordpress',
319 375 'utm_term' => get_locale(),
320 376 'utm_content' => 'convertkit',
321 377 ),
322 - 'https://app.convertkit.com/forms/designers/new/'
378 + 'https://app.convertkit.com/forms/new/'
323 379 );
324 380
325 381 }
326 382
@@ -344,8 +400,72 @@
344 400
345 401 }
346 402
347 403 /**
404 + * Helper method to return the URL the user needs to visit on the ConvertKit app to create a new Tag.
405 + *
406 + * @since 2.3.3
407 + *
408 + * @return string ConvertKit App URL.
409 + */
410 +function convertkit_get_new_tag_url() {
411 +
412 + return add_query_arg(
413 + array(
414 + 'utm_source' => 'wordpress',
415 + 'utm_term' => get_locale(),
416 + 'utm_content' => 'convertkit',
417 + ),
418 + 'https://app.convertkit.com/subscribers/'
419 + );
420 +
421 +}
422 +
423 +/**
424 + * Helper method to return the URL the user needs to visit on the ConvertKit app to create a new Broadcast.
425 + *
426 + * @since 2.2.6
427 + *
428 + * @return string ConvertKit App URL.
429 + */
430 +function convertkit_get_new_broadcast_url() {
431 +
432 + return add_query_arg(
433 + array(
434 + 'utm_source' => 'wordpress',
435 + 'utm_term' => get_locale(),
436 + 'utm_content' => 'convertkit',
437 + ),
438 + 'https://app.convertkit.com/campaigns/'
439 + );
440 +
441 +}
442 +
443 +/**
444 + * Helper method to return the URL the user needs to visit on the ConvertKit app to edit a draft Broadcast.
445 + *
446 + * @since 2.4.0
447 + *
448 + * @param int $broadcast_id ConvertKit Broadcast ID.
449 + * @return string ConvertKit App URL.
450 + */
451 +function convertkit_get_edit_broadcast_url( $broadcast_id ) {
452 +
453 + return add_query_arg(
454 + array(
455 + 'utm_source' => 'wordpress',
456 + 'utm_term' => get_locale(),
457 + 'utm_content' => 'convertkit',
458 + ),
459 + sprintf(
460 + 'https://app.convertkit.com/campaigns/%s/draft',
461 + $broadcast_id
462 + )
463 + );
464 +
465 +}
466 +
467 +/**
348 468 * Helper method to return the URL the user needs to visit on the ConvertKit app to create a new Product.
349 469 *
350 470 * @since 2.2.3
351 471 *
@@ -397,22 +517,21 @@
397 517 * @return string File contents.
398 518 */
399 519 function convertkit_get_file_contents( $local_file ) {
400 520
401 - // Call globals.
402 - global $wp_filesystem;
521 + // Bail if the file doesn't exist.
522 + if ( ! file_exists( $local_file ) ) {
523 + return '';
524 + }
403 525
404 - // Load filesystem class.
405 - require_once ABSPATH . 'wp-admin/includes/file.php';
526 + // Read file.
527 + $contents = file_get_contents( $local_file ); // phpcs:ignore WordPress.WP.AlternativeFunctions.file_get_contents_file_get_contents
406 528
407 - // Initiate.
408 - WP_Filesystem();
409 -
410 - // Bail if the file doesn't exist.
411 - if ( ! $wp_filesystem->exists( $local_file ) ) {
529 + // Return an empty string if the contents of the file could not be read.
530 + if ( ! $contents ) {
412 531 return '';
413 532 }
414 533
415 534 // Return file's contents.
416 - return $wp_filesystem->get_contents( $local_file );
535 + return $contents;
417 536
418 537 }