Ankerlink an den Anfang der Seite
804 5769
Generic filters
Filter by Kategorien

Der Beitrag, geschriebem am 15. September 2023, ist schon etwas älter und könnte womöglich nicht mehr aktuell sein

Wenn es darum geht, Datenfelder vor einem Textauszug in WordPress abzubilden (z.B um Eventdatümer gleich in der Übersicht anzuzeigen), stolpert man oft über den Filter get_the_excerpt. Potentiell ist er auch bei Verwendung des Query Loop Blocks immer noch anwendbar, wird aber auch immer noch etwaiges Markup aus dem entfernen, was man vor oder nach dem Excerpt abbilden möchte.

Anders verhält es sich, wenn man stattdessen den Block-Output filtert. Im nachfolgenden Beispiel gibt es einen Post Type event, eine eventkategorie und eine taxonomy für den courseplace. Ein Post Type Archiv gibt es nicht, und auch kein Archiv für die Veranstaltungsorte, daher kommt der Filter nur in der Taxonomy „eventcategory“ zur Anwendung.

function display_custom_event_fields_archive( $content, $parsed_block, $block ) {
	if ( !is_tax( 'eventcategory' ) ) return $content;
	$before = '';
	$post_id = get_the_ID();
	$startdate 	= get_post_meta($post_id, 'myplugins_startdate', true); 
	$enddate 	= get_post_meta($post_id, 'myplugins_enddate', true); 

	$dates = '';

	if ( $startdate ) { $dates .= sprintf( '<label>%1$s: </label>%2$s<br />', esc_html__( 'Starts' , 'myplugins-textdomain' ), $startdate ); }
	if ( $enddate ) { $dates .= sprintf( '<label>%1$s: </label>%2$s<br />', esc_html__( 'Ends ' , 'myplugins-textdomain' ) , $enddate ); }

	if ( $dates != ''  ) $before .= sprintf( '<div class="eventdata">%s</div>', $dates );	
	
	return $before . $content;
}
add_filter( 'render_block_core/post-excerpt', 'display_course_datafields_archive', 10, 3, );

Das ist ein einfaches Beispiel, mit dem vor dem Excerpt ein div mit den Event-Daten angezeigt wird, die auch ihre Zeilenumbrüche behalten.

Bitte das Kommentarfeld nicht für Supportanfragen nutzen; hier kann kein Support angeboten werden. Die Angabe von Name oder E-Mail-Adresse ist optional, ein Spitzname wäre trotzdem nett.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Hinweis: Name und E-Mail-Adresse (beides optional, da alle Kommentare moderiert werden) werden dauerhaft gespeichert. Über dieses Formular kann jeder Zeit die Löschung persönlicher Daten oder Kommentare angefordert werden; die Anfrage wird nicht veröffentlicht und nach der Bearbeitung gelöscht. IP-Adressen, die mit Kommentaren gespeichert werden, werden nach zwei Monaten automatisch gelöscht.

Ihre Nachricht wird möglicherweise zur Spam-Prüfung an OpenAI (USA) weitergeleitet. Weitere Informationen finden Sie in unserer Datenschutzerklärung.