HEX
Server: nginx/1.24.0
System: Linux DGT-WORDPRESS-VM-SERVER 6.14.0-1014-azure #14~24.04.1-Ubuntu SMP Fri Oct 3 20:52:11 UTC 2025 x86_64
User: ubuntu (1000)
PHP: 8.4.12
Disabled: NONE
Upload Files
File: /mnt/data/doccure-wp/wp-content/themes/doccure/woocommerce/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 https://docs.woocommerce.com/document/template-structure/
 * @package WooCommerce/Templates
 * @version 8.6.0
 */

defined( 'ABSPATH' ) || exit;

get_header();

/**
 * 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' );


$shop_layout = !empty(doccure_get_option('shop_layout')) ? doccure_get_option('shop_layout') : 'container';
?>

	<div class="section">
		<div class="<?php echo esc_attr($shop_layout) ?>">
			<div class="row">

      <div class="<?php echo esc_attr( doccure_grid_column_classes() ); ?>">

        <?php

  			if ( woocommerce_product_loop() ) {

  				/**
  				 * Hook: woocommerce_before_shop_loop.
  				 *
  				 * @hooked woocommerce_output_all_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' );
  			}

        ?>

      </div>

      <?php get_sidebar(); ?>

		</div>
	</div>
</div>

<?php

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

get_footer();

?>