Acabo de entrar en el concepto de formatos de publicación y me preguntaba por qué hay dos de las 3 funciones del formato de publicación "API" que ofrecen absolutamente la misma funcionalidad. Considere los siguientes dos conceptos (A vs. B):
if ( have_posts() )
{
while ( have_posts() )
{
the_post();
// A) has_post_format
if ( has_post_format('format') )
{
the_excerpt(); // some special formating
}
// VERSUS:
// B)
if ( get_post_format( $GLOBALS['post']->ID ) == 'format' )
{
the_excerpt(); // some special formating
}
} // endwhile;
} // endif;
¿Podría alguien explicarme por qué hay esas dos funciones en lugar de solo ex. get_post_format
? Si pudiera ofrecerme algunos ejemplos de situaciones en las que la una no es capaz de hacer algo que la otra función puede hacer, estaría especialmente feliz y lo haría +1.
fuente
get_template_part
es realmente inteligente!if ( ! has_post_format() ) {}
devuelve una advertencia (al menos desde 3.5-RC1) ya que falta el primer argumento (requerido). codex.wordpress.org/Function_Reference/has_post_formatLa siguiente parte no es correcta, he creado un ticket para solicitar esta mejora.
has_post_format()
es más flexible porque se basa enhas_term()
, que se basa enis_object_in_term()
. Esto significa que puede pasar una variedad de formatos de publicación y volverátrue
si las publicaciones tienen uno de estos formatos.El boleto de especificación original ya mencionó ambosget_post_format()
yhas_post_format()
, tal vez porque se basa en el sistema de taxonomía que también tiene ambas funciones.fuente
is_object_in_term()
función en su lugar.has_post_format()
espera una cadena como primer parámetro. Una matriz fallará.has_*
funciones: he creado un ticket para ello.Simple, has_post_format () devuelve un valor verdadero / falso (booleano) que es útil en las declaraciones IF, mientras que get_post_format () devuelve el formato de publicación, si existe, y probablemente NULL o falso si no está allí. El uso de valores booleanos es una buena manera limpia de asegurarse de que sus condiciones siempre se comporten de la manera que esperaba y la función has_post_format () permite condiciones cortas y agradables:
Además, esto simplemente coincide con otras funciones existentes de WordPress. Si bien su opción B hace las cosas, requiere un conocimiento un poco más especializado que quizás el usuario de WordPress ligeramente superior al promedio esté familiarizado.
fuente
get_adjacent_post
ynext_post_link
esas cosas.