PolyWolves
PolyWolves

Reputation: 43

Move woocommerce category description below products

We are trying to get our product category descriptions to the bottom of the page so the products show first. I tried all the suggestions in this topic but none of them worked like they should.

The following piece of code places the category discription in three places, above the products, through the products and below the products.

remove_action( 'woocommerce_archive_description', 'woocommerce_taxonomy_archive_description', 10 );

add_action( 'woocommerce_after_main_content', 'woocommerce_taxonomy_archive_description', 100 );

add_action( 'woocommerce_after_shop_loop', 'woocommerce_taxonomy_archive_description', 100 );

When I remove the middle line (about the main_content) the description that goes through the products disappears. So all I need to fix is removing the description for the top of the product page.

I would really appreciate your help. It might help to check out the product category on our website.

Code of my archive-product.php:

<?php

/** * The Template for displaying product archives, including the main shop page which is a post type archive * * This template can be overridden by copying it to yourtheme/woocommerce/archive-product.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 Transvelo * @package WooCommerce/Templates * @version 2.0.0 */

if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly }

electro_get_header(); ?>

<?php
    /**
     * woocommerce_before_main_content hook.
     *
     * @hooked electro_before_wc_content - 10 (outputs opening divs for the content)
     * @hooked electro_before_product_archive_content - 20
     */
    do_action( 'woocommerce_before_main_content' );
?>

    <?php
        /**
         * woocommerce_archive_description hook.
         *
         * @hooked woocommerce_taxonomy_archive_description - 10
         * @hooked woocommerce_product_archive_description - 10
         */
        do_action( 'woocommerce_archive_description' );
    ?>

    <?php if ( have_posts() ) : ?>

        <?php
            /**
             * woocommerce_before_shop_loop hook.
             *
             * @hooked electro_product_subcategories - 0
             * @hooked electro_wc_loop_title - 10
             * @hooked electro_shop_control_bar - 10
             * @hooked electro_reset_woocommerce_loop - 90
             */
            do_action( 'woocommerce_before_shop_loop' );
        ?>

        <?php
            /**
             * woocommerce_shop_loop hook
             *
             * @hooked electro_shop_loop
             */
            do_action( 'woocommerce_shop_loop' );
        ?>

        <?php
            /**
             * woocommerce_after_shop_loop hook.
             *
             * @hooked woocommerce_pagination - 10
             */
            do_action( 'woocommerce_after_shop_loop' );
        ?>

    <?php elseif ( ! woocommerce_product_subcategories( array( 'before' => woocommerce_product_loop_start( false ), 'after' => woocommerce_product_loop_end( false ) ) ) ) : ?>

        <?php wc_get_template( 'loop/no-products-found.php' ); ?>

    <?php endif; ?>

<?php
    /**
     * woocommerce_after_main_content hook.
     *
     * @hooked woocommerce_output_content_wrapper_end - 10 (outputs closing divs for the content)
     */
    do_action( 'woocommerce_after_main_content' );
?>

<?php
    /**
     * woocommerce_sidebar hook.
     *
     * @hooked woocommerce_get_sidebar - 10
     */
    do_action( 'woocommerce_sidebar' );
?>

Upvotes: 1

Views: 9248

Answers (3)

hojjat.mi
hojjat.mi

Reputation: 1534

Use this code in function.php

// move category description to bottom of pages
remove_action( 'woocommerce_archive_description','woocommerce_taxonomy_archive_description', 10 );
add_action( 'woocommerce_after_shop_loop', 'woocommerce_taxonomy_archive_description', 100 );

Upvotes: 1

Marco Barbadoro
Marco Barbadoro

Reputation: 71

insert this function in the function.php of your theme. to activate the short code.

use the shortcode in the category page, the text enclosed in the short code will make the jump

[wcsaltasotto]

text you want to jump below

[/wcsaltasotto]

  function salta_sotto_shortcode( $atts, $content = null ) {
         $GLOBALS['salta_sotto_marco'] = '<div class="descrizione-due">' . $content . '<br></div><br>';
    
    
    }
    add_shortcode( 'wcsaltasotto', 'salta_sotto_shortcode' );
    
    function funzione_salta_sotto_marco ( ){
    
        if (isset($GLOBALS['salta_sotto_marco'])) {
     echo  $GLOBALS['salta_sotto_marco'] ;
    }
    
    }
    
    add_action( 'woocommerce_after_shop_loop', 'funzione_salta_sotto_marco' );

Upvotes: 0

subash pandey
subash pandey

Reputation: 63

Add this code in function.php

add_action('woocommerce_archive_description', 'custom_archive_description', 2);

function custom_archive_description(){ 
  if ( is_product_category() ){
    remove_action('woocommerce_archive_description', 'woocommerce_taxonomy_archive_description', 10 );
    add_action('woocommerce_after_main_content', 'woocommerce_taxonomy_archive_description', 5 );
  }
}

Source link

Upvotes: 3

Related Questions