Vfero
Vfero

Reputation: 493

Add a DIV in Woocommerce Shop Page only

I'd like to add a DIV under the title of my Shop page, but ONLY my main shop page. I added some code in " archive-product.php " but then it display the code on every shop page.

In fact i just need a DIV saying " choose a category below " on the main Shop Page.

Thnaks a lot for your help! Vince

Upvotes: 3

Views: 4397

Answers (3)

JeroenL
JeroenL

Reputation: 11

I know this is an old post but, there is a page selected as the shop page for woocommerce. U can simply switch back to classic editor and add a div in the text section of the page u selected in the woocommerce settings. That way u don't need child theme or anything.

Upvotes: 0

LoicTheAztec
LoicTheAztec

Reputation: 253988

Instead of overriding archive-product.php template, You can use the following custom hooked function, that will add a custom <div> below the title in shop page only:

add_action( 'woocommerce_archive_description', 'additional_div_in_shop', 5 );
function additional_div_in_shop() {
    // Only on "shop" archives pages
    if( ! is_shop() ) return; 

    // Output the div
    ?>
        <div class="shop-below-title"><?php _e( "Choose a category below", "woocommerce" ); ?></div>
    <?php
}

Code goes in function.php file of your active child theme (or active theme).

Tested and works.


Related Docs: woocommerce conditional tags

Upvotes: 3

obiPlabon
obiPlabon

Reputation: 623

You can add that div conditionally like the following and then the div will be shown only on shop page

if ( is_shop() ) {
    echo '<div>Choose a category below</div>';
}

Upvotes: 2

Related Questions