ecommerce WooCommerce Wordpress

How to move the Archive Text in Genesis

For a while, I have struggled with how to remove or change location of the Archive Intro Text in a Genesis-based theme. Essentially, the idea is to move the Archive Intro Text towards the bottom of the page mostly for SEO purposes.

When I asked the questions on the StudioPress forums, I did not receive a satisfactory answer. So I did what most coders do: hack it till you discover how to do this way. Worry not, because this is not a hack. It is actually the recommended way to make a change like this.

Here is the code

/* Remove the Archive Headline and Text from the default location */
remove_action( 'genesis_archive_title_descriptions', 'genesis_do_archive_headings_open', 5);
remove_action( 'genesis_archive_title_descriptions', 'genesis_do_archive_headings_close', 15);
remove_action( 'genesis_archive_title_descriptions', 'genesis_do_archive_headings_headline', 10);
remove_action( 'genesis_archive_title_descriptions', 'genesis_do_archive_headings_intro_text', 12);
/* Now, add it back at the bottom */
add_action( 'woocommerce_after_shop_loop', 'ar_add_custom_hook_archive_description', 8);
add_action( 'ar_add_wc_archive_descr_text' , 'ar_do_custom_archive_description_text', 7, 3);
function ar_add_custom_hook_archive_description() {
global $wp_query;
if ( ! is_category() && ! is_tag() && ! is_tax() ) {
$term = is_tax() ? get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) ) : $wp_query->get_queried_object();
if ( ! $term ) {
$heading = get_term_meta( $term->term_id, 'headline', true );
if ( empty( $heading ) && genesis_a11y( 'headings' ) ) {
$heading = $term->name;
$intro_text = get_term_meta( $term->term_id, 'intro_text', true );
$intro_text = apply_filters( 'genesis_term_intro_text_output', $intro_text ? $intro_text : '' );
do_action( 'ar_add_wc_archive_descr_text', $heading, $intro_text, 'taxonomy-archive-description' );
function ar_do_custom_archive_description_text( $heading = '', $intro_text = '', $context = '' ) {
if ( $heading || $intro_text ) {
genesis_markup( array(
'open' => '<div %s>',
'context' => $context,
) );
if ( $context && $intro_text ) {
echo $intro_text;
if ( $heading || $intro_text ) {
genesis_markup( array(
'close' => '</div>',
'context' => $context,
) );

view raw
hosted with ❤ by GitHub

The first 4 lines simply unhook the actions responsible for showing the Archive Intro Text at its default position. This will make sure the Archive Intro Text does not show up in its usual location.

The rest of the code moves the Archive Intro Text down to the bottom of the page, by hooking on to the “woocommerce_after_shop_loop” action. The trick is to get the relevant parameters passed to the function that eventually displays the Archive Intro Text.

This example is limited only to moving the Archive Intro Text. You will have to extend it to display the Archive Headline to the bottom.

Do let me know if you have any questions!

By Amit Ramani

Ever heard of 'tech and tack' together in the same sentence? Chances are you did not. I am part owner of a 'tack' store in Wellington (TACKNRIDER), and full owner of a 'tech' firm(ANTERIK).

One reply on “How to move the Archive Text in Genesis”

Thank You Amit, works like a charm. I’ve been working on this for about a week, not sure why google just now shows me your page.

Leave a Reply to Ron Cancel reply

Your email address will not be published. Required fields are marked *