Forum Replies Created

Viewing 15 replies - 1 through 15 (of 104 total)
  • Thread Starter Lopo Lencastre de Almeida

    (@ipublicis)

    Thanks! Keep me posted 🙂

    To remove it totally I tried also this in theme functions.php

    remove_action( 'woocommerce_before_subcategory', 'woocommerce_template_loop_category_link_open' );
    remove_action( 'woocommerce_shop_loop_subcategory_title', 'woocommerce_template_loop_category_title' );
    remove_action( 'woocommerce_after_subcategory', 'woocommerce_template_loop_category_link_close' );

    @multidots

    I solved it recreating the code above in my template override.

    I check the version of WC and is 2.5.2

    Also checked the cart-shipping.php included in WC (at public_html/wp-content/plugins/woocommerce/templates/cart) and the code refering to 'woocommerce_shipping_method_format' is not there.

    Added it here below so you can see:

    <?php
    /**
     * Shipping Methods Display
     *
     * In 2.1 we show methods per package. This allows for multiple methods per order if so desired.
     *
     * This template can be overridden by copying it to yourtheme/woocommerce/cart/cart-shipping.php.
     *
     * HOWEVER, on occasion WooCommerce will need to update template files and you (the theme developer).
     * will need to copy the new files to your theme to maintain compatibility. We try to do this.
     * as little as possible, but it does happen. When this occurs the version of the template file will.
     * be bumped and the readme will list any important changes.
     *
     * @see 	    http://docs.woothemes.com/document/template-structure/
     * @author 		WooThemes
     * @package 	WooCommerce/Templates
     * @version     2.5.0
     */
    if ( ! defined( 'ABSPATH' ) ) {
    	exit;
    }
    ?>
    <tr class="shipping">
    	<th><?php echo wp_kses_post( $package_name ); ?></th>
    	<td data-title="<?php echo esc_attr( $package_name ); ?>">
    		<?php if ( 1 < count( $available_methods ) ) : ?>
    			<ul id="shipping_method">
    				<?php foreach ( $available_methods as $method ) : ?>
    					<li>
    						<?php
    							printf( '<input type="radio" name="shipping_method[%1$d]" data-index="%1$d" id="shipping_method_%1$d_%2$s" value="%3$s" class="shipping_method" %4$s />
    								<label for="shipping_method_%1$d_%2$s">%5$s</label>',
    								$index, sanitize_title( $method->id ), esc_attr( $method->id ), checked( $method->id, $chosen_method, false ), wc_cart_totals_shipping_method_label( $method ) );
    
    							do_action( 'woocommerce_after_shipping_rate', $method, $index );
    						?>
    					</li>
    				<?php endforeach; ?>
    			</ul>
    		<?php elseif ( 1 === count( $available_methods ) ) :  ?>
    			<?php
    				$method = current( $available_methods );
    				printf( '%3$s <input type="hidden" name="shipping_method[%1$d]" data-index="%1$d" id="shipping_method_%1$d" value="%2$s" class="shipping_method" />', $index, esc_attr( $method->id ), wc_cart_totals_shipping_method_label( $method ) );
    				do_action( 'woocommerce_after_shipping_rate', $method, $index );
    			?>
    		<?php elseif ( ! WC()->customer->has_calculated_shipping() ) : ?>
    			<?php echo wpautop( __( 'Shipping costs will be calculated once you have provided your address.', 'woocommerce' ) ); ?>
    		<?php else : ?>
    			<?php echo apply_filters( is_cart() ? 'woocommerce_cart_no_shipping_available_html' : 'woocommerce_no_shipping_available_html', wpautop( __( 'There are no shipping methods available. Please double check your address, or contact us if you need any help.', 'woocommerce' ) ) ); ?>
    		<?php endif; ?>
    
    		<?php if ( $show_package_details ) : ?>
    			<?php echo '<p class="woocommerce-shipping-contents"><small>' . esc_html( $package_details ) . '</small></p>'; ?>
    		<?php endif; ?>
    
    		<?php if ( is_cart() && ! $index ) : ?>
    			<?php woocommerce_shipping_calculator(); ?>
    		<?php endif; ?>
    	</td>
    </tr>

    jalinous please open a new issue or this will become a mess.

    No warranties of any kind, ok?
    If you don’t backup and things got weary don’t ask me for help 🙂

    If you add the old cart-shipping.php to you your wp-content/themes/<your theme>/woocommerce/cart/cart-shipping.php than your problem will be solved for sure.

    Backup before any coding. With me this worked but I don’t promise that will work with you. No warranty whatsoever, ok?

    This is the code for the old cart-shipping.php

    <?php
    /**
     * Shipping Methods Display
     *
     * In 2.1 we show methods per package. This allows for multiple methods per order if so desired.
     *
     * This template can be overridden by copying it to yourtheme/woocommerce/cart/cart-shipping.php.
     *
     * HOWEVER, on occasion WooCommerce will need to update template files and you (the theme developer).
     * will need to copy the new files to your theme to maintain compatibility. We try to do this.
     * as little as possible, but it does happen. When this occurs the version of the template file will.
     * be bumped and the readme will list any important changes.
     *
     * @see 	    http://docs.woothemes.com/document/template-structure/
     * @author 		WooThemes
     * @package 	WooCommerce/Templates
     * @version     2.5.0
     */
    if ( ! defined( 'ABSPATH' ) ) {
    	exit;
    }
    ?>
    <tr class="shipping">
    	<th><?php echo wp_kses_post( $package_name ); ?></th>
    	<td data-title="<?php echo esc_attr( $package_name ); ?>">
    		<?php if ( 1 < count( $available_methods ) ) : ?>
    			<ul id="shipping_method">
    				<?php foreach ( $available_methods as $method ) : ?>
    					<li>
    						<?php
    							printf( '<input type="radio" name="shipping_method[%1$d]" data-index="%1$d" id="shipping_method_%1$d_%2$s" value="%3$s" class="shipping_method" %4$s />
    								<label for="shipping_method_%1$d_%2$s">%5$s</label>',
    								$index, sanitize_title( $method->id ), esc_attr( $method->id ), checked( $method->id, $chosen_method, false ), wc_cart_totals_shipping_method_label( $method ) );
    
    							do_action( 'woocommerce_after_shipping_rate', $method, $index );
    						?>
    					</li>
    				<?php endforeach; ?>
    			</ul>
    		<?php elseif ( 1 === count( $available_methods ) ) :  ?>
    			<?php
    				$method = current( $available_methods );
    				printf( '%3$s <input type="hidden" name="shipping_method[%1$d]" data-index="%1$d" id="shipping_method_%1$d" value="%2$s" class="shipping_method" />', $index, esc_attr( $method->id ), wc_cart_totals_shipping_method_label( $method ) );
    				do_action( 'woocommerce_after_shipping_rate', $method, $index );
    			?>
    		<?php elseif ( ! WC()->customer->has_calculated_shipping() ) : ?>
    			<?php echo wpautop( __( 'Shipping costs will be calculated once you have provided your address.', 'woocommerce' ) ); ?>
    		<?php else : ?>
    			<?php echo apply_filters( is_cart() ? 'woocommerce_cart_no_shipping_available_html' : 'woocommerce_no_shipping_available_html', wpautop( __( 'There are no shipping methods available. Please double check your address, or contact us if you need any help.', 'woocommerce' ) ) ); ?>
    		<?php endif; ?>
    
    		<?php if ( $show_package_details ) : ?>
    			<?php echo '<p class="woocommerce-shipping-contents"><small>' . esc_html( $package_details ) . '</small></p>'; ?>
    		<?php endif; ?>
    
    		<?php if ( is_cart() && ! $index ) : ?>
    			<?php woocommerce_shipping_calculator(); ?>
    		<?php endif; ?>
    	</td>
    </tr><

    If you add the old cart-shipping.php to you your wp-content/themes/<your theme>/woocommerce/cart/cart-shipping.php than your problem will be solved for sure.

    Backup before any coding. With me this worked but I don’t promise that will work with you.

    Old cart-shipping.php

    <?php
    /**
     * Shipping Methods Display
     *
     * In 2.1 we show methods per package. This allows for multiple methods per order if so desired.
     *
     * @author 		WooThemes
     * @package 	WooCommerce/Templates
     * @version     2.3.0
     */
    
    if ( ! defined( 'ABSPATH' ) ) {
    	exit;
    }
    
    ?>
    <tr class="shipping">
    	<th><?php
    		if ( $show_package_details ) {
    			printf( __( 'Shipping #%d', 'woocommerce' ), $index + 1 );
    		} else {
    			_e( 'Shipping', 'woocommerce' );
    		}
    	?></th>
    	<td>
    		<?php if ( ! empty( $available_methods ) ) : ?>
    
    			<?php if ( 1 === count( $available_methods ) ) :
    				$method = current( $available_methods );
    
    				echo wp_kses_post( wc_cart_totals_shipping_method_label( $method ) ); ?>
    				<input type="hidden" name="shipping_method[<?php echo $index; ?>]" data-index="<?php echo $index; ?>" id="shipping_method_<?php echo $index; ?>" value="<?php echo esc_attr( $method->id ); ?>" class="shipping_method" />
    
    			<?php elseif ( get_option( 'woocommerce_shipping_method_format' ) === 'select' ) : ?>
    
    				<select name="shipping_method[<?php echo $index; ?>]" data-index="<?php echo $index; ?>" id="shipping_method_<?php echo $index; ?>" class="shipping_method">
    					<?php foreach ( $available_methods as $method ) : ?>
    						<option value="<?php echo esc_attr( $method->id ); ?>" <?php selected( $method->id, $chosen_method ); ?>><?php echo wp_kses_post( wc_cart_totals_shipping_method_label( $method ) ); ?></option>
    					<?php endforeach; ?>
    				</select>
    
    			<?php else : ?>
    
    				<ul id="shipping_method">
    					<?php foreach ( $available_methods as $method ) : ?>
    						<li>
    							<input type="radio" name="shipping_method[<?php echo $index; ?>]" data-index="<?php echo $index; ?>" id="shipping_method_<?php echo $index; ?>_<?php echo sanitize_title( $method->id ); ?>" value="<?php echo esc_attr( $method->id ); ?>" <?php checked( $method->id, $chosen_method ); ?> class="shipping_method" />
    							<label for="shipping_method_<?php echo $index; ?>_<?php echo sanitize_title( $method->id ); ?>"><?php echo wp_kses_post( wc_cart_totals_shipping_method_label( $method ) ); ?></label>
    						</li>
    					<?php endforeach; ?>
    				</ul>
    
    			<?php endif; ?>
    
    		<?php elseif ( ( WC()->countries->get_states( WC()->customer->get_shipping_country() ) && ! WC()->customer->get_shipping_state() ) || ! WC()->customer->get_shipping_postcode() ) : ?>
    
    			<?php if ( is_cart() && get_option( 'woocommerce_enable_shipping_calc' ) === 'yes' ) : ?>
    
    				<p><?php _e( 'Please use the shipping calculator to see available shipping methods.', 'woocommerce' ); ?></p>
    
    			<?php elseif ( is_cart() ) : ?>
    
    				<p><?php _e( 'Please continue to the checkout and enter your full address to see if there are any available shipping methods.', 'woocommerce' ); ?></p>
    
    			<?php else : ?>
    
    				<p><?php _e( 'Please fill in your details to see available shipping methods.', 'woocommerce' ); ?></p>
    
    			<?php endif; ?>
    
    		<?php else : ?>
    
    			<?php if ( is_cart() ) : ?>
    
    				<?php echo apply_filters( 'woocommerce_cart_no_shipping_available_html',
    					'<p>' . __( 'There are no shipping methods available. Please double check your address, or contact us if you need any help.', 'woocommerce' ) . '</p>'
    				); ?>
    
    			<?php else : ?>
    
    				<?php echo apply_filters( 'woocommerce_no_shipping_available_html',
    					'<p>' . __( 'There are no shipping methods available. Please double check your address, or contact us if you need any help.', 'woocommerce' ) . '</p>'
    				); ?>
    
    			<?php endif; ?>
    
    		<?php endif; ?>
    
    		<?php if ( $show_package_details ) : ?>
    			<?php
    				foreach ( $package['contents'] as $item_id => $values ) {
    					if ( $values['data']->needs_shipping() ) {
    						$product_names[] = $values['data']->get_title() . ' &times;' . $values['quantity'];
    					}
    				}
    
    				echo '<p class="woocommerce-shipping-contents"><small>' . __( 'Shipping', 'woocommerce' ) . ': ' . implode( ', ', $product_names ) . '</small></p>';
    			?>
    		<?php endif; ?>
    
    		<?php if ( is_cart() ) : ?>
    			<?php woocommerce_shipping_calculator(); ?>
    		<?php endif; ?>
    	</td>
    </tr>

    As I can see on the template files WooCommerce removed also the logic that dealed with that from woocommerce/templates/cart/cart-shipping.php.

    Can’t understand this useless move that would impact thousands of users.

    As I can see on the template files WooCommerce removed also the logic that dealed with that from woocommerce/templates/cart/cart-shipping.php.

    Can’t understand this useless move that would impact thousands of users.

    SOLUTION:

    WooCommerce Shipping Display Mode plugin provides you an interface in WooCommerce setting section from admin side. As you know WooCommerce has removed choose shipping display mode option from 2.5.1 version. So, this plugin provides these features, admin can choose shipping display mode like radio option or select option for shipping display mode.

    https://wordpress.org/plugins/woo-shipping-display-mode/

    Notice on plugin page:

    “Compatible up to: 3.4.2”

    There are already better solutions to this issue.
    Check https://wordpress.org/plugins/simple-revision-control

    Notice on plugin page:

    “Compatible up to: 3.4.2”

    There are already better solutions to this issue.
    Check https://wordpress.org/plugins/simple-revision-control

    Notice on plugin page:

    “Compatible up to: 3.4.2”

    There are already better solutions to this issue.
    Check https://wordpress.org/plugins/simple-revision-control

    See https://wordpress.org/support/topic/permission-to-change-settings?replies=5#post-4167981

    I cannot reproduce it. Maybe those that have this issue can find the culprit plugin.

Viewing 15 replies - 1 through 15 (of 104 total)