Sziasztok!
Egy havonta megjelenő újság archívum oldalánál lenne szükségem egy kis segítségre.
Mindig az aktuális évben bevitt bejegyzéseket szeretném megmutatni. Tehát jelenleg a 2010-es cikkek jöjjenek csak, de dec 31 után már csak a 2011-es. A következőképpen próbálkoztam eddig a codex alapján de nem jártam sikerrel.
Code:
<?php
$current_year = date('Y');
query_posts('year=$current_year&cat=1&posts_per_page=12');
?>
Előre is köszönöm ha valaki tudja a megoldást vagy volt már dolga hasonló problémával.
Szerintem itt nem ezzel a fix dátumos dologgal kéne próbálkozni, hanem az intervallumossal.
Én inkább ebből indulnék ki (ez ugye az elmúlt 30 napot listázza):
Code:
<?php
//Create a new filtering function that will add our where clause to the query
function filter_where($where = '') {
//posts in the last 30 days
$where .= " AND post_date > '" . date('Y-m-d', strtotime('-30 days')) . "'";
return $where;
}
// Register the filtering function
add_filter('posts_where', 'filter_where');
// Perform the query, the filter will be applied automatically
query_posts($query_string);
?>
De az is lehet, hogy túlbonyolítom, mert van egy ilyen is (ami az aktuális hónap/év bejegyzéseit írja ki):
Code:
<?php
$current_month = date('m');
$current_year = date('Y');
query_posts("cat=22&year=$current_year&monthnum=$current_month&order=ASC");
?>
Ez meg már majdnem ugyanaz, amit te is próbálsz. Lehet, hogy a kategória és a post per page zavar be neki. Vagy csak valami szintaktikai hiba.
Az első megoldás azért nem jó mert nekem nem az elmúlt x nap-ból kellenének az adatok hanem, ha pl. jelenleg 2010-van akkor csak a 2010-eseket mutassa, tehát az aktuális évet.
A második tippeddel próbálkoztam én is, csak kihagytam a hónapot. A cat és a többi nem hiszem, hogy bezavar, hiszen ezek query_post paraméterek, legalábbis szerintem nem kellene. Ãt is nyálaztam már párszor úgyhogy hibára sem gyanakszom, de azért megvizsgálom még egyszer.
Jaja, igaz. Arra nem gondoltam, hogy az mindig a jelenlegi dátumtól számolna vissza egy évet.
Fura, mert én is azt gondolnám, hogy a tiéddel mennie kéne.
Esetleg próbáld ki a rewind_posts() fix-et. Nekem segített már. Igaz az kb egy éve volt, egy-két verzióval ezelőtt.
Szerintem a változódat nem nagyon kellene bekényszeríteni az aposztrofok közé. Próbáld ki így, hátha:
Code:
<?php
$current_year = date('Y');
query_posts('year='.$current_year.'&cat=1&posts_per_page=12');
?>
Merthogy a többi elvileg jó, csak ez az, ami gyanús.
Köszönöm, így már tökéletes. Hasonlóan próbáltam én is tegnap de valamit elnézhettem.
Még egyszer köszönöm!