Autoexcerpt aus Custom Field Inhalt

poster mockup 2853842 1920
Bildquelle: Pixabay, Rani_Ramli

Ein benutzerdefinierter Inhaltstyp kann (auch) einen Haupteditor haben, muss aber nicht. Besteht der gesamte Content eines Inhaltstyps nur aus benutzerdefinierten Feldern und unterstützt den Haupteditor nicht, haben Archive und Suchergebnisseiten in denen er gelistet ist, keinen Textauszug (Excerpt), sofern dieser nicht unabhängig vom Hauptinhalt unterstützt und auch befüllt wird.

Nachfolgend eine Funktion die einen Ersatz-Excerpt aus einem benutzerdefinierten Feld generiert.

function flxo_replace_excerpt( $excerpt ) {
	
	$post_id = get_the_id();
	$post_type  = get_post_type( $post_id );

	if ( $post_type == 'my_post_type' ) {
	
		$post = get_post( $post_id ); 
		$content = get_post_meta( $post->ID, 'my_custom_field', true ); 

		if ( empty($content) ) return $excerpt;
		
		$trimmed = wp_trim_words( $content, 55, $more = ' […]' );
		$excerpt = sprintf( '<div class="entry-summary">%1$s</div>', $trimmed );
	
	}
	
	return wp_kses( $excerpt, ['div' => ['class' => []]] );

}
add_filter( 'get_the_excerpt' , 'flxo_replace_excerpt', 18 );

Bitte Kommentarfunktion nicht für Supportanfragen nutzen. Dem kann hier nicht entsprochen werden. Die Angabe einer E-Mail-Adresse und eines Namens ist nicht erforderlich. Einen (Spitz)-Namen zu nennen wäre aber doch nett.

Schreibe einen Kommentar

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

Hinweis: Sowohl angegebener Name als auch E-Mail-Adresse (beides ist optional, dafür werden alle Kommentare vor Veröffentlichung geprüft) werden dauerhaft gespeichert. Du kannst jeder Zeit die Löschung Deiner Daten oder / und Kommentare einfordern, direkt über dieses Formular (wird nicht veröffentlicht, und im Anschluss gelöscht), und ich werde das umgehend erledigen. – Mit hinterlassenen Kommentaren hinterlegte IP-Adressen werden nach zwei Monaten automatisch gelöscht

publicly queryable