Помощ » Проблеми » Създаване на бутон в кошницата за връщне в страницата на категорията на магазина

  • Имам интернет магазин. Идеята ми е да създам BACK бутон в страницата на количката с който да се върна в коректната страница на категорията, от която съм избрал последния продукт. Имам идея за код, но ме връща на първата страница на категорията, това не ми върши работа. Искам да извлека инфо от сесията за последния URL на категорията. Това е кода:

    <?php
    /**
    * Note: It’s not recommended to add any custom code here. Please use a child theme so that your customizations aren’t lost during updates.
    * Learn more here: http://codex.wordpress.org/Child_Themes
    */

    /* Set up session */
    add_action( ‘init’, ‘wp_check_for_product_cat_sess’);
    function wp_check_for_product_cat_sess(){
    if(!session_id()) {
    session_start();
    }
    }

    /* Set session variable when on Category or Product page */
    add_action( ‘wp’, ‘wp_check_for_product_cat’);
    function wp_check_for_product_cat(){
    global $wp_query;
    if( is_product_category() ){ // This is Category; use my ID
    $_SESSION[‘wp_last_cat’] = $wp_query->get_queried_object()->term_id;
    }
    if( is_product() ){ // This is Product; use my ID to get my Categories
    $cats = get_the_terms( $wp_query->get_queried_object(), ‘product_cat’ ) ;
    if( count( $cats ) > 0 ){
    foreach($cats as $one_cat ){
    $_SESSION[‘wp_last_cat’] = $one_cat->term_id;
    }
    }
    }

    if( is_cart() ){
    // Here we output only on Cart page, as debug tool */
    var_dump( $_SESSION[‘wp_last_cat’] );
    }
    }

    // add back to store button after cart
    // =============================================================================
    add_action(‘woocommerce_cart_actions’, ‘themeprefix_back_to_store’);
    function themeprefix_back_to_store () {
    if( isset( $_SESSION[‘wp_last_cat’] ) ){
    $shop_page_url = get_term_link( $_SESSION[‘wp_last_cat’], ‘product_cat’ );
    } else {
    $shop_page_url = get_permalink( wc_get_page_id( ‘shop’ ) );
    }

    echo ‘<div class=“woocommerce-message“>’;
    echo ‘ Continue
    Shopping →
    Would you like some more prints?’;
    echo ‘</div>’;
    }

    • Темата беше редактирана на преди 1 месец, 2 седмици от  emomarina.
  • За да отговорите на тази тема трябва да сте влезли в профила си.