Mi piacerebbe creare una pagina per filtrare i messaggi in base a una serie di criteri.Consenti agli utenti di ordinare i post in Wordpress
Posso lavorare con wp_query
e recapitare i messaggi abbastanza facilmente, il mio problema è che non riesco a capire (né posso trovare alcuna risposta online su questo, credetemi ho guardato) come lasciare che gli utenti facciano questo.
Prendi questo ad esempio, restituisce i post in ordine di prezzo (valore meta campo personalizzato) dal più alto al più basso con 33 post.
<?php
$featuredPosts = new WP_Query(array(
'posts_per_page' => 33,
'meta_key'=>'Price',
'orderby' => 'meta_value_num',
'order' => DESC
));
?>
<?php if ($featuredPosts->have_posts()) : ?>
<?php while ($featuredPosts->have_posts()) : $featuredPosts->the_post(); ?>
<article <?php post_class('item-post block'); ?> id="post-<?php the_ID(); ?>">
<h2 class="price-title"><?php the_title(); ?> </h2>
</article> <!-- end div post -->
<?php endwhile; wp_reset_query(); ?>
<?php endif; ?>
Ora, anche dopo aver letto e googling, che io sia dannato se riesco a capire come mi piacerebbe implementare questo sul front-end per gli utenti di filtrare i messaggi.
Voglio dire, so che è possibile aggiungere gli URL in Wordpress per modificare l'ordine dei post, ma in questo contesto sono totalmente perso.
Ho provato questo, ma non funziona.
<?php
$by_price = esc_url(add_query_arg(array(
'meta_key' => 'price',
'orderby' => 'meta_value_num',
'order' => ASC
)));
$by_date = esc_url(add_query_arg(array(
'orderby' => 'date',
'order' => DESC
)));
?>
<ul>
<li><a href="<?php echo $by_price;?>">Order by price</a></li>
<li><a href="<?php echo $by_date;?>">Order by date</a></li>
</ul>
Quello che sto cercando di realizzare è in realtà abbastanza semplice così, permettere all'utente di scegliere la categoria, selezionare la fascia di prezzo (indovinando mi piacerebbe scrivere qualcosa in JQuery per fornire un valore in un campo), imposta il numero di risultati che desidera vengano restituiti.
Ho provato su Google tutto il sotto il sole, posso pensare a questo, niente da fare.
La seconda parte deve essere all'interno del ciclo? – andy
No, non in un ciclo – Zac
A meno che non inserisca la seconda parte all'interno del ciclo dalla prima parte, essa non viene mai visualizzata sulla pagina. – andy