WordPress kívülről

Bejegyzés száma

Ezen “feladatnál”, aki jártasabb a WordPress megoldásokban, lehetséges, hogy the_ID funciót hívná segítségül. De sajnos nagyon hamar rájönne, hogy nem csak félmegoldás, de célunk nem is érjük el vele, mert elég furcsa számok jönnének ki. Vagyis az egyik posztunknál az állna hogy 1, az alatta lévőnél pedig az, hogy 37. Vagyis a feladat amely előttünk áll nem más mint ezt úgy megoldani, hogy sorba legyenek ezek a számok lényegében. Hiszen a főoldalon megjelennek a publikált bejegyzések időrendi sorrendbe. Zavaró lenne, ha fentebb említett példa alapján jelenne meg az információ. Amennyiben sorba szeretnénk ezt megjeleníteni, illesszük az alábbi funkciót, sablonunk functions.php fájljába:

function Get_Post_Number($postID){
	$temp_query = $wp_query;
	$postNumberQuery = new WP_Query('orderby=date&order=<strong>DESC</strong>&posts_per_page=-1');
	$counter = 1;
	$postCount = 0;
	if($postNumberQuery->have_posts()) :
		while ($postNumberQuery->have_posts()) : $postNumberQuery->the_post();
			if ($postID == get_the_ID()){
				$postCount = $counter;
			} else {
				$counter++;
			}
	endwhile; endif;
	wp_reset_query();
	$wp_query = $temp_query;
	return $postCount;
}

Ha ezzel elkészültünk akkor a loopon belül, ahol meg szeretnénk jeleníteni a bejegyzés számát, illesszük az alábbi kódot:

<?php $currentID = get_the_ID(); ?>
<?php $currentNumber = Get_Post_Number($currentID); ?>
<?php echo $currentNumber; ?>

Használjátok egészséggel blogot elkészítése, alakítása során.