Automatisch aktualisierter Beitragszähler anzeigen

3. Juli 2022 | Scripts, WordPress

Möchten Sie auf Ihrer WordPress-Website einen Beitragszähler einrichten? Einer, der das Total der veröffentlichten Beiträge aktualisiert und die Nummer des gerade betrachteten Posts ausgibt. Ganz einfach. Wir erklären, wie das geht.

Zunächst benötigen wir ein wenig PHP-Code. Ich verwende zur Verwaltung solcher Snippets das Plugin «Insert PHP Code Snippet», welches gratis im WordPress-Plugin-Directory zu haben ist.

Dort platziere ich den folgenden Code:

<?php
if ( 'post' == get_post_type() ) {
	$this_post_id = get_the_id();

	$args = array(
		'post_type' => 'post',
		'post_status' => 'publish',
		'posts_per_page' => -1,
		'fields' => 'ids',
		'order' => 'ASC',
	);
	$the_query = get_posts( $args );

	$key = array_search( $this_post_id , $the_query );
	$key++;

	$published_posts = wp_count_posts( 'post' )->publish;

	echo 'Dies ist Beitrag # ' . $key . ' von '. $published_posts . '.';
}	//end if post type ?>

In Zeile 6 definieren Sie, was genau gezählt werden soll. Hier sind es «posts», es könnte aber auch «page» oder ein Custom Post Type stehen. In Zeile 7 wird definiert, wie der Status der zu zählenden Beiträge ist. Hier «publish» – wenn geplante, unveröffentlichte Beiträge angezeigt werden sollen, wäre hier der richtige Term «future», welcher auch in Zeile 17 angegeben werden müsste.

Der Code ergibt einen Shortcode. Diesen kann ich nun in ein Template – oder auch in einen Beitrag einfügen. Unser obiges Beispiel gibt nun folgende Zeile aus:

Dies ist Beitrag # 157 von 162.

Die Beitrags-Nr. variiert je nach Beitrag, in welchem der Code verwendet wird. Und die Totalzahl erhöht sich laufend bei neu veröffentlichten Beiträgen.

Ziemlich einfach. Oder?

Werbung

Werbung

 

Kostenlose WordPress- und Divi-Tricks im Abo

Wir schicken Ihnen sporadisch (weniger als 10x jährlich) neue Tricks für Wordpress und das Divi-Theme, aber auch hilfreiche CSS- und HTML-Codes frei Haus.

Füllen Sie zur Anmeldung das folgende Formular aus. Angaben mit * sind Pflichtangaben.









Vielen Dank.

Pin It on Pinterest

Share This