worpresjavier

Condicionales WordPress

Publicada en Publicada en WordPress

Introducción

Los condicionales se pueden utilizar en los archivos de la plantilla para cambiar lo que se muestra el contenido y la forma en que se muestra el contenido de una página en particular dependiendo de lo que las condiciones que los partidos de página. Por ejemplo, es posible que desee mostrar un fragmento de texto encima de la serie de mensajes, pero sólo en la página principal de su blog. Con la is_home () Etiqueta condicional, esa tarea se hace fácil.

Tenga en cuenta la estrecha relación de estas etiquetas tienen que WordPress Plantilla Jerarquía .

Advertencia: Sólo puede utilizar etiquetas de consulta condicional después de laposts_selection gancho de acción en WordPress (el wp gancho de acción es la primera de ellas a través del cual se pueden utilizar estos condicionales). Por temas, esto significa que el código condicional nunca funcionará correctamente si usted lo está utilizando en el cuerpo de functions.php, es decir, fuera de una función.

Sin embargo: si usted tiene una referencia a la consulta de objeto (por ejemplo, desde dentro de la parse_query o pre_get_posts ganchos), puede utilizar los métodos condicionales WP_Query (por ejemplo: $query->is_search())

Las condiciones para …

Todas las etiquetas de prueba condicional para ver si se cumple una determinada condición, y luego devuelve VERDADERO o FALSO. Las condiciones en las que se enumera varias etiquetas de salida CORRECTA . Esas etiquetas que pueden aceptar parámetros se identifican como tales.

La Página Principal

es casa()
Cuando se está visualizando la página principal del blog. Esta es la página que muestra el contenido del blog basado en el tiempo de su sitio, por lo que si usted ha fijado una página estática para la Portada (véase más adelante), entonces esto sólo será verdadera en la página en la que se establece como la “página de Mensajes “enAdministración > Configuración > lectura .

La primera página

is_front_page ()
Cuando se muestra la parte frontal del sitio, si se trata de puestos o una página .Devuelve verdadero cuando se está visualizando la página principal del blog y los ‘Ajustes > Lectura -> Página de la pantalla Frontal “está ajustado en” Sus últimos mensajes “, o cuando’ Configuración > Lectura -> Página de la pantalla Frontal” está ajustado en “Una página estática “y el” valor Front Page “es la actual página que se muestra.

La página de blog

is_front_page () y is_home ()

No hay código condicional para la página de blog. Usted tiene que utilizar tantois_home () y is_front_page () para detectar esta página, pero esas funciones pueden ser mal utilizados. De hecho, un usuario puede definir una página estática para la página principal, y otra página para mostrar el blog. Éste devolverá verdadero conis_home () función, incluso si no es la página de inicio. Esto es lo que un usuario puede definir:

  • una página de inicio por defecto (con los últimos mensajes)
  • una página web estática y ninguna página del blog
  • una página web estática y una página 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:

si (is_front_page () && is_home ()) {
  // Página de inicio predeterminada
} Elseif (is_front_page ()) {
  // Página de inicio estática
} Elseif (is_home ()) {
  // Página del blog
} Else {
  //todo lo demas
}

Los paneles de la Administración

is_admin ()
Cuando se visualizan los paneles de la administración o del tablero de instrumentos.
is_network_admin ()
Cuando se están mostrando el tablero de instrumentos de red o los paneles de administración de red para múltiples sitios.

Atención : La wp-login.php página no es una página de administración. Para comprobar si se muestra esta página, utilice el administrador global de la variable $ pagenow .

La barra de admin

is_admin_bar_showing ()
Devuelve verdadero si se mostrará la barra de administrador.

Nota  : Para visualizar o no este bar, el uso show_admin_bar () , esta función se debe llamar inmediatamente al plugins_loaded o colocado en el tema de functions.php archivo.

Un Mensaje Individual Página

