Publicar formatos "audio" y "video" que solo se muestran en index.php

4

En mi tema, los archivos se llaman single-audio.php y single video.php , pero cuando hago clic en un formato de audio o video post-formato, wordpress usa index.php en lugar de mis archivos single-audio.php o single-video.php . ¿Alguna idea?

    
pregunta James 30.01.2012 - 23:42

3 respuestas

5

Hay una gran diferencia entre Post Formats y Tipos de mensaje . Supongo que está utilizando formatos de publicación, que no tiene un archivo de plantilla predeterminado para su uso.

Lo que puedes hacer es usar has_post_format() para ver si la publicación tiene el formato que estás usando, y si lo hace, usa get_template_part() para obtener un archivo de plantilla específico que hayas creado para mostrarlo allí.

Por ejemplo:

// If this post has a post format of 'video'
if( has_post_format( 'video', $post->ID ) ) {

    // Then get and display 'single-video.php'
    get_template_part( 'single', 'video' );

}
    
respondido por el Jared 31.01.2012 - 07:16
2

Si realmente quieres usar archivos individuales para cada tipo de post-formato, puedes intentar algo como esto: (pegar en funciones.php)

function post_format_template() {
global $post;
$format = get_post_format($post->ID);
if ( is_single() && $format ) {
        include('single-format-'.$format.'.php');
        exit;
    }
}
add_action('template_redirect', 'post_format_template',10);

Es una solución posible, pero no lo recomendaría, siempre y cuando no esté 100% seguro de lo que está haciendo resp. lo que está pasando aquí.

La respuesta de Jared es la forma recomendada de tratar con los post-formatos.

    
respondido por el ungestaltbar 31.01.2012 - 07:33
0

Si entiendo su pregunta correctamente, deberá hacer lo siguiente:

  1. Agregar una nueva página a través del Panel de control
  2. Asigne a esa nueva página un nombre como "Formato de publicación de audio" y asocie esa página a una plantilla. Hay un cuadro de selección que le permitiría seleccionar una plantilla.

HTH

    
respondido por el rexposadas 31.01.2012 - 00:07

Lea otras preguntas en las etiquetas