Como escrever Campos Personalizados específicos ao listar posts

No meio de um job de um portal de cinema, surgiu a necessidade de listar os posts com determinado campo personalizado (field_name) que tivesse como resultado um determinado meta_value.

Exemplificando:

Eu queria listar todos os filmes do gênero ficção. O gênero era a minha field_name e o termo ficção era a minha meta_value.

A listagem

Veja o exemplo da listagem:

Casablanca

Casablanca
Diretor: Michael Curtiz | Duração: 102min | Ano: 1942


O Iluminado

O Iluminado
Diretor: Stanley Kubrick | Duração: 146min | Ano: 1980


O código

Depois de muito testar soluções, o código que mais chegou ao que o job precisava foi:

<?php
global $post;
$myposts = get_posts('numberposts=500&orderby=title&order=ASC&field_name=Gênero&meta_value=Ficção');
foreach($myposts as $post) :
?>
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a><br />
<?php echo '<a class="thumbnail" href="' . get_permalink() . '" rel="bookmark">' . get_the_post_thumbnail() . '</a><br />'; ?>
<?php echo 'Diretor: ' . get_post_meta( get_the_ID(), 'diretor', true ) . ' | '; ?>
<?php echo 'Duração: ' . get_post_meta( get_the_ID(), 'duração', true ) . ' | '; ?>
<?php echo 'Ano: ' . get_post_meta( get_the_ID(), 'ano', true ) . ''; ?>
<?php endforeach; ?>

Altere o código para as suas necessidades e vai ser só alegria!

Para quem está estudando PHP, veja outras possibilidades de listagem de posts:

+ WordPress: Como listar posts de uma determinada categoria na página inicial
+ WordPress: Como listar posts nas páginas
+ Como listar posts com título, data e imagem
+ Como escrever Campos Personalizados específicos ao listar posts
+ Listar posts no WordPress por categoria com título e nome do autor

Caso tenha alguma dúvida, entre em contato conosco! =)

WordPressTomada760x250

Birimbelo

Descomplicando sua vida digital.

Comentários estão fechados