Las funciones condicionales de WordPress
Las funciones condicionales nos permiten saber ciertas cosas desde nuestros themes de WordPress como, por ejemplo, si estamos en la pagina principal o en la de un post. Con ellas nos ahorraremos tener que hacer consultas que dependen de otros ficheros o de otras complicadas funciones. Aqui os las dejo con una pequeña explicacion de cada una.
PAGINA PRINCIPAL:
- is_home() -> cuando estamos en la pagina principal.
POTS “SINGLE”:
- is_single() -> nos indica si estamos en un post simple (single).
- is_single(’68′) -> nos indica si estamos en el post single con ID 68.
- is_single(’Funciones Condicionales’) -> nos indica si estamos en el post single con titulo “Funciones Condicionales”.
- is_single(’funciones-condicionales’) -> nos indica si estamos en el post single con slug (enalce permanente) “funciones-condicionales”.
PAGINA CON COMENTARIOS:
- comments_open() -> nos indica si los comentarios estan permitidos. Necesitamos estar en el “loop“.
- pings_open() -> nos indica si los pings estan abiertos y podemos recibirlos. Tambien necesitamos estar en el “loop“.
PAGINAS: Podemos escribir un post o una pagina. Estas funciones se refieren a las paginas.
- is_page() -> cuando estamos en una pagina.
- is_page(’2′) -> nos indica si estamos en la pagina con ID 2.
- is_page(’Contacto’) -> nos indica si estamos en la pagina con titulo “Contacto”.
- is_page(’sobre-mi’) -> nos indica si estamos en la pagina con slug (enlace permanente) “sobre-mi”.
CATEGORIAS:
- is_category() -> cuando estamos viendo una categoria.
- is_category(’31′) -> nos indica que estamos viendo la categoria con ID 31.
- in_category(’31′) -> nos indica si un post esta dentro de la categoria con ID 31. Esto nos resulta util para configurar los asides o minipost, por ejemplo.
- is_category(’Fotos Curiosas’) -> nos indica que estamos en la categoria con titulo “Fotos Curiosas”.
- is category(’fotos-curiosas’) -> nos indica que estamos en la categoria con slug “fotos-curiosas”.
FECHA: estas funciones nos resultaran utiles si estamos buscando algo por fecha, por ejemplo, en el calendario.
- is_date() -> nos indica si estamos buscando por cualquier tipo de fecha.
- is_year() -> nos indica si estamos buscando por año.
- is_month() -> nos indica si estamos buscando por mes.
- is_day() -> nos indica si estamos buscando por dia.
- is_time() -> nos indica si estamos buscando por fecha segun hora, minuto o segundo.
AUTOR: las paginas de autor se encuentran en el archivo authors.php.
- is_author() -> nos indica si estamos viendo una pagina de autor.
- is_author(’1′) -> nos indica si estamos viendo la pagina del autor con ID 1.
- is_author(’Ruben Diaz’) -> nos indica si estamos viendo la pagina del autor con titulo “Ruben Diaz”.
- is_author(’ruben-diaz’) -> nos indica si estamos viendo la pagina del autor con slug “ruben-diaz”.
Faltan unas cuantas funciones mas, pero creo que estas son las mas importantes y las que mas se utilizan. Si quereis verlas todas pasaros por el codex de WordPress, que, aunque este en ingles, se entiende todo perfectamente.
Muy buen resumen, muy útil :)
Yo uso K2 en mi blog principal y lleva esto un poco mas allá, añadiendo mucho de los datos mencionados aquí como classes en la etiqueta body, generando una cosa así:
<body class="wordpress k2 y2009 m02 d08 h22 page pageid-745 page-author-th3-prophetman page-slug-fancybox-for-wordpress page-child parent-pageid-518 loggedin columns-two lang-es">Lógicamente esto da un control tremendo directamente al CSS, aunque si se piensa con jQuery y demás en mente ya no hay límites :P
Esto se puede sacar de K2 con solo coger un par de funciones que tiene por ahí escondidas, poniéndolas en nuestro functions.php y luego llamando la funcion desde la propia etiqueta BODY.
No soy experto en licencias y demás pero sino me equivoco todo esto es uso libre siempre y cuando no lo vendamos (incluyéndolo en themes hechos por encargo por ejemplo) así que a ver si pregunto a los autores por si me dejan escribir un tutorial más amplio sobre el tema.
Si se da el caso os aviso :)
¿Con los condicionales se podría cambiar el Título de la Web solamente para un post de WordPress?