La plantilla personalizada para el tipo de publicación no funciona

2

Tengo un tipo de publicación shopping y en mi single.php estoy tratando de obtener una plantilla determinada para este tipo de publicación. Así lo hice:

\ in the single.php
get_template_part( 'template-parts/content', get_post_format() );

y en el directorio template-parts , creé un archivo llamado content-shopping.php . Pero no importa qué, la única plantilla utilizada es la predeterminada content.php .

Sin embargo, si hago algo como esto:

if ( 'shopping' === get_post_type() ) {
  get_template_part( 'template-parts/content-shopping' );
}else{
  get_template_part( 'template-parts/content', get_post_format() );
}

entonces la plantilla se usa para ese tipo de publicación. No estoy seguro de por qué el primer método no funciona. ¿Alguna idea?

    
pregunta Rain Man 20.06.2016 - 22:24

1 respuesta

4

get_post_format y get_post_type son completamente diferentes.

Los formatos de publicación pueden ser uno de los siguientes:

  • 'estándar' (predeterminado)
  • 'aparte'
  • 'chat'
  • 'galería'
  • 'enlace'
  • 'imagen'
  • 'cotizar'
  • 'estado'
  • 'video'
  • 'audio'

Y shopping es el tipo de publicación que has creado y no el formato de publicación . Puede agregar el formato de publicación para el tipo de publicación (compras) como esta

add_post_type_support( 'shopping', 'post-formats' );
    
respondido por el bravokeyl 20.06.2016 - 22:33

Lea otras preguntas en las etiquetas