PluginProbe
Kit (formerly ConvertKit) – Email Newsletter, Email Marketing, Membership, Subscribers and Landing Pages / 2.7.4
Kit (formerly ConvertKit) – Email Newsletter, Email Marketing, Membership, Subscribers and Landing Pages v2.7.4
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 2.3.2 All 195 releases
← All changes | includes/functions.php +0 -246 3.3.22.7.4 View file →
@@ -16,9 +16,8 @@
16 16 function convertkit_plugin_activate( $network_wide ) {
17 17
18 18 // Initialise Plugin.
19 19 $convertkit = WP_ConvertKit();
20 - $convertkit->initialize();
21 20
22 21 // Check if we are on a multisite install, activating network wide, or a single install.
23 22 if ( ! is_multisite() || ! $network_wide ) {
24 23 // Single Site activation.
@@ -58,9 +57,8 @@
58 57 }
59 58
60 59 // Initialise Plugin.
61 60 $convertkit = WP_ConvertKit();
62 - $convertkit->initialize();
63 61
64 62 // Run installation routine.
65 63 switch_to_blog( $site_or_blog_id );
66 64 $convertkit->get_class( 'setup' )->activate();
@@ -78,9 +76,8 @@
78 76 function convertkit_plugin_deactivate( $network_wide ) {
79 77
80 78 // Initialise Plugin.
81 79 $convertkit = WP_ConvertKit();
82 - $convertkit->initialize();
83 80
84 81 // Check if we are on a multisite install, activating network wide, or a single install.
85 82 if ( ! is_multisite() || ! $network_wide ) {
86 83 // Single Site activation.
@@ -234,32 +231,8 @@
234 231
235 232 }
236 233
237 234 /**
238 - * Helper method to get registered plugin sidebars.
239 - *
240 - * @since 3.3.0
241 - *
242 - * @return array Plugin sidebars
243 - */
244 -function convertkit_get_plugin_sidebars() {
245 -
246 - $plugin_sidebars = array();
247 -
248 - /**
249 - * Registers plugin sidebars for the WordPress block editor.
250 - *
251 - * @since 3.3.0
252 - *
253 - * @param array $plugin_sidebars Plugin sidebars.
254 - */
255 - $plugin_sidebars = apply_filters( 'convertkit_plugin_sidebars', $plugin_sidebars );
256 -
257 - return $plugin_sidebars;
258 -
259 -}
260 -
261 -/**
262 235 * Helper method to get registered pre-publish actions.
263 236 *
264 237 * @since 2.4.0
265 238 *
@@ -282,33 +255,8 @@
282 255
283 256 }
284 257
285 258 /**
286 - * Helper method to get registered importers that can replace third party
287 - * form shortcodes and blocks with Kit form shortcodes and blocks.
288 - *
289 - * @since 3.1.7
290 - *
291 - * @return array Importers.
292 - */
293 -function convertkit_get_form_importers() {
294 -
295 - $importers = array();
296 -
297 - /**
298 - * Registers form importers for the ConvertKit Plugin.
299 - *
300 - * @since 3.1.7
301 - *
302 - * @param array $importers Importers.
303 - */
304 - $importers = apply_filters( 'convertkit_get_form_importers', $importers );
305 -
306 - return $importers;
307 -
308 -}
309 -
310 -/**
311 259 * Helper method to return the Plugin Settings Link
312 260 *
313 261 * @since 1.9.6
314 262 *
@@ -553,36 +501,8 @@
553 501
554 502 }
555 503
556 504 /**
557 - * Helper method to enqueue the frontend CSS file.
558 - *
559 - * @since 3.2.0
560 - */
561 -function convertkit_enqueue_frontend_css() {
562 -
563 - wp_enqueue_style( 'convertkit-frontend', CONVERTKIT_PLUGIN_URL . 'resources/frontend/css/frontend.css', array(), CONVERTKIT_PLUGIN_VERSION );
564 -
565 -}
566 -
567 -/**
568 - * Helper method to enqueue the frontend JS file.
569 - *
570 - * @since 3.2.0
571 - */
572 -function convertkit_enqueue_frontend_js() {
573 -
574 - wp_enqueue_script(
575 - 'convertkit-js',
576 - CONVERTKIT_PLUGIN_URL . 'resources/frontend/js/dist/frontend.min.js',
577 - array(),
578 - CONVERTKIT_PLUGIN_VERSION,
579 - true
580 - );
581 -
582 -}
583 -
584 -/**
585 505 * Helper method to enqueue Select2 scripts for use within the ConvertKit Plugin.
586 506 *
587 507 * @since 1.9.6.4
588 508 */
@@ -716,170 +636,4 @@
716 636 </script>
717 637 <?php
718 638
719 639 }
720 -
721 -/**
722 - * Checks if the given Theme is active.
723 - *
724 - * @since 3.1.4
725 - *
726 - * @param string $theme_name Theme name.
727 - * @return bool
728 - */
729 -function convertkit_is_theme_active( $theme_name ) {
730 -
731 - // Assume Theme isn't active if we can't detect it.
732 - if ( ! function_exists( 'wp_get_theme' ) ) {
733 - return false;
734 - }
735 -
736 - // Check the Parent Theme if we're on a Child Theme.
737 - if ( wp_get_theme()->parent() ) {
738 - $theme = wp_get_theme()->parent();
739 - } else {
740 - $theme = wp_get_theme();
741 - }
742 -
743 - return strtolower( $theme->get( 'Name' ) ) === strtolower( $theme_name );
744 -
745 -}
746 -
747 -/**
748 - * Returns permitted HTML output when using wp_kses( ..., convertkit_kses_allowed_html()).
749 - *
750 - * @since 2.8.5
751 - */
752 -function convertkit_kses_allowed_html() {
753 -
754 - // Get WordPress' permitted HTML elements.
755 - $elements = wp_kses_allowed_html( 'post' );
756 -
757 - // Add form elements.
758 - $form_elements = array(
759 - 'input' => array(
760 - 'type' => true,
761 - 'id' => true,
762 - 'name' => true,
763 - 'class' => true,
764 - 'value' => true,
765 - 'checked' => true,
766 - 'min' => true,
767 - 'max' => true,
768 - 'step' => true,
769 - 'data-*' => true,
770 - ),
771 - 'select' => array(
772 - 'id' => true,
773 - 'name' => true,
774 - 'class' => true,
775 - 'size' => true,
776 - 'multiple' => true,
777 - 'data-*' => true,
778 - ),
779 - 'option' => array(
780 - 'value' => true,
781 - 'selected' => true,
782 - 'data-*' => true,
783 - ),
784 - 'optgroup' => array(
785 - 'label' => true,
786 - 'data-*' => true,
787 - ),
788 - 'label' => array(
789 - 'for' => true,
790 - ),
791 - );
792 -
793 - return array_merge( $elements, $form_elements );
794 -
795 -}
796 -
797 -/**
798 - * Saves the new access token, refresh token and its expiry, and schedules
799 - * a WordPress Cron event to refresh the token on expiry.
800 - *
801 - * @since 3.1.1
802 - *
803 - * @param array $result New Access Token, Refresh Token and Expiry.
804 - * @param string $client_id OAuth Client ID used for the Access and Refresh Tokens.
805 - */
806 -function convertkit_maybe_update_credentials( $result, $client_id ) {
807 -
808 - // Don't save these credentials if they're not for this Client ID.
809 - // They're for another Kit Plugin that uses OAuth.
810 - if ( $client_id !== CONVERTKIT_OAUTH_CLIENT_ID ) {
811 - return;
812 - }
813 -
814 - $settings = new ConvertKit_Settings();
815 - $settings->update_credentials( $result );
816 -
817 -}
818 -
819 -/**
820 - * Deletes the stored access token, refresh token and its expiry from the Plugin settings,
821 - * and clears any existing scheduled WordPress Cron event to refresh the token on expiry,
822 - * when the user revokes the access token.
823 - *
824 - * @since 3.2.4
825 - *
826 - * @param string $client_id OAuth Client ID used for the Access and Refresh Tokens.
827 - */
828 -function convertkit_delete_credentials( $client_id ) {
829 -
830 - // Don't delete these credentials if they're not for this Client ID.
831 - // They're for another Kit Plugin that uses OAuth.
832 - if ( $client_id !== CONVERTKIT_OAUTH_CLIENT_ID ) {
833 - return;
834 - }
835 -
836 - // Delete Access and Refresh Tokens.
837 - $settings = new ConvertKit_Settings();
838 - $settings->delete_credentials();
839 -
840 -}
841 -
842 -/**
843 - * Deletes the stored access token, refresh token and its expiry from the Plugin settings,
844 - * and clears any existing scheduled WordPress Cron event to refresh the token on expiry,
845 - * when either:
846 - * - The access token is invalid
847 - * - The access token expired, and refreshing failed
848 - *
849 - * @since 3.1.1
850 - *
851 - * @param WP_Error $result Error result.
852 - * @param string $client_id OAuth Client ID used for the Access and Refresh Tokens.
853 - */
854 -function convertkit_maybe_delete_credentials( $result, $client_id ) {
855 -
856 - // Don't save these credentials if they're not for this Client ID.
857 - // They're for another Kit Plugin that uses OAuth.
858 - if ( $client_id !== CONVERTKIT_OAUTH_CLIENT_ID ) {
859 - return;
860 - }
861 -
862 - // If the error isn't a 401, don't delete credentials.
863 - // This could be e.g. a temporary network error, rate limit or similar.
864 - if ( $result->get_error_data( 'convertkit_api_error' ) !== 401 ) {
865 - return;
866 - }
867 -
868 - // Persist an error notice in the WordPress Administration until the user fixes the problem.
869 - WP_ConvertKit()->get_class( 'admin_notices' )->add( 'authorization_failed' );
870 -
871 - $settings = new ConvertKit_Settings();
872 - $settings->delete_credentials();
873 -
874 -}
875 -
876 -// Update Access Token when refreshed by the API class.
877 -add_action( 'convertkit_api_get_access_token', 'convertkit_maybe_update_credentials', 10, 2 );
878 -add_action( 'convertkit_api_refresh_token', 'convertkit_maybe_update_credentials', 10, 2 );
879 -
880 -// Delete credentials when the user revokes the access and refresh tokens.
881 -add_action( 'convertkit_api_revoke_tokens', 'convertkit_delete_credentials', 10, 1 );
882 -
883 -// Delete credentials if the API class uses a invalid access token.
884 -// This prevents the Plugin making repetitive API requests that will 401.
885 -add_action( 'convertkit_api_access_token_invalid', 'convertkit_maybe_delete_credentials', 10, 2 );