es soltera()
Cuando se está visualizando un solo puesto de cualquier tipo de entrada (excepto de fijación y la página de correos tipos).
is_single ( '17')
Cuando se está mostrando Mensaje 17 como un solo puesto.
is_single ( 'estofado irlandés')
Cuando el Post con el título “Irish Stew” se está mostrando como un solo puesto.
is_single ( 'carne de res estofado')
Cuando el Post con el poste de Slug “ternera estofado” se está mostrando como un solo puesto.
is_single (array (17, 'carne de res cocido "," Irish Stew'))
Devuelve cierto cuando se visualiza el mensaje es sencillo, ya sea posterior ID 17, o la post_name es “carne de res estofado”, o la POST_TITLE es “estofado irlandés”.
is_single (array (17, 19, 1, 11))
Devuelve verdadero cuando se está visualizando el solo puesto está bien Identificación post = 17, id de mensaje = 19, poste ID =1 o posterior ID = 11.
is_single (array ( 'carne de res estofado "," sopa de guisantes', 'chile'))
Devuelve verdadero cuando se está visualizando el único puesto que es ya sea el post_name “ternera estofado”, post_name“sopa de guisantes” o post_name “chili”.
is_single (array ( 'estofado de ternera', 'Pea Soup', 'chile'))
Devuelve cierto cuando se visualiza el mensaje solo es o bien la POST_TITLE es “estofado de ternera”, POST_TITLE es “sopa de guisantes” o POST_TITLE es “chile”.

Nota: Esta función no distingue entre el ID del mensaje, título de la entrada, o enviar nombre. Un post llamado “17” se visualiza si se solicitó una identificación posterior de 17. Es de suponer que lo mismo vale para un post con la babosa “17”.

Un Mensaje Adherido

is_sticky ()
Devuelve true si “Stick esta entrada a la parte delantera página” casilla de verificación ha sido revisado para el puesto actual. En este ejemplo, no se da ningún argumento mensaje de identificación, por lo que la identificación de puestos para el bucle se utiliza puesto.
is_sticky ( '17')
Devuelve cierto cuando Mensaje 17 se considera un post pegajosa.

A Tipo Post es jerárquica

is_post_type_hierarchical ($ post_type)
Devuelve true si este $ post_type se ha establecido con el apoyo jerárquico al ser registrados .
is_post_type_hierarchical ( "libro")
Devuelve verdadero si el tipo de norma posterior se registró como tener soporte para jerárquico.

A Tipo de Archivo del anuncio

is_post_type_archive ()
Devuelve verdadero en cualquier tipo de archivo de correo.
is_post_type_archive ($ post_type)
Devuelve verdadero si en una página de archivo tipo de mensaje que coincide con $ post_type.
is_post_type_archive (array ( 'foo', 'bar', 'baz'))
Devuelve verdadero si en una página de archivo tipo de mensaje que coincide con cualquiera de los dos “foo”, “barra”, o “Baz”.

Para activar los archivos de tipo poste, utilice ‘has_archive’ => true, al registrarse el tipo de mensaje .

Un Comentarios emergente

is_comments_popup ()
Cuando en los comentarios ventana emergente.

Cualquier página que contiene Mensajes

comments_open ()
Cuando se permite que los comentarios de la corriente del anuncio que se está procesando en el WordPress Loop .
pings_open ()
Cuando se permiten pings para la corriente del anuncio que se está procesando en el WordPress Loop .

Una Página PÁGINA

Esta sección se refiere a WordPress páginas , no cualquier página web genérica de su blog, o en otras palabras que el construido enpost_type “página”.

