• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Evaluaciones
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

359
Vistas
WooCommerce: determine la categoría de producto de la página de producto único actual

En mi header.php quiero agregar un título basado en la categoría de la página.

Mi código actual se ve así:

 <h1 class="page-title"><?php if (is_category('english') || has_category('english',$post->ID)) { echo "music in the world of noise"; } elseif (is_category('marathi') || has_category('marathi',$post->ID)) { echo "क्षितिज जसे दिसते"; } elseif (is_category('happenings') || has_category('happenings',$post->ID)) { echo "Happenings"; } elseif (is_product() && is_product_category( 'music' ) ) { echo "music"; } elseif (is_product_category( 'album' )) { echo "albums"; } elseif ( is_product() && is_product_category( 'workshop' ) ) { echo "Workshop"; } elseif( is_product() && has_term( 'workshop' ) ) { echo "Workshop"; } else { the_title(); } ?> </h1>

Quiero hacer eco del Workshop en h1 si la página del producto es una página de un solo producto Y si ese producto está en la categoría del workshop . Lo mismo para la Music . is_product_category funciona solo en la página de categoría, no en la página de un solo producto.

¿Cómo determino la categoría de un solo producto y me hago eco del texto correspondiente? ¿Otras declaraciones if ( is_category('english') has_category() ) funcionan excepto en las páginas de woocommerce?

about 3 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Hay algunos errores en su código con respecto a las categorías de WooCommerce:

  • Las funciones is_category() y has_category() no funcionan con las categorías de productos de WooCommerce (las categorías de productos de WooCommerce son una taxonomía personalizada ' product_cat ') .
  • El condicional is_product() && is_product_category() no funcionará junto con && , ya que is_product() apuntará a páginas de productos individuales e is_product_category() apuntará a páginas de archivos de categorías de productos.

Para segmentar sus categorías de productos en páginas de un solo producto, debe usar la función condicional de Wordpresshas_term() con la taxonomía ' product_cat '.
También puede dirigirse a páginas de archivos de categorías de productos al mismo tiempo en su condición, si usan el mismo título...

Entonces, su código (para las categorías de productos de WooCommerce) será algo como:

 <h1 class="page-title"><?php // ... / ... if ( is_product() && has_term( 'music', 'product_cat' ) || is_product_category( 'music' ) ) { echo "Music"; } elseif ( is_product() && has_term( 'album', 'product_cat' ) || is_product_category( 'album' ) ) { echo "Albums"; } elseif( is_product() && has_term( 'workshop', 'product_cat' ) || is_product_category( 'workshop' ) ) { echo "Workshop"; } else { the_title(); } ?></h1>

Si no necesita apuntar al mismo tiempo a páginas de archivos de categorías de productos, tendrá que eliminar en cada declaración de condición || is_product_category() …

about 3 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda