Woocommerce: Cómo eliminar el título de la página en la página de inicio / tienda pero no las páginas de categoría

2

He establecido la página "comprar" como mi página de inicio y quiero eliminar el título predeterminado de woocommerce de la página de inicio del sitio. He vaciado el título, pero todavía tengo una etiqueta vacía como esta en la página de inicio:

<h1 class="woocommerce-products-header__title page-title"></h1>

Esto crea un área vacía sobre el contenido que es molesto. He probado las siguientes soluciones y funcionan, PERO la página de título de las páginas de categoría también se eliminará . Quiero que se elimine el título solo en la página de inicio.

  1. Primera solución: agregué el siguiente código a mi estilo:

    .woocommerce-page .page-title {
    
     display: none;
    
    }
    
  2. Agregué lo siguiente a function.php

    add_filter('woocommerce_show_page_title', '__return_false');
    

Repito, estas soluciones hacen lo que se supone que deben hacer, pero quiero que el título de la página para las categorías permanezca y que solo se elimine el título de la página de inicio.

    
pregunta user7432810 23.11.2017 - 03:20

4 respuestas

1

puede sobrescribir la plantilla de woocommerce de "archive-product.php" en su tema actual y reemplazarla con este código.

<?php if ( apply_filters( 'woocommerce_show_page_title', true ) ) : ?>

            <?php if(!is_shop()) { ?>
            <h1 class="page-title"><?php woocommerce_page_title(); ?></h1>
            <?php } ?>
<?php endif; ?>

Como referencia etiqueta condicional de woocommerce

OR

<?php if ( apply_filters( 'woocommerce_show_page_title', true ) ) : ?>

                <?php if(is_product_category()) { ?>
                <h1 class="page-title"><?php woocommerce_page_title(); ?></h1>
                <?php } ?>
 <?php endif; ?>
    
respondido por el Patel Jignesh 23.11.2017 - 04:54
2

Hola, puedes hacer esto y espero que esto te funcione también

 <?php
    if (!is_shop()) {
      if ( apply_filters( 'woocommerce_show_page_title', true ) ) {  ?>
            <h1 class="page-title"><?php woocommerce_page_title(); ?></h1>
 <?php   }else{ ?>
      <h1 class="page-title"><?php echo ''; ?>
    }
  } ?>

Para más información Prefiera este enlace

    
respondido por el Niket Joshi 23.11.2017 - 05:24
1

Algunas formas alternativas de hacerlo:

  1. Elimina el código del título del home.php de tu tema
  2. Crear una plantilla para la página de productos
  3. Para la página de inicio, si está usando frontpage.php, entonces es muy fácil eliminarlo desde allí. De lo contrario, puede utilizar el último punto mencionado a continuación
  4. Vaya a su page.php y escriba una declaración condicional simple para verificar si es una página de inicio o no. Una referencia de esta declaración condicional del códice WP está aquí

enlace

    
respondido por el Deepak Jain 23.11.2017 - 04:44
0

En lugar de piratear plantillas, puede poner esto en functions.php del tema de su hijo:

add_filter( 'woocommerce_show_page_title', 'not_a_shop_page' );
function not_a_shop_page() {
    return boolval(!is_shop());
}
    
respondido por el Ryszard Jędraszyk 12.11.2018 - 05:44

Lea otras preguntas en las etiquetas