¿Cómo detectar single.php (pero no single-portfolio.php)?

28 jul 2012, 18:09:24
Vistas: 37.5K
Votos: 14

Cuando uso is_single(); en mi sección <head> para agregar algunos estilos a la navegación del sitio web, se ejecuta correctamente en las entradas del blog, pero también se ejecuta en las entradas del tipo de publicación "portfolio" (entonces en single-portfolio.php y single.php).

¿Cómo hago para que se ejecute solo en single.php?

0
Todas las respuestas a la pregunta 2
2
28

Puedes usar lo siguiente en su lugar,

if (is_singular('post')) {

    //tu código aquí...

}

Donde is_singular es la función condicional de la API de WordPress para comprobar la existencia de un tipo de entrada. También puedes pasar un array de tipos de entrada si lo deseas.

http://codex.wordpress.org/Function_Reference/is_singular

28 jul 2012 18:18:21
Comentarios

¡Esa es otra respuesta muy buena! Ambas respuestas resuelven este problema. Esta parece ser más simple. ¡Gracias!

Atadj Atadj
28 jul 2012 18:19:23

Gracias, siempre es mejor usar funciones integradas. Creo que esta debería ser la respuesta aceptada.

Simon Simon
28 jul 2012 18:19:24
3

Podrías intentar algo como (http://codex.wordpress.org/Function_Reference/get_post_type) :

para verificar si no es un tipo de publicación específico:

if ( is_single() && 'portfolio' != get_post_type() ) {
  // HACER ALGO
}

o para verificar si es una entrada (post) y no un tipo de publicación personalizado:

if ( is_single() && 'post' == get_post_type() ) {
  // HACER ALGO
}
28 jul 2012 18:13:53
Comentarios

¡Gracias! Eso resuelve mi problema PERO ¿qué pasa si tengo "slideshow", "news", "portfolio" y muchos más tipos de publicaciones? Algunos pueden extenderse usando plugins y no estoy seguro de cuántos habrá y cuáles serán sus nombres. ¿Hay alguna manera de hacerlo sin excluir solo "portfolio" sino todo lo que no sea una publicación de blog?

Atadj Atadj
28 jul 2012 18:15:35

@Flow: usa get_post_type() para verificar 'post'.

Geert Geert
28 jul 2012 18:17:07

He actualizado mi respuesta ^^

Simon Simon
28 jul 2012 18:18:03