is_page ()
Cuando cualquier página se está visualizando.
is_page (42)
Cuando página se visualiza 42 (ID).
is_page ( "Sobre Mi Y Joe ')
Cuando la página con un POST_TITLE se está mostrando de “Acerca de mí Y Joe”.
is_page ( "sobre-yo")
Cuando la página con un post_name se está visualizando (babosa) de “sobre-me”.
is_page (array (42, 'sobre-yo "," Sobre Mi Y Joe'))
Devuelve cierto cuando las páginas mostradas es o posterior ID = 42, o post_name es “sobre-me”, o POST_TITLE es “acerca de mí y Joe”.
is_page (array (42, 54, 6))
Devuelve cierto cuando las páginas mostradas es o posterior ID = 42, o id de mensaje = 54, o de post ID = 6.

Ver también is_page () para más fragmentos, como is_subpage , is_tree .

Nota : No existe una función para comprobar si una página es una sub-página. Podemos obtener el problema:

si (is_page () && $ post-> post_parent> 0) { 
    echo "Esta es una página secundaria";
}

Es una plantilla de página

Le permite determinar si está o no está en una plantilla de página o si se está utilizando una plantilla de página específica.

is_page_template ()
Es una plantilla de página se utiliza?
is_page_template ( 'about.php')
Se página de la plantilla que se utiliza “sobre”?

Nota : si el archivo está en un subdirectorio debe incluir esto también. Lo que significa que esta debe ser la ruta de archivo en relación con el tema, así como el nombre del archivo, por ejemplo, la página-templates / about.php .

Una página de categoría

is_category ($ categoría)
Cuando la página real está asociado con el $ categoría Categoría.
is_category ( '9')
Cuando se está visualizando la página Archivo para la categoría 9.
is_category ( 'malolientes') Quesos
Cuando se está visualizando la página de archivo para la Categoría con el nombre de “Quesos Stinky”.
is_category ( 'blue-queso')
Cuando se está visualizando la página de archivo para la Categoría con Categoría Slug “queso azul”.
is_category (array (9, 'blue-queso', 'malolientes') Quesos)
Devuelve cierto cuando se muestra la categoría de mensajes es o bien term_ID 9, o babosa “queso azul”, o nombre “Quesos Stinky”.
is_category (5) || cat_is_ancestor_of (5, get_query_var ( "gato"))
Devuelve cierto cuando se muestra la categoría de mensajes es o bien term_id 5, o un antepasado de term_id 5 (subcategoría, sub-subcategoría …).
in_category ( '5')
Devuelve verdadero si la posición actual está en el identificador de categoría ( leer más ).
in_category (array (1,2,3))
Devuelve verdadero si la posición actual está en una u otra categoría 1, 2 ó 3.
! in_category (array (4,5,6))
Devuelve true si el mensaje actual es NO en cualquiera de las categorías 4, 5 ó 6. Anote el ! Al principio.

Nota: Asegúrese de comprobar la ortografía cuando se prueba: “es” y “en” son significativamente diferentes.

Ver también is_archive () y Plantillas de categoría .

Una etiqueta Página

is_tag ()
Cuando se está visualizando ninguna página de archivo de etiquetas.
is_tag ( "suave")
Cuando se está visualizando la página de archivo para la etiqueta con la babosa de “suave”.
is_tag (array ( 'aguda', "suave", "extremo"))
Devuelve verdadero cuando el archivo de variables que se muestra tiene una babosa de cualquiera “fuerte”, “suave” o “extrema”.
has_tag ()
Cuando el puesto actual tiene una etiqueta. Antes de 2,7, se debe utilizar dentro del bucle.
has_tag ( "suave")
Cuando el puesto actual tiene la etiqueta “suave”.
has_tag (array ( 'aguda', "suave", "extremo"))
Cuando el puesto actual tiene cualquiera de las etiquetas de la matriz.

Ver también is_archive () y Plantillas de etiquetas .

Una taxonomía de página (y afines)

is_tax

is_tax ()
Cuando se está visualizando ninguna página de archivo Taxonomía.
is_tax ( "sabor")
Cuando se visualiza una página de archivo de taxonomía para la taxonomía de sabor.
is_tax ( "sabor", "suave")
Cuando se está visualizando la página de archivo para la taxonomía de sabor con la babosa de “suave”.
is_tax ( 'sabor', array ( 'aguda', "suave", "extremo"))
Devuelve verdadero cuando se está visualizando el archivo de sabor taxonomía tiene una babosa de cualquiera “fuerte”, “suave” o “extrema”.

has_term

has_term ()
Compruebe si el mensaje actual tiene cualquiera de las condiciones dadas. El primer parámetro debe ser una cadena vacía. Se espera que una taxonomía babosa / nombre como segundo parámetro.
has_term ( "verde", "color")
Cuando el puesto actual tiene el término “verde” de la taxonomía “color”.
has_term (array ( "verde", "naranja", "azul"), "color")
Cuando el puesto actual tiene cualquiera de los términos de la matriz.

term_exists

term_exists ($ plazo, $ taxonomía, $ matriz)
Devuelve verdadero si $ término existe en cualquier taxonomía. Si $ taxonomía se da, el término debe existir en éste. El 3er parámetro $ matriz también es opcional, si se da, el término tiene que ser un hijo de este padre, la taxonomía debe ser jerárquica.

is_taxonomy_hierarchical

is_taxonomy_hierarchical ($ taxonomía)
Devuelve verdadero si la taxonomía $ taxonomía es jerárquica. Para declarar una taxonomía jerárquica, utilice 'jerárquico' => true cuando se utiliza register_taxonomy () .

taxonomy_exists

taxonomy_exists ($ taxonomía)
Devuelve verdadero si $ taxonomía se ha registrado en este sitio usando register_taxonomy () .

Ver también is_archive () .

Una Página de autor

is_author ()
Cuando se está visualizando ninguna página de Autor.
is_author ( "4")
Cuando se está visualizando la página de archivo para el número de Autor (ID) 4.
is_author ( 'Vivian')
Cuando se está visualizando la página de archivo para el autor con Apodo “Vivian”.
is_author ( 'John-Jones)
Cuando se está visualizando la página de archivo para el autor con Nicename “john-Jones”.
is_author (array (4, 'John-Jones', 'Vivian'))
Cuando la página de archivo para el autor es o ID de usuario 4, o user_nicename “john-Jones”, o sobrenombre de “Vivian”.

Ver también is_archive () y plantillas de Autor .

Un sitio multi-autor

is_multi_author ()
Cuando más de un autor ha publicado mensajes para un sitio. Disponible con la versión 3.2 .

Un Fecha Page

is_date ()
Cuando alguno se está mostrando página de archivo basado en la fecha (es decir, una mensual, anual, diaria o archivo basado en el tiempo).
is_year ()
Cuando se está visualizando un archivo anual.
is_month ()
Cuando se está visualizando un archivo mensual.
es día()
Cuando se está visualizando un archivo diario.
es hora()
Cuando “minuciosamente”, o “segundo” se está mostrando una base horaria archivo.
is_new_day ()
Si hoy en día es un nuevo día, conforme a fecha. Debe ser utilizado dentro del bucle.

Ver también is_archive () .

Cualquier página Archivo

is_archive ()
Cuando alguno se está visualizando tipo de página del archivo. Categoría, Tag, otro término de taxonomía, tipo de archivo de envío personalizado, autor y páginas basado en la fecha son todos los tipos de archivos.

Un resultado de búsqueda Página

is_search ()
Cuando se está visualizando un archivo de búsqueda de la página de resultados.

A Page 404 No encontrado

is_404 ()
Cuando aparece una página después de un “HTTP 404: No encontrado” se produce un error.

Un paginado página

is_paged ()
Cuando se visualiza la página es “paginado”. Esto se refiere a un archivo o en la página principal se divide en varias páginas y devolverá true en el 2 ° y siguientes páginas de mensajes. Esto no se refiere a un poste o página cuyo contenido ha sido dividido en páginas utilizando el <! - Nextpage -> Quicktag . Para comprobar si un posterior o la página se ha dividido en páginas utilizando el <! - Nextpage -> Quicktag, ver A_Paged_Page sección.

Un adjunto

is_attachment ()
Cuando un documento adjunto a un correo o página se está visualizando. Un adjunto es un archivo de imagen o de otro cargado a través de la utilidad de carga del editor de entradas. Archivos adjuntos se pueden visualizar en su propia “página” o plantilla.

Véase también Uso de archivos de imagen y archivos adjuntos .

El apego es Imagen

wp_attachment_is_image ($ post_id)
Devuelve verdadero si el archivo adjunto al mensaje con ID igual a $ post_id es una imagen. Mime formatos y extensiones permitidas son: .jpg, .jpeg, .gif, .png et.

Un accesorio local

is_local_attachment ($ url)
Devuelve verdadero si el enlace aprobada en $ url es un archivo adjunto real desde este sitio.

Una sola página, un solo puesto, un Anexo o cualquier otro tipo de encargo del anuncio

is_singular ()
Devuelve verdadero para cualquier is_single () , is_page () , o is_attachment () .
is_singular ( 'foo')
Devuelve verdadero si el post_type es “foo”.
is_singular (array ( 'foo', 'bar', 'baz'))
Devuelve verdadero si el post_type es “foo”, “barra”, o “Baz”.

Véase también el Tipos personalizados Publicar libro.

Mensaje Tipo existe

post_type_exists ($ post_type)
Devuelve cierto es lo dado $ post_type se ha registrado en este sitio usando register_post_type () .

Es central de Consultas

is_main_query ()
Devuelve verdadero cuando la consulta actual (por ejemplo, dentro del bucle) es la consulta “principal”.

Ejemplo con el gancho de filtro the_content

add_action ( 'the_content', 'baw_add_social_buttons');
baw_add_social_buttons función () {$ contenido
    if (! is_admin () && is_main_query ()) {
        devolver $ contenido. function_from_a_social_plugin ();
    }
    devolver $ contenido;
}

Si, cuando se trata de WordPress para mostrar el contenido de cada mensaje en el bucle o en una sola página de correos, estamos en la consulta principal, y no parte de administración, añadimos algunos botones sociales (por ejemplo).

Ejemplo con los pre_get_posts acción de gancho

add_action ( 'pre_get_posts', 'baw_modify_query_exclude_category');
baw_modify_query_exclude_category función ($ consulta) {
    if (! is_admin () && $ query-> is_main_query () &&! $ query-> get ( 'gato')) {
        $ Query-> set ( 'gato', '-5');
    }
}

Con pre_get_posts , esto no es posible llamar directamente a is_main_query , debemos utilizar $ consulta dada como parámetro.

Un nuevo día

is_new_day ()
Devuelve verdadero si hoy es un nuevo día.

Un Sindicación

is_feed ()
Cuando el sitio solicitado es un sindicación . Esta etiqueta no es utilizado habitualmente por los usuarios; se utiliza internamente por WordPress y está disponible para los desarrolladores de plugin.

Un Trackback

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

Una vista previa

is_preview ()
Cuando se visualiza un solo puesto se ve en modo borrador.

Un extracto tiene

has_excerpt ()
Cuando el puesto actual tiene un extracto
has_excerpt (42)
Cuando el puesto 42 (ID) tiene un extracto.

Tiene un menú de navegación Asignado

has_nav_menu ()
Devuelve verdadero cuando una ubicación del menú de navegación registrado tiene un menú asignado.

Ver también register_nav_menu () .

Dentro del bucle

en el lazo()
Comprobar para ver si está “dentro del bucle”. Útil para los autores de plugins, esta condicionales vuelve tan cierto cuando se encuentre dentro del bucle.

SideBar es dinámico

is_dynamic_sidebar ()
Devuelve verdadero si el tema es compatible con barras laterales dinámicos.

Es la barra lateral Activo

is_active_sidebar ()
Compruebe si una barra lateral determinado está activo (en uso). Devuelve verdadero si la barra lateral (identificado por nombre o ID) está en uso.

Nota : Para visualizar el contenido de una barra lateral, utilice dynamic_sidebar ($ recuadro) .

Widget es Activo

is_active_widget ($ widget_callback, $ WIDGET_ID)
Devuelve verdadero si el widget con devolución de llamada $ widget_callback o es ID es $ WIDGET_ID se mostrará en la parte frontal.

Nota  : Para que sea efectiva esta función tiene que correr detrás de los widgets han inicializado, en la acción ‘init’ o posterior, consulte Acción Referencia .

Está instalado Blog

is_blog_installed ()
Devuelve verdadero si la corriente está instalado correctamente.

Nota : La caché se comprueba en primer lugar. Si usted tiene un plugin de caché, lo que ahorra los valores de caché, entonces esto va a funcionar. Si utiliza el valor por defecto de WordPress caché, y la base de datos se va, entonces usted podría tener problemas.

Derecho a la lectura de izquierda

is_rtl ()
Devuelve verdadero si la localización actual est lee de derecha a izquierda (RTL).

Ejemplo

 si (is_rtl ()) {
   wp_enqueue_style ( "estilo-RTL ', plugins_url (' /css/style-rtl.css ', __FILE__));
   wp_enqueue_script ( "guión-RTL ', plugins_url (' /js/script-rtl.js ', __FILE__));
 }

Parte de una red (varios sitios)

is_multisite ()
Comprobar para ver si el sitio actual se encuentra en un WordPress multisitio instalar.

Sitio principal (varios sitios)

is_main_site ()
Determinar si un sitio es el sitio principal en una red.

Administrador de una red (varios sitios)

is_super_admin ()
Determinar si el usuario es un (super) administrador de red.

Se registra el usuario en

is_user_logged_in ()
Devuelve verdadero si algún usuario se registra en la actualidad, ningún rol.

Existe el email

email_exists ($ email)
Compruebe si la dirección de correo electrónico dada $ correo electrónico ya ha sido registrado en un nombre de usuario y devuelve ese usuario de ID o falsa si lo hace no existe.

Nombre de usuario existe

username_exists ($ nombre de usuario)
Compruebe si el nombre de usuario dado $ nombre de usuario ya ha sido registrado en un nombre de usuario y devuelve de ese usuario ID o falsa si lo hace no existe.

Un active Plugin

is_plugin_active ($ path)
Comprueba si se activa un plugin.
is_plugin_active ( 'Akismet / akismet.php')
Comprueba si Akismet se activa.
is_plugin_inactive ($ path)
Comprueba si se desactiva un plugin. Igual que ! is_plugin_active ($ path) .
is_plugin_active_for_network ($ path)
Lo mismo para una activación de la red en una instalación de múltiples sitios.
is_plugin_page ()
Devuelve verdadero si la página cargada, parte de administración es uno de un plugin. Esta función está en desuso depuis desde WordPress 3.1, sin ninguna alternativa conocida.

Un tema Niño

is_child_theme ()
Comprobar si un tema niño está en uso.

Tema es compatible con una característica

current_theme_supports ()
Compruebe si existen varias características del tema.
current_theme_support ( "post-miniaturas ')
Devuelve verdadero si el tema actual es compatible con imágenes destacadas . Para añadir una funcionalidad de soporte para temas, utilice add_theme_support () .

Tiene Post Thumbnail

has_post_thumbnail ($ post_id)
Devuelve verdadero si el post con ID igual a $ post_id contiene una imagen que se muestra. El tema debe apoyar Imágenes, véase más arriba.

Secuencia de comandos está en uso

wp_script_is ($ gestor, lista $)
Devuelve verdadero si el guión con el mango es $ mango ha sido ‘registrado’, ‘de puesta en cola / cola’, ‘Done’, ou ‘to_do’ en función de lista de $ .

Ejemplo

    $ Gestor = '' fluidVids.js;
    $ List = 'en cola';
      (si wp_script_is ($ gestor, lista $)) {
        regreso;
      } Else {
        wp_register_script ( '' fluidVids.js, plugin_dir_url (__ __ ARCHIVO) 'js / fluidvids.min.js'.);
        wp_enqueue_script ( 'fluidVids.js');
      }

Esto sería comprobar si el script llamado ‘fluidVids.js’ es encolado. Si no se pone en cola, los archivos son registradas y en cola.

Se ve de antemano en el Personalizador

is_customize_preview ()
Devuelve verdadero si el sitio está siendo vista previa en el Personalizador , falso lo contrario.

Ejemplos de trabajo

Aquí están las muestras de trabajo para demostrar cómo utilizar estas etiquetas condicionales.

Mensaje individual

Este ejemplo muestra cómo utilizar is_single () para mostrar algo específico sólo cuando se ve una sola página mensaje:

si (is_single ()) {

   echo 'Este post \' s título es '. get_the_title ();

}

Añadir esta función personalizada para su hijo temas functions.php archivo y modificar el código condicional para adaptarse a sus necesidades.

add_action ( 'loop_start', 'add_to_single_posts');
add_to_single_posts function () {
si (is_single ( "post")) {
echo '<div class = "su clase"> Su texto o HTML </ div>';
    }
}

También es posible usar:

add_action ( 'loop_start', 'wpsites_add_to_single_posts');
wpsites_add_to_single_posts function () {
si (is_single ()) {
echo '<div class = "su clase"> Su texto o HTML </ div>';
    }
}

Otro ejemplo de cómo utilizar condicionales en el bucle. Optar por mostrar contenido o extracto en index.php cuando se trata de un solo puesto de visualización o la página principal.

si (is_home () || is_single ()) {

   el contenido();

}
else {

   the_excerpt ();

}

Cuando se necesita mostrar un código o elemento, en un lugar que no sea la página de inicio.

<? Php if (! Is_home ()) {?>

 Introduzca su margen de beneficio ...

<? Php}?>

Compruebe si hay múltiples Condicionales

Puede utilizar los operadores de PHP para evaluar múltiples condicionales en una sola sentencia if.

Esto es útil si usted necesita para comprobar si las combinaciones de los condicionales se evalúan como verdadero o falso.

// Cheque para ver si se cumplen 2 condicionales


si (is_single () || is_page ())) {
  
	// Si se trata de un solo puesto o una sola página, hacer algo especial

}

if (() &&! is_archive is_category ( 'nachos')) {
  
	// Si se trata de una página de archivo para cualquier categoría excepto nachos, hacer algo especial

}
// Cheque para ver si se cumplen 3 condicionales


if ($ query-> is_main_query () && is_post_type_archive ( "productos") &&! is_admin ()) {
  
	// Si se trata de la consulta principal en un archivo tipo de mensaje personalizado para los productos
	// Y si no estamos en la administración de WordPress, a continuación, hacer algo especial

}

(si is_post_type_archive ( "películas") || is_tax ( 'género') || is_tax ( 'Actor')) {
  
	// Si se trata de un archivo de tipo de mensaje personalizado para Películas
	// O se trata de un archivo de taxonomía de Género
	// O es un archivo de taxonomía Actor, hacer algo especial

}

Diferencias-basado en una fecha

Si alguien busca nuestro sitio por fecha, vamos a distinguir los mensajes en diferentes años mediante el uso de diferentes colores:

<? Php
// Se inicia el bucle
if (have_posts ()): while (have_posts ()): the_post (); ?>
<H2 de id = "post - <? Php the_ID ();?>">
<a href="<?php the_permalink() ?> "rel =" bookmark "title =" Enlace Permanente a <? php the_title_attribute ();?> ">
<? Php the_title (); ?> </a> </ H2>
<Small> <? Php the_time ( "F JS, Y ')?> <! -? Por <? Php the_author ()> -> </ small>

<? Php
// Estamos mostrando un archivo basado en una fecha?
si (is_date ()) {
     si (la fecha ( "Y")! = get_the_date ( "Y")) {
          // Este post fue escrito en un año anterior
          // Así que vamos a ESTILO el contenido utilizando la clase "oldentry"
          echo '<div class = "oldentry">';
     } Else {
          echo '<div class = "entrada">';
     }
} Else {
     echo '<div class = "entrada">';
}

the_content ( 'Leer el resto de esta entrada »'); 

?>
</ Div>

Variable contenido Sidebar

Este ejemplo muestra contenido diferente en la barra lateral de la página en base a lo que el lector está viendo en ese momento.

<! - Begin barra lateral ->
<Div id = "barra lateral">
<? Php
// Vamos a generar información apropiada a la página que se muestra
si (is_home ()) {
    // Estamos en la página de inicio, por lo que vamos a mostrar una lista de todas las categorías de nivel superior
    echo "<ul>";
    wp_list_categories ( 'optionall = 0 & columna_ordenación = name & list = 1 & niños = 0');
    echo "</ ul>";
} Elseif (is_category ()) {
    // Que estamos mirando una visión única categoría, así que vamos a mostrar _todas_ las categorías
     echo "<ul>";
    wp_list_categories ( 'optionall = 1 & columna_ordenación = name & list = 1 & children = 1 & jerárquica = 1');
    echo "</ ul>";
} Elseif (is_single ()) {
    // Que estamos mirando una sola página, así que vamos a no mostrar nada en la barra lateral
} Elseif (is_page ()) {
    // Que estamos viendo una página estática. ¿Cúal?
    si (is_page ( 'Sobre')) {
        // Nuestro alrededor página.
        echo "<p> Esta es mi página sobre </ p>";
    } Elseif (is_page ( 'Colofón')) {
        echo "<p> Esta es mi página de colofón, se ejecutan en WordPress". bloginfo ( "nombre"). "</ P>";
    } Else {
        // Cajón de sastre para otras páginas
        echo "<p> Voto para Pedro </ p>";
    }
} Else {
    // catch-all para todo lo demás (archivos, búsquedas, 404, etc.)
    echo "<p> Eso es todo </ p>.";
} // ¡Eso es todo amigos!
?>
<Form id = método de "SearchForm" = "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 ( 'Buscar');?>" />
</ Div>
</ Form>

</ Div>
<! - Barra lateral final ->

Página 404 útil

La creación de una página de error 404 artículo tiene un ejemplo del uso de la función condicional PHP isset() en el mensajes amistosos Escribir sección.

El resaltado Menú dinámico

El menú dinámico Destacando artículo se describe cómo utilizar las etiquetas condicionales para permitir el resaltado de la página actual en un menú.

En footer.php archivo de un tema

A veces las consultas realizadas en otras plantillas como sidebar.php puede 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 ponerwp_reset_query antes de la prueba condicional en el pie de página. Por ejemplo:

<? Php
wp_reset_query ();
(si is_page ( '2')) {
    echo 'Esta es la página 2!';
} 
?>

Condicional etiquetas de índice

índice alfabético

Referencia de funciones