/** * Add message above sharing boxes on purchase confirmation page */ function affwp_edd_purchase_confirmation_message() { if (function_exists('edd_is_success_page') && !edd_is_success_page()) { return; } ?> <p>Now tell the world you have the best affiliate marketing plugin for WordPress</p> <?php }
/** * Filter the page titles * * @since 1.0 */ function affwp_show_the_title($title, $id) { // about if ('page-templates/about.php' == get_post_meta($id, '_wp_page_template', true)) { $title = __('Who we are', 'affwp'); } // purchase confirmation if (function_exists('edd_is_success_page') && edd_is_success_page() && $id == get_the_ID()) { if (edd_get_purchase_session()) { $title = sprintf(__('Thanks %s!', 'affwp'), affwp_edd_purchase_get_first_name()); } else { $title = __('Thanks!', 'affwp'); } } return $title; }
public static function footer() { global $edd_receipt_args; ?> <!-- start Mixpanel --> <script type="text/javascript">(function(e,b){if(!b.__SV){var a,f,i,g;window.mixpanel=b;b._i=[];b.init=function(a,e,d){function f(b,h){var a=h.split(".");2==a.length&&(b=b[a[0]],h=a[1]);b[h]=function(){b.push([h].concat(Array.prototype.slice.call(arguments,0)))}}var c=b;"undefined"!==typeof d?c=b[d]=[]:d="mixpanel";c.people=c.people||[];c.toString=function(b){var a="mixpanel";"mixpanel"!==d&&(a+="."+d);b||(a+=" (stub)");return a};c.people.toString=function(){return c.toString(1)+".people (stub)"};i="disable time_event track track_pageview track_links track_forms register register_once alias unregister identify name_tag set_config people.set people.set_once people.increment people.append people.union people.track_charge people.clear_charges people.delete_user".split(" "); for(g=0;g<i.length;g++)f(c,i[g]);b._i.push([a,e,d])};b.__SV=1.2;a=e.createElement("script");a.type="text/javascript";a.async=!0;a.src="undefined"!==typeof MIXPANEL_CUSTOM_LIB_URL?MIXPANEL_CUSTOM_LIB_URL:"file:"===e.location.protocol&&"//cdn.mxpnl.com/libs/mixpanel-2-latest.min.js".match(/^\/\//)?"https://cdn.mxpnl.com/libs/mixpanel-2-latest.min.js":"//cdn.mxpnl.com/libs/mixpanel-2-latest.min.js";f=e.getElementsByTagName("script")[0];f.parentNode.insertBefore(a,f)}})(document,window.mixpanel||[]); mixpanel.init("<?php echo FT_MP_API_KEY; ?> ");</script> <!-- end Mixpanel --> <?php if (!$edd_receipt_args['id']) { return; } $sent = EDD()->session->get('ft_mp_sent_' . $edd_receipt_args['id']); if ($sent) { return; } // global $edd_receipt_args; $success_page = edd_get_option('success_page') ? is_page(edd_get_option('success_page')) : false; if (!$success_page || !edd_is_success_page()) { return; } $session = edd_get_purchase_session(); $price = $session['price']; $cart_items = $session['cart_details']; if (isset($edd_receipt_args['id'])) { EDD()->session->set('ft_mp_sent_' . $edd_receipt_args['id'], true); } // $session['user_info']['id'] ?> <script type="text/javascript"> mixpanel.identify( <?php echo $session['user_info']['id']; ?> ); mixpanel.people.set( { '$first_name' : '<?php echo esc_attr($session['user_info']['first_name']); ?> ', '$last_name' : '<?php echo esc_attr($session['user_info']['last_name']); ?> ', '$email' : "<?php echo esc_attr($session['user_info']['email']); ?> ", }); <?php foreach ($cart_items as $product) { ?> mixpanel.people.track_charge( <?php echo floatval($product["price"]); ?> , { "Product Name": '<?php echo esc_attr($product["name"]); ?> ' } ); mixpanel.track( 'Purchase', {"Amount": <?php echo floatval($product["price"]); ?> , "Product Name":<?php echo json_encode($product["name"]); ?> } ); mixpanel.people.append( 'Product Name', '<?php echo esc_attr($product["name"]); ?> ' ); <?php } ?> </script> <?php }
/** * Filter Success Page Content * * Applies filters to the success page content. * * @since 1.0 * @param string $content Content before filters * @return string $content Filtered content */ function edd_filter_success_page_content($content) { if (isset($_GET['payment-confirmation']) && edd_is_success_page()) { if (has_filter('edd_payment_confirm_' . $_GET['payment-confirmation'])) { $content = apply_filters('edd_payment_confirm_' . $_GET['payment-confirmation'], $content); } } return $content; }
/** * Adds body classes for EDD pages * * @since 2.1 * @param array $class current classes * @return array Modified array of classes */ function edd_add_body_classes($class) { $classes = (array) $class; if (edd_is_checkout()) { $classes[] = 'edd-checkout'; $classes[] = 'edd-page'; } if (edd_is_success_page()) { $classes[] = 'edd-success'; $classes[] = 'edd-page'; } if (edd_is_failed_transaction_page()) { $classes[] = 'edd-failed-transaction'; $classes[] = 'edd-page'; } if (edd_is_purchase_history_page()) { $classes[] = 'edd-purchase-history'; $classes[] = 'edd-page'; } if (edd_is_test_mode()) { $classes[] = 'edd-test-mode'; $classes[] = 'edd-page'; } return array_unique($classes); }
/** * Prevents the Purchase Confirmation screen from being detected as a 404 error in the 404 Redirected plugin * * @since 2.2.3 * @return void */ function edd_disable_404_redirected_redirect() { if (!defined('WBZ404_VERSION')) { return; } if (edd_is_success_page()) { remove_action('template_redirect', 'wbz404_process404', 10); } }
function affwp_edd_optimizely_revenue_tracking() { $session = edd_get_purchase_session(); if (!$session || !edd_is_success_page()) { return; } $payment_id = edd_get_purchase_id_by_key($session['purchase_key']); ?> <script> var price = <?php echo edd_get_payment_amount($payment_id); ?> ; window.optimizely = window.optimizely || []; window.optimizely.push(['trackEvent', 'purchase_complete', {'revenue': price * 100}]); </script> <?php }
/** * Thank the customer for purchasing */ function affwp_edd_thank_customer() { if (function_exists('edd_is_success_page') && !edd_is_success_page()) { return; } $message = '<h2>Your purchase was successful</h2>'; if ($message) { return $message; } return null; }
/** * Adds custom classes to the array of body classes. * * @since 1.0 */ function pp_body_classes($classes) { global $post; // Adds a class of 'has-featured-image' if the current post has a featured image if (isset($post->ID) && get_the_post_thumbnail($post->ID)) { $classes[] = 'has-featured-image'; } // Adds a class of group-blog to blogs with more than 1 published author if (is_multi_author()) { $classes[] = 'group-blog'; } // Adds a class of 'blog' if the blog template is being used. The homepage when used as a blog also has this class already if (is_page_template('page-templates/blog.php')) { $classes[] = 'blog'; } if (is_page_template('page-templates/testimonials.php')) { $classes[] = 'testimonials'; } if (is_post_type_archive('download')) { $classes[] = 'products'; } if (is_page_template('page-templates/assets-and-banners.php')) { $classes[] = 'assets-and-banners'; } if (is_page_template('page-templates/brand-assets.php')) { $classes[] = 'brand-assets'; } if (is_page_template('page-templates/full-width.php')) { $classes[] = 'full-width'; } if (is_page_template('page-templates/pricing.php')) { $classes[] = 'pricing'; } if (is_page_template('page-templates/join-the-site.php')) { $classes[] = 'join'; } if (is_page('register')) { $classes[] = 'register'; } if (is_page_template('page-templates/no-sidebar.php')) { $classes[] = 'no-sidebar'; } if (is_page_template('page-templates/support.php')) { $classes[] = 'support'; } if (is_page('about')) { $classes[] = 'about'; } if (is_user_logged_in() && isset($post->post_content) && has_shortcode($post->post_content, 'purchase_history')) { $classes[] = 'purchase-history'; } if (is_page_template('page-templates/changelog.php')) { $classes[] = 'changelog'; } if (wp_unslash(site_url('/')) == wp_get_referer()) { $classes[] = 'from-home'; } if (function_exists('edd_get_cart_contents') && edd_get_cart_contents()) { $classes[] = 'edd-items-in-cart'; } if (function_exists('edd_is_success_page') && edd_is_success_page()) { $classes[] = 'purchase-confirmation'; } if (is_page_template('page-templates/account.php')) { $classes[] = 'account'; if (!is_user_logged_in()) { $classes[] = 'account-logged-out'; } else { $classes[] = 'account-logged-in'; } } if (is_page_template('page-templates/affiliates.php')) { $classes[] = 'affiliates'; } return $classes; }
/** * Adds custom classes to the array of body classes. * * @since 1.0 */ function affwp_body_classes($classes) { global $post; // Adds a class of 'has-featured-image' if the current post has a featured image if (isset($post->ID) && get_the_post_thumbnail($post->ID)) { $classes[] = 'has-featured-image'; } // Adds a class of group-blog to blogs with more than 1 published author if (is_multi_author()) { $classes[] = 'group-blog'; } // Adds a class of 'blog' if the blog template is being used. The homepage when used as a blog also has this class already if (is_page_template('page-templates/blog.php')) { $classes[] = 'blog'; } if (is_page_template('page-templates/testimonials.php')) { $classes[] = 'testimonials'; } if (is_post_type_archive('download')) { $classes[] = 'addons'; } if (is_page_template('page-templates/docs.php')) { $classes[] = 'documentation'; } if (is_page_template('page-templates/assets-and-banners.php')) { $classes[] = 'assets-and-banners'; } if (is_page_template('page-templates/brand-assets.php')) { $classes[] = 'brand-assets'; } if (is_page_template('page-templates/full-width.php')) { $classes[] = 'full-width'; } if (is_page_template('page-templates/pricing.php')) { $classes[] = 'pricing'; } if (is_page_template('page-templates/support.php')) { $classes[] = 'support'; } if (is_page_template('page-templates/about.php')) { $classes[] = 'about'; } if (is_page('screenshots')) { $classes[] = 'screenshots'; } if (is_user_logged_in() && isset($post->post_content) && has_shortcode($post->post_content, 'purchase_history')) { $classes[] = 'purchase-history'; } if (is_page_template('page-templates/changelog.php')) { $classes[] = 'changelog'; } if (function_exists('edd_is_checkout') && edd_is_checkout()) { $classes[] = 'checkout'; } if (function_exists('edd_is_success_page') && edd_is_success_page()) { $classes[] = 'purchase-confirmation'; } if (is_page_template('page-templates/account.php')) { $classes[] = 'account'; if (!is_user_logged_in()) { $classes[] = 'account-logged-out'; } else { $classes[] = 'account-logged-in'; } } if (is_page_template('page-templates/affiliates.php')) { $classes[] = 'affiliates'; } return $classes; }