Wie überschreibe ich den „more-Link“ im Abfrage Loop-Block?

more
foto von christy jacob auf unsplash

Kurze Antwort: gar nicht.

Weil man diesen Link weder überschreiben kann, noch muss. Er wird nämlich nur dann angezeigt, wenn ein Linktext vorhanden ist, was die Funktion render_block_core_post_excerpt in der Datei post-excerpt.php verrät, resp. folgender Teil:

$more_text = ! empty( $attributes['moreText'] ) ? '<a class="wp-block-post-excerpt__more-link" href="' . esc_url( get_the_permalink( $block->context['postId'] ) ) . '">' . wp_kses_post( $attributes['moreText'] ) . '</a>' : '';
$filter_excerpt_more = function( $more ) use ( $more_text ) {
	return empty( $more_text ) ? $more : '';
};

Entfernt man also den Text für den Weiterlesen-Link (meistens „Continue Reading“) im Abfrage-Loop, verschwindet der Link oder Button (je nach Einstellung) ganz von selbst. Dabei sollte allerdings sichergestellt sein, dass man sich tatsächlich im Button-Text-Bereich befindet, wenn man die Entfernen-Taste drückt (und jeden Buchstaben dann einzeln entfernt), da sonst leicht mal der ganze Excerpt verloren geht.

screenshot 20221222 181734

Über den Filter excerpt_more kann nun ein beliebig angepasster eigener „more-Link“ hinzugefügt werden.

function add_more_link_scroll( $more_string ) {
	
	$more = sprintf(
		'<a href="%1$s" class="my-custom-more-link">%2$s</a>',
		esc_url( get_permalink() ),
		sprintf( __( 'Beitrag lesen%s' ), '<span class="screen-reader-text">' . get_the_title() . '</span>' )
	);
	return '...<br />' . $more; 
}
add_filter( 'excerpt_more', 'add_more_link_scroll' );

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