Edits to woocommerce.php not reflecting on site

As the title states, trying to replace woocommerce shop page with the grid. I have a child theme set up and moved woocommerce.php to framework/views/integrity in the child theme.

Any edits I make to that file do not appear in the live site so it’s clearly being overridden somewhere.

How do I figure out where that file is being overridden and fix the issue?

Thanks!

Hello There,

​To assist you better with this issue, would you mind providing us the url of your site with login credentials so we can take a closer look? This is to ensure that we can provide you with a tailored answer to your situation. Once you have provided us with your URL, we will be happy to assist you with everything.

To do this, you can create a secure note with the following info:
– Link to your site
– WordPress Admin username / password

Thank you.

See the login info below.

Hello There,

Regretfully the given credentials is not working for us. It seems that the username is invalid.
Please double check it.

apologies, should be working now.

Hello There,

I have logged in and checked your site. Your changes will not work. I have review the instructions and you are modifying the incorrect file. It should be archive-product.php file. Please create a new file in your computer and insert this code:

<?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 https://docs.woocommerce.com/document/template-structure/
 * @package WooCommerce/Templates
 * @version 3.4.0
 */

defined( 'ABSPATH' ) || exit;

get_header( 'shop' );

/**
 * Hook: woocommerce_before_main_content.
 *
 * @hooked woocommerce_output_content_wrapper - 10 (outputs opening divs for the content)
 * @hooked woocommerce_breadcrumb - 20
 * @hooked WC_Structured_Data::generate_website_data() - 30
 */
do_action( 'woocommerce_before_main_content' );

?>
<header class="woocommerce-products-header">
	<?php if ( apply_filters( 'woocommerce_show_page_title', true ) ) : ?>
		<h1 class="woocommerce-products-header__title page-title"><?php woocommerce_page_title(); ?></h1>
	<?php endif; ?>

	<?php
	/**
	 * Hook: woocommerce_archive_description.
	 *
	 * @hooked woocommerce_taxonomy_archive_description - 10
	 * @hooked woocommerce_product_archive_description - 10
	 */
	do_action( 'woocommerce_archive_description' );
	?>
</header>
<?php
if ( woocommerce_product_loop() ) {

	/**
	 * Hook: woocommerce_before_shop_loop.
	 *
	 * @hooked wc_print_notices - 10
	 * @hooked woocommerce_result_count - 20
	 * @hooked woocommerce_catalog_ordering - 30
	 */
	do_action( 'woocommerce_before_shop_loop' );

	woocommerce_product_loop_start();

	if ( wc_get_loop_prop( 'total' ) ) {
		while ( have_posts() ) {
			the_post();

			/**
			 * Hook: woocommerce_shop_loop.
			 *
			 * @hooked WC_Structured_Data::generate_product_data() - 10
			 */
			do_action( 'woocommerce_shop_loop' );

			wc_get_template_part( 'content', 'product' );
		}
	}

	woocommerce_product_loop_end();

	/**
	 * Hook: woocommerce_after_shop_loop.
	 *
	 * @hooked woocommerce_pagination - 10
	 */
	do_action( 'woocommerce_after_shop_loop' );
} else {
	/**
	 * Hook: woocommerce_no_products_found.
	 *
	 * @hooked wc_no_products_found - 10
	 */
	do_action( 'woocommerce_no_products_found' );
}

/**
 * Hook: woocommerce_after_main_content.
 *
 * @hooked woocommerce_output_content_wrapper_end - 10 (outputs closing divs for the content)
 */
do_action( 'woocommerce_after_main_content' );

/**
 * Hook: woocommerce_sidebar.
 *
 * @hooked woocommerce_get_sidebar - 10
 */
do_action( 'woocommerce_sidebar' );

get_footer( 'shop' );

Save this file as archive-product.php and upload this file in your child theme wp-content/themes/x-child/woocommerce/archive-product.php.

For your reference, please check out this documentation: https://theme-one.com/docs/the-grid/#grid_as_template

Thanks, but still having the same problem. No changes are being reflected in the live shop.

Additionally, there’s this line at the bottom of the woocommerce status:

Your theme has a woocommerce.php file, you will not be able to override the woocommerce/archive-product.php custom template since woocommerce.php has priority over archive-product.php. This is intended to prevent display issues.

This was the reason I was trying to edit the woocommerce.php rather than the archive-product.php

Hi @arrowmultimedia,

Yes, that template woocommerce.php is the one, any other taxonomy template of woocommerce will not work.

Though, question is how do you implement the grid? Because in Woocommerce, it’s not just a template but hooks too. Like product items and loops, I recommend contacting a developer on this kind of customization.

X woocommerce templates are just wrappers and design to match it graphically, but the internal working and processing is still controlled by Woocommerce.

Thanks!

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.