Forum Replies Created

Viewing 15 replies - 106 through 120 (of 187 total)
  • Thread Starter devsaredead

    (@devsaredead)

    Following up on the error details, it seems like we did make a mistake with the latest version β€” the function that wyz-toolkit uses was moved to a new class and removed from the old one, instead of being marked as deprecated. We’ll include a fix in the next patch release to make sure this change is backwards compatible.

    Hello, I was hoping you had fixed the class, but you have now released a new update and I still get an error when going to the user’s dashboard. I guess you have overlooked it. Can you please fix it?

    Thread Starter devsaredead

    (@devsaredead)

    I have not resolved anything. For some reasons everything is back as it was: no notifications, no live chat, no operating hours even when logged into Tidio (which is already crazy on its own, as the chat should work also when I’m not at my PC).

    I confirm my one star rating: Tidio does not work anymore. They scr*ed it for good with the last update.

    Thread Starter devsaredead

    (@devsaredead)

    I have resolved it by counterswitching the settings. It’s unbelievable that your app documentation/troubleshooting is WRONG! The app must be into a do consent status in the “battery optimization settings”, which is the opposite of what you suggest (i.e. “do not consent”)

    Thread Starter devsaredead

    (@devsaredead)

    Never too late πŸ™‚ I ALWAYS had my operating hours working, just by having my app running in background on my mobile. The website was reflecting this and acted correctly… until the last update. I’m sure my mobile settings are correct. And yet, if I have the Tidio panel open, notifications in my mobile don’t arrive anymore.
    I have sent a dozen email to [email protected]

    Thread Starter devsaredead

    (@devsaredead)

    lowering to 1 star:

    • notifications not working anymore
    • operating hours not automatic anymore (you must have Tidio web dashboard always open)
    • support only reserved to premium customers

    Thread Starter devsaredead

    (@devsaredead)

    hello, so you are basically confirming that the latest update has made changes, because I didn’t need to stand by my website with the Tidio panel open in order to have the operating hours running. But seriously, who does?

    For the notifications, I have sent about 10 emails and have not received any reply. The battery settings are not working and the mobile is not receving notifications anymore. Only test notifications but not real ones coming from my website.

    Thread Starter devsaredead

    (@devsaredead)

    @janilyn409 could you give me some other suggestions? WPC has had many updates but I still got its settings checkboxes thrown into my users’ dashboard. As I said, I cannot change theme otherwise I would not have the users’ dashboard at all.

    Thread Starter devsaredead

    (@devsaredead)

    Thanks for that. My theme has got a membership button that can be assigned to any URL, and I have set that for the PMP page. Yet I need to ask you one more clarification? How does this fit with Woocommerce account login/account pages? I guess the ecommerce experience would be excluded by this flow, but what about my cart/payment flow?

    Thread Starter devsaredead

    (@devsaredead)

    I have resolved by disabling a security login plugin from my FTP. Then I logged in and regenerated the permalinks by hitting the “save” button again. πŸ™‚

    One suggestion: you could clarify in your documentation that in the “receiving” WP installation one must create the same database name and user as the “offering” website, because importing the file from that does NOT overwrite the data in the new site but just the tables contents. Thank you.

    Thread Starter devsaredead

    (@devsaredead)

    Thank you, I have now ruled out the error related to this plugin. Now I’ll try to fix the other ones. πŸ™‚

    Thread Starter devsaredead

    (@devsaredead)

    ….would you be really so kind to review this long snippets? (some are commented, i.e. not currently in use)

    //**** SHOP PAGE ****// 
    
    // 0) MAIN SHOP DESCRIPTION
    function avs_shop_description() {
    $description = '<p class="storemotto">SEGUITE IL VOSTRO ISTINTO... COMPRATE DA NOI</p>';
    echo $description;
    }
    add_action('woocommerce_archive_description', 'avs_shop_description');
    
    // 1) CHANGE NUMBER OF PRODUCTS DISPLAYED PER PAGE
    add_filter( 'loop_shop_per_page', create_function( '$products', 'return 9;' ), 30 );
    
    // 2) HIDE CATEGORY PRODUCT COUNT IN PRODUCT ARCHIVES
    add_filter( 'woocommerce_subcategory_count_html', '__return_false' );
    
    // 3) SHOW CATEGORY BELONGING TO EACH PRODUCT
    add_action( 'woocommerce_shop_loop_item_title', 'avs_show_all_subcats', 2 );
    function avs_show_all_subcats() {
       global $product;
       $cats = get_the_terms( $product->get_id(), 'product_cat' );
       if ( empty( $cats ) ) return;
       echo join( ', ', wp_list_pluck( $cats, 'name' ) );
    }
    
    // 4a) PRICE DISPLAY "Free" IF ZERO OR "non disponibile" IF EMPTY
    add_filter( 'woocommerce_get_price_html', 'avs_price_free_zero_empty', 9999, 2 );
    function avs_price_free_zero_empty( $price, $product ){
        if ( 0 == $product->get_price() ) { $price = '<span class="woocommerce-Price-amount amount">omaggio</span>'; }
        if ( '' === $product->get_price() ) { $price = '<span class="woocommerce-Price-amount amount">prezzo n/d</span>'; }  
        return $price;
    }
    
    // 4b) CATALOGUE DISPLAY "non disponibile" IF OUT OF STOCK
    add_filter( 'woocommerce_product_add_to_cart_text', 'avs_archive_custom_cart_button_text' );
    function avs_archive_custom_cart_button_text( $text ) {
       global $product;       
       if ( $product && ! $product->is_in_stock() ) {           
          return 'non disponibile';
       } 
       return $text;
    }
    
    // 5a) ALLOW/DISALLOW GUEST CHECKOUT OF THE PRODUCT (ADDS A METABOX IN THE PRODUCT) 
    // source: https://gist.github.com/contemplate/2adc7be2c72d585a07ac6f90b1f1e1b4 (https://gist.github.com/mikejolley/5fadb94dd9eff11ab512)
    // Display Guest Checkout Field
    add_action( 'woocommerce_product_options_general_product_data', 'woo_add_custom_general_fields' );
    function woo_add_custom_general_fields() {
      global $woocommerce, $post;
      echo '<div class="options_group">';
      // Checkbox
      woocommerce_wp_checkbox( 
      array( 
    	'id'            => '_allow_guest_checkout', 
    	'label'         => __('Checkout', 'woocommerce' ), 
    	'description'   => __('Permetti acquisto senza registrarsi (Guest Checkout)', 'woocommerce' ) 
    	)
       );
      echo '</div>';
    }
    // Save Guest Checkout Field
    add_action( 'woocommerce_process_product_meta', 'woo_add_custom_general_fields_save' );
    function woo_add_custom_general_fields_save( $post_id ){
    	$woocommerce_checkbox = isset( $_POST['_allow_guest_checkout'] ) ? 'yes' : 'no';
    	update_post_meta( $post_id, '_allow_guest_checkout', $woocommerce_checkbox );
    }
    // Enable Guest Checkout on Certain products
    add_filter( 'pre_option_woocommerce_enable_guest_checkout', 'enable_guest_checkout_based_on_product' );
    function enable_guest_checkout_based_on_product( $value ) {
      if ( WC()->cart ) {
        $cart = WC()->cart->get_cart();
        foreach ( $cart as $item ) {
          if ( get_post_meta( $item['product_id'], '_allow_guest_checkout', true ) == 'yes' ) {
            $value = "yes";
          } else {
            $value = "no";
            break;
          }
        }
      }
      return $value;
    }
    
    // 5b) FREE DOWNLOADS (PRODUCTS) WITHOUT CHECKOUT
    //function direct_free_downloads_button($button)
    //{
    //    global $product;
    //    if( $product->is_downloadable() AND $product->get_price() == 0 )
    //    {
    //        $files = $product->get_files();
    //        $files = array_keys($files);
    //        $download_url = home_url('?download_file='.$product->id.'&key='.$files[0].'&free=1' );
    //        $button = sprintf( '<a href="%s" rel="nofollow" data-product_id="%s" data-product_sku="%s" data-quantity="%s" class="button %s product_type_%s">%s</a>',
    //            esc_url( $download_url  ),
    //            esc_attr( $product->id ),
    //            esc_attr( $product->get_sku() ),
    //           esc_attr( isset( $quantity ) ? $quantity : 1 ),
    //            $product->is_purchasable() && $product->is_in_stock() ? '' : '',
    //           esc_attr( $product->product_type ),
    //            esc_html( 'omaggio' )
    //        );
    //    }
    //    return $button;
    //}
    //add_filter('woocommerce_loop_add_to_cart_link', 'direct_free_downloads_button', 100);
    //
    /**  Handles downloading of free Downloadable products * @return [type] [description]  */
    //function download_free_product_file()
    //{
    //    $product_id    = absint( $_GET['download_file'] );
    //    $_product      = wc_get_product( $product_id );
    //
    //    if( $_product->get_price() == 0 ) {
    //        WC_Download_Handler::download( $_product->get_file_download_path( filter_var($_GET['key'], FILTER_SANITIZE_STRING)  ), $product_id );
    //    }
    //}
    //if ( isset( $_GET['download_file'] ) && isset( $_GET['key'] ) && $_GET['free'] ) {
    //    add_action( 'init', 'download_free_product_file' );
    //}
    
    
    
    //** PRODUCT PAGE **// 
    
    // 6a) ADD Back-to-store BUTTON IN PRODUCT PAGE
    add_action('woocommerce_single_product_summary', 'avs_back_to_store', 45);
    // 6b) ADD Back-to-store BUTTON IN CHECKOUT PAGE
    add_action( 'woocommerce_cart_actions', 'avs_back_to_store' );
    function avs_back_to_store() { ?>
    <a class="button wc-backward" href="<?php echo get_permalink( wc_get_page_id( 'shop' ) ); ?>"><?php _e( 'tornare al Duty Free', 'woocommerce' ) ?></a>
    <?php
    }
    
    // 7) SHOW CATEGORY TITLE IN PRODUCT PAGE
    add_filter( 'woocommerce_show_page_title', 'not_a_shop_page' );
    function not_a_shop_page() {
        return boolval(!is_shop());
    }
    
    // 8) SHOW DEFAULT DESCRIPTION WHEN SHORT ONE IS EMPTY
    add_action( 'woocommerce_single_product_summary', 'avs_echo_short_desc_if_empty', 21 );
    function avs_echo_short_desc_if_empty() {
       global $post;
       if ( empty ( $post->post_excerpt  ) ) {
          $post_excerpt = '<p>';
          $post_excerpt .= 'Questo articolo Γ¨ pubblicato dalla Redazione a seguito di una ricerca di mercato indipendente.<br>Il produttore/distributore puΓ² gestirne la promozione e le vendite <a href="/membership-account/membership-levels/">registrando la propria azienda.</a>';
          $post_excerpt .= '</p>';
          echo $post_excerpt;
       }
    }
    
    // 9) CHANGE Add-to-Cart BUTTON LABEL IF PRODUCT IS ALREADY IN CART
    // Edit Single Product Page Add to Cart
    add_filter( 'woocommerce_product_single_add_to_cart_text', 'avs_custom_add_cart_button_single_product' );
    function avs_custom_add_cart_button_single_product( $label ) {
       foreach( WC()->cart->get_cart() as $cart_item_key => $values ) {
          $product = $values['data'];
          if( get_the_ID() == $product->get_id() ) {
             $label = __('aggiungere ?', 'woocommerce');
          }
       }
       return $label;
    }
    // Edit Loop Pages Add to Cart
    add_filter( 'woocommerce_product_add_to_cart_text', 'avs_custom_add_cart_button_loop', 99, 2 );
    function avs_custom_add_cart_button_loop( $label, $product ) {
       if ( $product->get_type() == 'simple' && $product->is_purchasable() && $product->is_in_stock() ) {
          foreach( WC()->cart->get_cart() as $cart_item_key => $values ) {
             $_product = $values['data'];
             if( get_the_ID() == $_product->get_id() ) {
                $label = __('Aggiungere ?', 'woocommerce');
             }
          }
       }
       return $label;
    }
    
    // 10) MOVE RELATED PRODUCTS INTO A NEW DESCRIPTION TAB
    // remove related products from their original position
    remove_action( 'woocommerce_after_single_product_summary', 'woocommerce_output_related_products', 20);
    // add a new tab
    add_filter( 'woocommerce_product_tabs', 'woo_new_product_tab' );
    function woo_new_product_tab( $tabs ) {
    $tabs['related_products'] = array(
       'title'    => __( 'PRODOTTI ANALOGHI', 'woocommerce' ),
       'priority'    => 50,
       'callback'    => 'woo_new_product_tab_content'
    );
       return $tabs;
    }
    // put the related products inside tab
    function woo_new_product_tab_content() {
    woocommerce_output_related_products();
    }
    
    
    
    //** CART PAGE **// 
    
    // 11) SHOW TOTAL WEIGHT IN CART
    add_action( 'woocommerce_before_cart', 'avs_print_cart_weight' );
    add_action( 'woocommerce_before_checkout_form', 'avs_print_cart_weight' );
    function avs_print_cart_weight() {
       $notice = 'Il Vostro bagaglio pesa: ' . WC()->cart->get_cart_contents_weight() . get_option( 'woocommerce_weight_unit' );
       if ( is_cart() ) {
          wc_print_notice( $notice, 'notice' );
       } else {
          wc_add_notice( $notice, 'notice' );
       }
    }
    
    // 12) DISPLAY Regular/Sale SUBTOTAL IN CART TABLE
    add_filter( 'woocommerce_cart_item_price', 'avs_change_cart_table_price_display', 30, 3 );
    function avs_change_cart_table_price_display( $price, $values, $cart_item_key ) {
       $slashed_price = $values['data']->get_price_html();
       $is_on_sale = $values['data']->is_on_sale();
       if ( $is_on_sale ) {
          $price = $slashed_price;
       }
       return $price;
    }
    
    // 13) DISPLAY CATEGORIES UNDER PRODUCTS NAMES IN CART TABLE
    add_filter( 'woocommerce_cart_item_name', 'avs_cart_item_category', 9999, 3 );
    function avs_cart_item_category( $name, $cart_item, $cart_item_key ) {
       $product = $cart_item['data'];
       if ( $product->is_type( 'variation' ) ) {
          $product = wc_get_product( $product->get_parent_id() );
       }
       $cat_ids = $product->get_category_ids();
       if ( $cat_ids ) $name .= '<br>' . wc_get_product_category_list( $product->get_id(), ', ', '<span class="posted_in">' . _n( 'Category:', 'Categories:', count( $cat_ids ), 'woocommerce' ) . ' ', '</span>' );
       return $name;
    }
    
    
    
    //** CHECKOUT PAGE **// 
    
    // 14) MESSAGE OF REMAINING COST TO ENABLE FREE SHIPPING
    function avs_avviso_sped_free() {
       $min_free = 50; // importo minimo per spedizione gratuita impostato su WooCommerce
       $cart_now = WC()->cart->subtotal;
       if ( $cart_now < $min_free ) {
          $added_text = 'Attenzione: aggiungendo ulteriori <strong>' . wc_price( $min_free - $cart_now ) . '</strong> al bagaglio, la spedizione sarΓ  gratuita.';
          $notice = sprintf( $added_text );
          wc_print_notice( $notice, 'notice' );
       } 
    }
    add_action( 'woocommerce_before_checkout_form', 'avs_avviso_sped_free' );
    
    // 15) ADD Back-to-cart BUTTON IN CHECKOUT PAGE
    add_action( 'woocommerce_before_checkout_form', 'avs_return_to_cart_notice_button' );
    function avs_return_to_cart_notice_button(){
        $message = __('Avete altro da dichiarare?', 'woocommerce');
        $button_text = __('mostrate nuovamente il babaglio', 'woocommerce');
        $cart_link = WC()->cart->get_cart_url();
        wc_add_notice( '<a href="' . $cart_link . '" class="button wc-forward">' . $button_text . '</a>' . $message, 'notice' );
    }
    add_filter('ywctm_modify_woocommerce_after_shop_loop_item', '__return_false');
    
    // 16a) HIDE BILLING DETAILS FROM CHECKOUT IF ONLY VIRTUAL PRODUCTS 
    add_filter( 'woocommerce_checkout_fields' , 'avs_simplify_checkout_virtual' );
    function avs_simplify_checkout_virtual( $fields ) {
       $only_virtual = true;
       foreach( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
          // Check if there are non-virtual products
          if ( ! $cart_item['data']->is_virtual() ) $only_virtual = false;   
       }
        if( $only_virtual ) {
           unset($fields['billing']['billing_company']);
           unset($fields['billing']['billing_address_1']);
           unset($fields['billing']['billing_address_2']);
           unset($fields['billing']['billing_city']);
           unset($fields['billing']['billing_postcode']);
           unset($fields['billing']['billing_country']);
           unset($fields['billing']['billing_state']);
           unset($fields['billing']['billing_phone']);
           add_filter( 'woocommerce_enable_order_notes_field', '__return_false' );
         }
         return $fields;
    }
    
    // 16b) HIDE BILLING DETAILS FROM CHECKOUT IF SHIPPING METHOD IS LOCALPICKUP
    add_filter('woocommerce_checkout_fields', 'avs_remove_billing_checkout_fields');
    function avs_remove_billing_checkout_fields($fields) {
    	$shipping_method ='local_pickup:2'; // Value of the applicable shipping method.
    	global $woocommerce;
    		$chosen_methods = WC()->session->get( 'chosen_shipping_methods' );
    		$chosen_shipping = $chosen_methods[0];
    	if ($chosen_shipping == $shipping_method) {
    		unset($fields['billing']['billing_address_1']); // Value of field name to be hidden
    		unset($fields['billing']['billing_address_2']);
    	    unset($fields['billing']['billing_city']);
            unset($fields['billing']['billing_postcode']);
            unset($fields['billing']['billing_country']);
            unset($fields['billing']['billing_state']);
            unset($fields['billing']['billing_phone']);
    	}
    	return $fields;
    }
    
    // 17) DISPLAY original/coupon-discounted SUBTOTAL IN CHECKOUT TABLE
    add_filter( 'woocommerce_cart_subtotal', 'avs_slash_cart_subtotal_if_discount', 9999, 3 );
    function avs_slash_cart_subtotal_if_discount( $cart_subtotal, $compound, $cart ){
       if ( $cart->get_cart_discount_total() > 0 ) {
          return wc_format_sale_price( $cart->get_subtotal(), $cart->get_subtotal() - $cart->get_cart_discount_total() );
       }
       return $cart_subtotal;
    }
    
    // 18) PRODUCT IMAGES AT CHECKOUT and ORDER PAGE
    //add_filter( 'woocommerce_cart_item_name', 'avs_product_image_review_order_checkout', 9999, 3 );
    //function avs_product_image_review_order_checkout( $name, $cart_item, $cart_item_key ) {
    //    if ( ! is_checkout() ) return $name;
    //    $product = $cart_item['data'];
    //    $thumbnail = $product->get_image( array( '50', '50' ), array( 'class' => 'alignleft' ) );
    //    return $thumbnail . $name;
    //}
    
    add_filter( 'woocommerce_cart_item_name', 'avs_product_image_on_checkout', 10, 3 );
    function avs_product_image_on_checkout( $name, $cart_item, $cart_item_key ) {  
    /* Return if not checkout page */
    if ( ! is_checkout() ) {return $name;}
    /* Get product object */
    $_product = apply_filters( 'woocommerce_cart_item_product', $cart_item['data'], $cart_item, $cart_item_key );
    /* Get product thumbnail */
    $thumbnail = $_product->get_image();
    /* Add wrapper to image and add some css */
    $image = '<div style="width:52px;padding:0 7px 7px 0;display:inline-block;vertical-align:top;">' . $thumbnail . '</div>';
    /* Prepend image to name and return it */
    return $image . $name;
    }
    
    add_filter( 'woocommerce_order_item_name', 'avs_product_image_on_order_pay', 10, 3 );
    function avs_product_image_on_order_pay( $name, $item, $extra ) {
    /* Return if not checkout page */
    if ( ! is_checkout() ) {return $name;}
    $product_id = $item->get_product_id();
    /* Get product object */
    $_product = wc_get_product( $product_id );
    /* Get product thumbnail */
    $thumbnail = $_product->get_image();
    /* Add wrapper to image and add some css */
    $image = '<div style="width:52px;padding:0 7px 7px 0;display:inline-block;vertical-align:top;">' . $thumbnail . '</div>';
    /* Prepend image to name and return it */
    return $image . $name;
    }
    
     add_filter( 'woocommerce_checkout_product_title', 'my_add_order_review_product_image', 10, 2 );
    // XX) PLACEHOLDERS IN CHECKOUT FORMS
    //add_filter( 'woocommerce_checkout_fields', 'avs_labels_inside_checkout_fields', 9999 );
    //function avs_labels_inside_checkout_fields( $fields ) {
    //   foreach ( $fields as $section => $section_fields ) {
    //      foreach ( $section_fields as $section_field => $section_field_settings ) {
    //         $fields[$section][$section_field]['placeholder'] = $fields[$section][$section_field]['label'];
    //         $fields[$section][$section_field]['label'] = '';
    //      }
    //   }
    //   return $fields;
    //}
    
    
    
    //** USER MY-ACCOUNT PAGE **// 
    
    // 19) PRINT CUSTOMER AVATAR IN MY-ACCOUNT PAGE
     function avs_myaccount_customer_avatar() {
         $current_user = wp_get_current_user();
         echo '<div class="myaccount_avatar">' . get_avatar( $current_user->user_email, 72, '', $current_user->display_name ) . '</div>';
     }
     add_action( 'woocommerce_account_content', 'avs_myaccount_customer_avatar', 5 );
    
    // 20) DISPLAY ALL PRODUCTS PURCHASED BY USER INTO HIS MY-ACCOUNT PAGE
    add_shortcode( 'my_purchased_products', 'avs_products_bought_by_curr_user' );
    function avs_products_bought_by_curr_user() {
        // get current user
        $current_user = wp_get_current_user();
        if ( 0 == $current_user->ID ) return;
        // get user orders (completed + processing)
        $customer_orders = get_posts( array(
            'numberposts' => -1,
            'meta_key'    => '_customer_user',
            'meta_value'  => $current_user->ID,
            'post_type'   => wc_get_order_types(),
            'post_status' => array_keys( wc_get_is_paid_statuses() ),
        ) );
        // loop through orders and get products IDs
        if ( ! $customer_orders ) return;
        $product_ids = array();
        foreach ( $customer_orders as $customer_order ) {
            $order = wc_get_order( $customer_order->ID );
            $items = $order->get_items();
            foreach ( $items as $item ) {
                $product_id = $item->get_product_id();
                $product_ids[] = $product_id;
            }
        }
        $product_ids = array_unique( $product_ids );
        $product_ids_str = implode( ",", $product_ids );
        // pass product IDs to products shortcode
        return do_shortcode("[products ids='$product_ids_str']");
    }
    
    // 21) DISPLAY USER'S WISHLIST INTO HIS MY-ACCOUNT PAGE
    // 1. Register new endpoint (URL) for My Account page  (Note: Re-save Permalinks or it will give 404 error, the flush rule makes unnecessary to save permalinks)
    //function avs_add_wishlist_endpoint() {
    //    add_rewrite_endpoint( 'wishlist', EP_ROOT | EP_PAGES );
    //	flush_rewrite_rules();
    //}
    //add_action( 'init', 'avs_add_wishlist_endpoint' );
    // 2. Add new query var  
    //function avs_wishlist_query_vars( $vars ) {
    //    $vars[] = 'wishlist';
    //    return $vars;
    //}
    //add_filter( 'query_vars', 'avs_wishlist_query_vars', 0 );
    // 3. Insert the new endpoint into the My Account menu
    //function avs_add_wishlist_link_my_account( $items ) {
    //    $items['wishlist'] = 'DESIDERATI';
    //    return $items;
    //}
    //add_filter( 'woocommerce_account_menu_items', 'avs_add_wishlist_link_my_account' );
    // 4. Add content to the new tab  (Note: add_action must follow 'woocommerce_account_{your-endpoint-slug}_endpoint' format)
    //function avs_wishlist_content() {
    //   echo '<p>Questa Γ¨ la lista degli acquisti che desiderate fare in un secondo momento... ma attenti a non far scappare le offerte!</p>';
    //   echo do_shortcode( ' [woosw_list] ' );
    //}
    //add_action( 'woocommerce_account_wishlist_endpoint', 'avs_wishlist_content' );
    Thread Starter devsaredead

    (@devsaredead)

    hello, debugging and spotting the culprit is not a problem, but my question is: once I know the plugin that conflicts with PHP, what portion of code needs to be changed? And changed how?

    Thread Starter devsaredead

    (@devsaredead)

    yes, the full error is this:

    Fatal error: Uncaught Error: Call to undefined function create_function() in /…/wp-content/plugins/code-snippets/php/snippet-ops.php(582) : eval()’d code:11 Stack trace: #0 /…/wp-content/plugins/code-snippets/php/snippet-ops.php(582): eval() #1 /…/wp-content/plugins/code-snippets/php/snippet-ops.php(663): Code_Snippets\execute_snippet(‘//**** SHOP PAG…’, 17) #2 /…/wp-includes/class-wp-hook.php(324): Code_Snippets\execute_active_snippets(”) #3 /…/wp-includes/class-wp-hook.php(348): WP_Hook->apply_filters(NULL, Array) #4 /…/wp-includes/plugin.php(517): WP_Hook->do_action(Array) #5 /…/wp-settings.php(550): do_action(‘plugins_loaded’) #6 /…/wp-config.php(98): require_once(‘/home/agenda/ba…’) #7 /…/wp-load.php(50): require_once(‘/…’) #8 /…/wp-blog-header.php(13): require_once(‘/…/’) #9 /…/index.php(17): require(‘/…’) #10 {main} thrown in /…/wp-content/plugins/code-snippets/php/snippet-ops.php(582) : eval()’d code on line 11

    I have noticed the //**** SHOP PAG tag, so I went to disable the single snippet and it fixes the error. The problem is that it’s a snippet with several functions related to Woocommerce, so it’s hard to spot which one in particular

    Thread Starter devsaredead

    (@devsaredead)

    I’m glad my issue has helped you spot a mistake. Once the fix is released I hope I will be able to amend the class on my own (maybe it will just be a matter of changing some words) because wyz-toolkit is currently not being upgraded by the developers. I will let you know what happens after the fix.

    Thread Starter devsaredead

    (@devsaredead)

    Thank you for your time but, again, I reckon there are no conflicts with other plugins. The error appears only when I enter the user-dashboard, but the core plugin running that has not been updated for quite a long time. I always updated WPJM and never got this error, only with 2.3.0. I have also recreated a new staging site, but the problem persists.

    I wouldn’t know how to get support from Github because it’s for developers.

Viewing 15 replies - 106 through 120 (of 187 total)