Vous êtes sur la page 1sur 22

Conditional Tags

(http://codex.wordpress.org/Conditional_Tags)

Languages: English Franais Italiano Trke Portugus do Brasil () (Add your


language)

Contents
[hide]

1 Introduction

2 The Conditions For ...

2.1 The Main Page

2.2 The Front Page

2.3 The Blog Page

2.4 The Administration Panels

2.5 The Admin Bar

2.6 A Single Post Page

2.7 A Sticky Post

2.8 A Post Type is Hierarchical

2.9 A Post Type Archive

2.10 A Comments Popup

2.11 Any Page Containing Posts

2.12 A PAGE Page

2.13 Is a Page Template

2.14 A Category Page

2.15 A Tag Page

2.16 A Taxonomy Page (and related)

2.16.1 is_tax

2.16.2 has_term

2.16.3 term_exists

2.16.4 is_taxonomy_hierarchical

2.16.5 taxonomy_exists

2.17 An Author Page

2.18 A Multi-author Site

2.19 A Date Page

2.20 Any Archive Page

2.21 A Search Result Page

2.22 A 404 Not Found Page

2.23 A Paged Page

2.24 An Attachment

2.25 Attachment Is Image

2.26 A Local Attachment

2.27 A Single Page, a Single Post, an Attachment or Any Other Custom Post Type

2.28 Post Type Exists

2.29 Is Main Query

2.30 A New Day

2.31 A Syndication

2.32 A Trackback

2.33 A Preview

2.34 Has An Excerpt

2.35 Has A Nav Menu Assigned

2.36 Inside The Loop

2.37 Is Dynamic SideBar

2.38 Is Sidebar Active

2.39 Is Widget Active

2.40 Is Blog Installed

2.41 Right To Left Reading

2.42 Part of a Network (Multisite)

2.43 Main Site (Multisite)

2.44 Admin of a Network (Multisite)

2.45 Is User Logged in

2.46 Email Exists

2.47 Username Exists

2.48 An Active Plugin

2.49 A Child Theme

2.50 Theme supports a feature

2.51 Has Post Thumbnail

2.52 Script Is In use


3 Working Examples

3.1 Single Post

3.2 Check for Multiple Conditionals

3.3 Date-Based Differences

3.4 Variable Sidebar Content

3.5 Helpful 404 Page

3.6 Dynamic Menu Highlighting

3.7 In a theme's footer.php file

4 Conditional Tags Index

5 Function Reference

6 External Resources

Introduction
Las condicionales etiquetas se pueden utilizar en los archivos de la plantilla para cambiar lo que se
muestra en el contenido y la forma en que se muestra el contenido de una pgina en
particular dependiendo de las pginas que coinciden las condiciones. Por ejemplo, es posible que
desee mostrar un fragmento de texto por encima de la serie de posts, pero slo en la pgina
principal de su blog. Con la Etiqueta condicional is_home(), esa tarea se hace fcil.
Tenga en cuenta la estrecha relacin que estas etiquetas tienen con la Jerarqua de Plantilla de
WordPress.
Advertencia: Slo puede utilizar etiquetas de consultas condicionales despus de action
hook posts_selection en WordPress (el wp action hook es la primera de ellas a travs del
cual usted puede usar estas condicionales). Por temas, esto significa que la etiqueta
condicional nunca funcionar correctamente si usted lo est utilizando en el cuerpo de
functions.php, es decir, fuera de una funcin.

The Conditions For ...


Todas las Etiquetas de prueba condicional para ver si se cumple una condicin determinada, y
luego devuelve true o false. Las condiciones en la cual la salida de varias etiquetas TRUE se
enumeran a continuacin. Esas etiquetas que pueden aceptar parmetros sern sealadas.

La pgina inicial (The Main Page)


is_home()
Cuando se muestra la pgina principal del blog. Esta es la pgina que muestra el contenido
del blog basado en el tiempo de su sitio, por lo que si usted ha fijado una pgina esttica
para el front page (ver ms abajo), entonces esto slo ser cierto en la pgina que usted
haya establecido como la "Post page" en Administracin >Configuracin > Lectura .

La pgina principal (The Front Page)


is_front_page()

When the front of the site is displayed, whether it is posts or a Page. Returns true when the
main blog page is being displayed and the 'Settings > Reading ->Front page displays' is set
to "Your latest posts", or when 'Settings > Reading ->Front page displays' is set to "A static
page" and the "Front Page" value is the current Page being displayed.
Cuando se muestra la parte frontal del sitio, si se trata de post o una pgina . Devuelve
true cuando se muestra la pgina principal del blog y los ' Ajustes >Lectura -> mostrar
Front page "se ajusta en" Sus ltimos post", o cuando "Ajustes > Lectura -> muestra Front
page "se ajusta en" Una pgina esttica "y el" Front Page" tiene como valor la
pgina actual que se muestra.

The Blog Page


is_front_page() and is_home()
No hay ninguna etiqueta condicional para la pgina del blog. Usted tiene que usar tanto
is_home() and is_front_page() para detectar esta pgina, pero esas funciones pueden ser
mal utilizadas. De hecho, un usuario puede definir una pgina esttica para la pgina principal, y
otra pgina para mostrar el blog. ste volver true con la funcin is_home(), incluso si no es la
pgina de inicio. Aqu es lo que un usuario puede definir:

Una pagina de inicio opcin por defecto default homepage (con los ltimos posts)

Una pagina web estatica static homepage y ninguna pagina del blog.

Una pagina web estatica static homepage y una pgina de blog.

Cuando se utiliza is_home() y is_front_page() , usted tiene que utilizarlos en el orden


correcto para evitar errores y para probar todas las configuraciones de usuario:

if ( is_front_page() && is_home() ) {


// Default homepage
} elseif ( is_front_page() ) {
// static homepage
} elseif ( is_home() ) {
// blog page
} else {
//everything else
}

The Administration Panels


is_admin()
Cuando se estn mostrando el Dashboard o los paneles de administracin.

Atencin : La pgina wp-login.php no es una pgina de administracin. Para comprobar si se


muestra esta pgina, utilice la variable global admin $pagenow .

The Admin Bar


is_admin_bar_showing()
Devuelve verdadero si se muestra la barra de admin.
Nota : Para mostrar o no esta barra, use show_admin_bar() , esta funcin se debe llamar
inmediatamente al plugins_loaded o colocarlo en el archivo functions.php del tema.

A Single Post Page


is_single()
Cuando est visualizndose un solo post(o archivo adjunto attachment, o un tipo de post
personalizado custom Post Type). (False para las pginas)

is_single( '17' )
Cuando Post 17 se esta mostrando como un solo post.
is_single( 'Irish Stew' )
Cuando el Post con Title = "Irish Stew" se esta mostrando como un simple Post.
is_single( 'beef-stew' )
Cuando el Post con Slug = "beef-stew" se esta mostrando como un simple Post.
is_single( array( 17, 'beef-stew', 'Irish Stew' ) )
Retorna true cuando un simple post se esta mostrando con las propiedades ID=17, o
post_name = "beef-stew", or post_title = "Irish Stew".
is_single( array( 17, 19, 1, 11 ) )
Retorna true cuando un simple se esta mostrando con las propiedades ID = 17, o ID=
= 19, o ID = 1 o ID = 11.
is_single( array( 'beef-stew', 'pea-soup', 'chili' ) )
Retorna true cuando un simple se esta mostrando con las propiedades post_name ="beefstew", o post_name ="pea-soup" o post_name ="chili".
is_single( array( 'Beef Stew', 'Pea Soup', 'Chili' ) )

Retorna true cuando un simple se esta mostrando con las propiedades post_title = "Beef
Stew", o post_title = "Pea Soup" or post_title = "Chili".
Nota: Esta funcin no distingue entre el post ID, post_title, o post_name. Un post llamado "17" se
mostrar si se ha solicitado una ID de post de 17. Es de suponer que lo mismo vale para un post
con el slug= "17".

(Un post destacado) A Sticky Post


is_sticky()
Devuelve true si el post actual est marcado con "Stick en el post de la front page". En
este caso, no se usa el argumento ID, por lo que el post ID utilizado es el del post de loop.
is_sticky( '17' )
retorna true cuando el Post = 17 esta marcado como sticky.

A Post Type is Hierarchical


is_post_type_hierarchical( $post_type )
Retorna true si tipo de post $post_type se ha establecido con soporte jerarquico cuando
fue registrado.
is_post_type_hierarchical( 'book' )
retorna true si el tipo de post book fue registrado como soporte jerarquico para la
jerarqua.

A Post Type Archive


is_post_type_archive()
retorna true en cualquier archivo de tipo post post type archive.
is_post_type_archive( $post_type )
retorna true si una pargina de archivo de tipo post coincide con $post_type.
is_post_type_archive( array( 'foo', 'bar', 'baz' ) )
Returns true if on a post type archive page that matches either "foo", "bar", or "baz".
To turn on post type archives, use 'has_archive' => true, when registering the post type.

A Comments Popup
is_comments_popup()
When in Comments Popup window.

Any Page Containing Posts

comments_open()
When comments are allowed for the current Post being processed in the WordPress Loop.
pings_open()
When pings are allowed for the current Post being processed in the WordPress Loop.

A PAGE Page
This section refers to WordPress Pages, not any generic webpage from your blog, or in other words
to the built in post_type 'page'.
Esta seccin se refiere a las Pages de WordPress, no a cualquier pgina web genrica de tu blog,
o en otras palabras a la incorporada en 'page' post_type.
is_page()
Cuando una Page comienza a mostrarse.
is_page( 42 )
Cuando Page (ID=42) es comenzada a mostrarse.
is_page( 'About Me And Joe' )
Cuando la Page con post_title = "About Me And Joe" es comenzada a mostrarse
is_page( 'about-me' )
Cuando la Page con post_name(slug) = "about-me" es comenzada a mostrarse.
is_page( array( 42, 'about-me', 'About Me And Joe' ) )
Retorna true cuando la Pages mostrada tiene cualquiera de estos post ID = 42, o
post_name = "about-me", o post_title = "About Me And Joe".
is_page( array( 42, 54, 6 ) )
Retorna true cuando la Pages mostrada tiene cualquiera de estos post ID = 42, o post ID =
54, o post ID = 6.
Vea tambin is_page() para mas fragmentos snippets.
Note: No existe una funcin para comprobar si una pgina es una subpgina. Podemos evitarnos
este problema:

if ( is_page() && $post->post_parent > 0 ) {


echo "Esta es una pagina hija child page";
}

Is a Page Template

Allows you to determine whether or not you are in a page template or if a specific page template is
being used.
Permite determinar si est o no est en una plantilla de pgina o si se est utilizando una plantilla
de pgina especfica.
is_page_template()
Es un Page Template que se est usando?
is_page_template('about.php')
Es el Page Template 'about' que estoy utilizando?
Note: si el archivo est en un subdirectorio debe incluirlo tambin. Lo que significa que esta debe
ser la ruta de archivo en relacin con el tema, as como el nombre del archivo, por ejemplo pagetemplates/about.php.

A Category Page
is_category( $category )
Cuando la pgina actual se asocia con la categora $category.
is_category( '9' )
Cuando se esta mostrando el archivo page para la Category 9.
is_category( 'Stinky Cheeses' )
Cuando se est mostrando el archivo page para la Category con Name="Stinky Cheeses"
is_category( 'blue-cheese' )
Cuando se est mostrando el archivo page para la Category con Slug= "blue-cheese".
is_category( array( 9, 'blue-cheese', 'Stinky Cheeses' ) )
Retorna true cuando la categora del post que se esta mostrando sus trminos coinciden
con uno de estos term_ID = 9, o slug = "blue-cheese", o name = "Stinky Cheeses".
in_category( '5' )
Retorna true si el post actual esta en la categora con ID=5
in_category( array( 1,2,3 ) )
Retorna true si el post actual esta en la categora con ID = 1, 2, o 3.
! in_category( array( 4,5,6 ) )
Returns true si el post actual no esta en la categora ni 4, 5, or 6.
Note: Asegrese de revisar la ortografa al probar: "is" y "in" son significativamente diferentes.

See also is_archive() and Category Templates.

A Tag Page
is_tag()
Cuando se muestra alguna pagina de archivos Tag.
is_tag( 'mild' )
Cuando se visualiza la pgina de archivo de etiqueta con slug="leve".
is_tag( array( 'sharp', 'mild', 'extreme' ) )
retorna true Cuando se visualiza la pgina de archivo de etiqueta con cualquier slug=
"sharp", "mild", o "extreme".
has_tag()
Cuando el post actual tiene un tag. Ante de la versin 2.7, se debe utilizar dentro del Loop.
has_tag( 'mild' )
cuando el post actual tiene el tag 'mild'.
has_tag( array( 'sharp', 'mild', 'extreme' ) )
Cuando el post actual tiene algn tags de los que esta contenido en el array.
Ver tambin is_archive() y Tag Templates.

A Taxonomy Page (and related)


is_tax
is_tax()
Cuando se muestra alguna pagina de archivos Taxonomy.
is_tax( 'flavor' )
Cuando una pagina de archivo Taxonomy se vizualiza para la taxonomy flavor
is_tax( 'flavor', 'mild')
Cuando una pagina de archivo taxonomy tiene un slug =flavor o 'mild'
is_tax( 'flavor', array( 'sharp', 'mild', 'extreme' ) )
Retorna true cuando una pagina de archivo taxonomy flavor muestra un slug = "sharp",
"mild", or "extreme".

has_term

has_term()
Checa si el post actual tiene algn termino. El primer parmetro debera estar vacio. Se
espera un slug/name como un segundo parmetro.
has_term( 'green', 'color' )
Cuando el post actual tiene el termino 'green' desde la taxonomy ='color'.
has_term( array( 'green', 'orange', 'blue' ), 'color' )
Cuando el post actual tiene el termino en el array.

term_exists
term_exists( $term, $taxonomy, $parent )
Devuelve true si $term existe en alguna taxonoma. Si $taxonomy es dada, el trmino
debe existir en sta. El 3er parmetro $parent es tambin opcional, si se da, el trmino
tiene que ser un hijo de este padre, la taxonoma debe ser jerrquica.

is_taxonomy_hierarchical
is_taxonomy_hierarchical( $taxonomy )
Retorna true si la taxonoma $taxonomy es jerrquica. Para declarar una taxonoma
jerrquica, utilice 'hierarchical' => true cuando utilice register_taxonomy () .

taxonomy_exists
taxonomy_exists( $taxonomy )
Returna true if $taxonomy se ha registrado en este sitio usando register_taxonomy().
Ver tambin is_archive().

An Author Page
is_author()
Cuando alguna page Author es mostrada.
is_author( '4' )
Cuando la pagina de archivo para el Author con ID= 4 se esta mostrando.
is_author( 'Vivian' )
Cuando la pagina de archivo para el Author con Nickname = "Vivian" se esta mostrando
is_author( 'john-jones' )

Cuando la pagina de archivo para el Author con Nickname = "john-jones" se esta


mostrando
is_author( array( 4, 'john-jones', 'Vivian' ) )
Cuando la pagina de archivo para el Author con user ID= 4, o user_nicename= "johnjones", o nickname ="Vivian".
Ver tambien is_archive() y Author Templates.

A Multi-author Site
is_multi_author( )
Cuando ms de un autor ha publicado post para un sitio. Disponible con la versin 3.2 .

A Date Page
is_date()
When any date-based archive page is being displayed (i.e. a monthly, yearly, daily or timebased archive).
Cuando alguna pagina de archivo basada en Date se est visualizando (es decir, un
monthly, yearly, daily or time basado en archivo basado en el tiempo).
is_year()
Cuando se esta visualizando un archivo anual yearly.
is_month()
Cuando se esta visualizando un archivo mensual monthly.
is_day()
Cuando se esta visualizando un archivo diario daily.
is_time()
Cuando en una hora, minuto, o secundo hourly, "minutely", or "secondly" se esta
visualizando un archivo.
is_new_day()
Si hoy es un nuevo dia acordado en la fecha del post. Deberia usarse dentro del loop.
Ver tambin is_archive().

Any Archive Page


is_archive()
Cuando algun tipo de pagina de archivo se esta mostrando. Categora, Tag, otros trminos
taxonomcos, archivos de tipo de post personalizados, Autor y pginas basadas en fechas

son todos los tipos de archivos. Category, Tag, other Taxonomy Term, custom post
type archive, Author and Date-based pages are all types of Archives

A Search Result Page


is_search()
Cuando se est visualizando un archivo de bsqueda search en la pgina de resultados.

A 404 Not Found Page


is_404()
Cuando la pagina mostrada despus de un "HTTP 404: es Not Found" error occurs.

A Paged Page
is_paged()
Cuando la pgina que se muestra es "paged". Esto se refiere a un archivo o de la pgina
principal que se divide en varias pginas y devolver true en las pginas segundarias y
posteriores de los post. Esto no se refiere a un post o page cuyo contenido se ha dividido
en pginas utilizando la Quicktag <-! nextpage -> . Para comprobar si un post o page
ha sido dividida en las pginas utilizando la Quicktag

<-! nextpage -> , ver seccin

A_Paged_Page.

An Attachment
is_attachment()
Cuando un documento adjunto attachment para un post o page se est mostrando. Un
adjunto es un archivo de imagen o de otro fichero upload con la utilidad de carga del
editor de entradas. Adjuntos se pueden mostrar en su propia "pgina" o plantilla.
Ver tambin Using Image and File Attachments.

Attachment Is Image
wp_attachment_is_image( $post_id )
Devuelve true si el archivo adjunto para el post con ID igual a $post_id es una
imagen. formatos Mime y extensiones permitidas son: jpg, jpeg, gif, png et.

A Local Attachment
is_local_attachment( $url )
Retorna true si el vnculo pasado en $url es un archivo adjunto real desde este sitio.

Una page simple, un Post simple, un Attachment o cualquier otro


tipo de post personalizado

is_singular()
retorna true para cualquier is_single(), is_page(), o is_attachment().
is_singular( 'foo' )
retorna true si el post_type = "foo".
is_singular( array( 'foo', 'bar', 'baz' ) )
Retorna true si el post_type = "foo", "bar", o "baz".
Ver tambin libro Custom Post Types .

El tipo de post existe Post Type Exists


post_type_exists( $post_type )
retorna true si dado un $post_type este se ha registrado en este sitio usando
register_post_type().

Is Main Query
is_main_query()
Retorna true cuando la query actual (como dentro del loop) es la query principal "main".
Example con el filtro hook the_content

add_action( 'the_content', 'baw_add_social_buttons' );


function baw_add_social_buttons( $content ) {
if ( ! is_admin() && is_main_query() ) {
return $content . function_from_a_social_plugin();
}
return $content;
}
Si, cuando WordPress intenta mostrar el contenido de cada post en el Loop o en una sola pgina
del post, nos encontramos en la consulta principal, y no parte de administracin, aadimos algunos
botones sociales (por ejemplo).

Example with the action hook pre_get_posts

add_action( 'pre_get_posts', 'baw_modify_query_exclude_category' );


function baw_modify_query_exclude_category( $query ) {
if ( ! is_admin() && $query->is_main_query() && ! $query->get( 'cat' ) ) {
$query->set( 'cat', '-5' );
}
}
Con pre_get_posts, esto no es posible para llamar directamente is_main_query, deberamos
usar $query dado como un parametro.

A New Day
is_new_day()
retorna true si hoy es nuevo dia.

A Syndication
is_feed()
Cuando la peticin al sitio es una Syndication. Este tag no es typicamente usado por los
users; se usa internamente por WordPress y esta disponible para los desarrolladores de
Plugin.

A Trackback
is_trackback()
Cuando el sitio solicitado es un hook de WordPress en su motor de Trackback. Esta
etiqueta no es utilizada habitualmente por los usuarios; se utiliza internamente por
WordPress y est disponible para los desarrolladores de plugin.

A Preview
is_preview()
Cuando se muestra un solo post que ha sido visto en modo Draft.

Has An Excerpt
has_excerpt()
Cuando el post actual tiene un excerpt
has_excerpt( 42 )
Cuando el post id = 42 tiene un excerpt.

Has A Nav Menu Assigned


has_nav_menu()
Retorna true cuando una localizacin del men de navegacin registrado tiene un men
asignado.

Ver tambien register_nav_menu().

Inside The Loop


in_the_loop()
Revisa para ver si usted est "dentro del loop". til para el plugin authors, esta condicin
retorna true cuando usted est dentro del loop.

Is Dynamic SideBar
is_dynamic_sidebar()
Retorna true si el tema es compatible con sidebars dinamicos.

Is Sidebar Active
is_active_sidebar()
Revisa para ver si un sidebar dado esta activo (en uso). Retorna true si el sidebar
(identificado por name o id) esta en uso.
Note: Para mostrar el contenido de un sidebar's, use dynamic_sidebar( $sidebar ).

Is Widget Active
is_active_widget( $widget_callback, $widget_id )
Retorna true si el widget con callback es $widget_callback o el ID = $widget_id
se mostrar en front-end
Nota : Para que sea efectiva esta funcin tiene que correr detrs de los widgets que se han
inicializado, en accin 'init' o later, vase Action Reference

Is Blog Installed
is_blog_installed()
retorna true si el actual est correctamente instalado.
Nota : La cach se comprobar en primer lugar. Si usted tiene un plugin de cach, el cual salva los
valores de cach, entonces esto va a funcionar. Si utiliza la cach por defecto de WordPress, y la
base de datos se va, entonces usted podra tener problemas.

Right To Left Reading


is_rtl()
retorna true if el locale actual de lectura es de derecha a izquierda (RTL).

Example
if ( is_rtl() ) {
wp_enqueue_style( 'style-rtl', plugins_url( '/css/style-rtl.css', __FILE__ ) );
wp_enqueue_script( 'script-rtl', plugins_url( '/js/script-rtl.js', __FILE__ ) );
}

Part of a Network (Multisite)


is_multisite()
revisa para ver si el site actual es en multiples sitios de instalacin de wordpress

Main Site (Multisite)


is_main_site()
Determina si un site es el site principalmain en una red network.

Admin of a Network (Multisite)


is_super_admin()
Determina si el usuario es una network (super) admin.

Is User Logged in
is_user_logged_in()
Retorna true si algun usuario es logged-in actualmente, en algun roles.

Email Exists
email_exists( $email )
Compruebe si la direccin de correo electrnico dada $email ya ha sido registrado en un
nombre de usuario username y devuelve ese ID usuario o false si no existe.

Username Exists
username_exists( $username )
Compruebe si el nombre de usuario dado $username ya ha sido registrado en un nombre
de usuario y devuelve ese ID usuario o false si no existe.

An Active Plugin
is_plugin_active( $path )
revisa si un plugin esta activo
is_plugin_active( 'akismet/akismet.php' )
comprueba si Akismet esta activado.

is_plugin_inactive( $path )
comprueba si un plugin es desactivado. Igual que !is_plugin_active( $path ).
is_plugin_active_for_network( $path )
Lo mismo para una activacin de la network en una instalacin multisitio.
is_plugin_page()
Esta funcin es obsoleto depuis desde WordPress 3.1, sin ninguna alternativa
conocida.

A Child Theme
is_child_theme()
Comprueba si un child theme esta en uso.

Theme supports a feature


current_theme_supports()
comprueba si varias caractersticas de theme existen.
current_theme_support( 'post-thumbnails' )
Retorna true si el tema actual soporta imgenes destacadas. Para agregar una
funcionalidad de compatibilidad para temas, utilice add_theme_support () .

Has Post Thumbnail


has_post_thumbnail( $post_id )
Devuelve true si el post con ID = $post_id contiene una imagen que se muestre. El
Tema debe soportar Imgenes, vase ms arriba.

Script Is In use
wp_script_is( $handle, $list )
Devuelve true si el script con handle = $handle ha sido 'registered', 'enqueue/queue',
'done', o 'to_do' dependiendo de $list .

Example
$handle = 'fluidVids.js';
$list = 'enqueued';
if ( wp_script_is( $handle, $list ) ) {
return;
} else {
wp_register_script( 'fluidVids.js', plugin_dir_url(__FILE__).'js/fluidvids.min.js');
wp_enqueue_script( 'fluidVids.js' );
}

Esto sera comprobar si el script llamado 'fluidVids.js' es enqueued encolado. Si no est en cola,
los archivos se registran registered y se enconlan enqueued.

Working Examples
Aqu estn las muestras de trabajo para demostrar cmo utilizar estas etiquetas condicionales.

Simple Post
Este ejemplo muestra cmo utilizar is_single() para mostrar algo especfico slo cuando se ve
una sola pgina post:

if ( is_single() ) {
echo 'This post\'s title is ' . get_the_title();
}
Aadir esta funcin personalizada a sus temas hijos en el fichero functions.php y modificar la
etiqueta condicional para adaptarse a sus necesidades.

add_action( 'loop_start', 'add_to_single_posts' );


function add_to_single_posts() {
if ( is_singular('post') ) {
echo'<div class="your-class">Your Text or HTML</div>';
}
}
Tambien puedes utilizar:

add_action( 'loop_start', 'wpsites_add_to_single_posts' );


function wpsites_add_to_single_posts() {
if ( is_single() ) {
echo'<div class="your-class">Your Text or HTML</div>';
}
}
Otro ejemplo de cmo utilizar Etiquetas condicionales en el Loop. Elige mostrar el contenido o
extracto excerpt en index.php cuando se trata de un simple post o la pgina de inicio home
page.

if ( is_home() || is_single() ) {
the_content();
}
else {
the_excerpt();
}

When you need display a code or element, in a place that is NOT the home page.
Cuando necesite mostrar un cdigo o elemento, en un lugar que no es la pgina principal home
page.

<?php if ( ! is_home() ) {?>


Insert your markup ...
<?php } ?>

Check para Multiples Conditionals


Puede usar PHP operators para evaluar multiples conditionals en una simple declaracin.
Esto es til si usted lo necesita para comprobar si las combinaciones de las condicionales se
evalan como true o false.

// Check to see if 2 conditionals are met


if ( is_single() || is_page() ) ) {
// If it's a single post or a single page, do something special
}
if ( is_archive() && ! is_category( 'nachos' ) ) {
// If it's an archive page for any category EXCEPT nachos, do something
special
}
// Check to see if 3 conditionals are met
if ( $query->is_main_query() && is_post_type_archive( 'products' ) && !
is_admin() ) {
// If it's the main query on a custom post type archive for Products
// And if we're not in the WordPress admin, then do something special
}
if ( is_post_type_archive( 'movies' ) || is_tax( 'genre' ) || is_tax( 'actor' ) ) {
// If it's a custom post type archive for Movies
// Or it's a taxonomy archive for Genre
// Or it's a taxonomy archive for Actor, do something special

Date-Based Differences
Si alguien navega por nuestro sitio por fecha, vamos a distinguir los post en diferentes aos
mediante el uso de diferentes colores

<?php
// this starts The Loop
if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<h2 id="post-<?php the_ID(); ?>">
<a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to
<?php the_title_attribute(); ?>">
<?php the_title(); ?></a></h2>
<small><?php the_time('F jS, Y') ?> <!-- by <?php the_author() ?>
--></small>
<?php
// are we showing a date-based archive?
if ( is_date() ) {
if ( date( 'Y' ) != get_the_date( 'Y' ) ) {
// this post was written in a previous year
// so let's style the content using the "oldentry" class
echo '<div class="oldentry">';
} else {
echo '<div class="entry">';
}
} else {
echo '<div class="entry">';
}
the_content( 'Read the rest of this entry ' );
?>
</div>

Variable Sidebar Content


Este ejemplo mostrar un contenido diferente en la barra lateral sidebar sobre la base de la
pgina que el lector est viendo actualmente.

<!-- begin sidebar -->


<div id="sidebar">
<?php
// let's generate info appropriate to the page being displayed
if ( is_home() ) {
// we're on the home page, so let's show a list of all top-level categories
echo "<ul>";
wp_list_categories( 'optionall=0&sort_column=name&list=1&children=0' );
echo "</ul>";
} elseif ( is_category() ) {

// we're looking at a single category view, so let's show _all_ the categories
echo "<ul>";
wp_list_categories( 'optionall=1&sort_column=name&list=1&children=1&hiera
rchical=1' );
echo "</ul>";
} elseif ( is_single() ) {
// we're looking at a single page, so let's not show anything in the sidebar
} elseif ( is_page() ) {
// we're looking at a static page. Which one?
if ( is_page( 'About' ) ) {
// our about page.
echo "<p>This is my about page!</p>";
} elseif ( is_page( 'Colophon' ) ) {
echo "<p>This is my colophon page, running on WordPress, " .
bloginfo( 'name' ) . "</p>";
} else {
// catch-all for other pages
echo "<p>Vote for Pedro!</p>";
}
} else {
// catch-all for everything else (archives, searches, 404s, etc)
echo "<p>That's all.</p>";
} // That's all, folks!
?>
<form id="searchform" method="get" action="<?php echo
esc_url( $_SERVER['PHP_SELF'] ); ?>">
<div>
<input type="text" name="s" id="s" size="15" />
<input type="submit" value="<?php _e( 'Search' ); ?>" />
</div>
</form>
</div>
<!-- end sidebar -->

Helpful 404 Page


El articulo de Creacin de una pgina de error 404 tiene un ejemplo del uso de la funcin
condicional PHP isset() en la seccin Writing Friendly Messages.

Dynamic Menu Highlighting


El artculo men dinmico Destacando Dynamic Menu Highlighting describe cmo utilizar las
etiquetas condicionales para permitir el resaltado de la pgina actual en un men.

En un archivo footer.php de un tema

A veces las consultas realizadas en otras plantillas como sidebar.php pueden destruir ciertas
etiquetas condicionales. Por ejemplo, en header.php una etiqueta condicional funciona
correctamente, pero no funciona en footer.php de un tema. El truco es poner
wp_reset_query antes de la prueba condicional en el pie de pgina. Por ejemplo:

<?php
wp_reset_query();
if ( is_page( '2' ) ) {
echo 'This is page 2!';
}
?>

Vous aimerez peut-être aussi