Oi,
Para criar um campo personalizado utilize este plugin https://wordpress.org/plugins/advanced-custom-fields/
Para recuperar os campos:
http://www.advancedcustomfields.com/resources/get_field/
$args = array(
'meta_key' => 'color',
'meta_value' => 'blue'
);
$query = new WP_Query( $args );
Criador do tópico
Ramires
(@ramiressilva)
hudsonghetti, criar campos personalizados não é o problema, mas sim listar determinadas páginas que possuem um determinado valor de um campo personalizado, assim como listar os outros campos personalizados da mesma página.
Por exemplo, criarei um campo personalizado chamado “Nível” onde poderá inserir os valores “Fundamental”, “Médio” ou “Superior”. Depois preciso listar todas as páginas que tem o valor desse campo igual a “Médio”e exibir os outros campos dela como “Turno”, “Professor”, “Mensalidade”, etc.
O plugin funciona bem, mas minha dúvida é de como chamar essas páginas através de um filtro. Seu código não funcionou.
<?php
$args = array(
'posts_per_page' => 3,
'meta_query' => array(
array(
'key' => 'Nivel',
'value' => 'Medio'
)
)
);
$query = new WP_Query( $args );?>
<ul>
<?php while ( $query-> have_posts()) : $query->the_post();?>
<li>
<a href="<?php the_permalink(); ?>" title="<?php esc_attr( the_title() ); ?>"><?php the_title(); ?></a>
</li>
<?php endwhile; ?>
</ul>
Criador do tópico
Ramires
(@ramiressilva)
Obrigado! O seu código está certo hudsonghetti, mas só funcionou após eu acrescentar outro parâmetro. Como estou trabalhando com páginas, e não com posts, precisei especificar isso.
<?php
'post_type' => 'page'
?>
O código completo ficou assim:
<?php
$args = array(
'post_type' => 'page',
'posts_per_page' => 3,
'meta_query' => array(
array(
'key' => 'Nivel',
'value' => 'Medio'
)
)
);
$query = new WP_Query( $args );?>
<ul>
<?php while ( $query-> have_posts()) : $query->the_post();?>
<li>
<a>" title="<?php esc_attr( the_title() ); ?>"><?php the_title(); ?></a>
</li>
<?php endwhile; ?>
</ul>