Example #1
0
/**
 * 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 
}
Example #2
0
/**
 * 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);
    }
}
Example #7
0
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 
}
Example #8
0
/**
 * 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;
}
Example #9
0
/**
 * 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;
}
Example #10
0
/**
 * 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;
}