Öffne the_author_link () in einem neuen Fenster

Ich brauche ein zusätzliches Paar Augen dazu. Ich habe einen Code-Block in Abhängigkeit von einem kommerziellen Thema angepasst, das den folgenden Code enthält:

 

Es gibt den the_author_link() darin, der entweder den Namen des Benutzers oder den Link zur Website des Benutzers angibt, der im Profil des Admin-Benutzers ausgefüllt werden kann. Der the_author_link() akzeptiert keine Parameter gemäß dem Codex.

Ich möchte, dass diese function den Link in einem neuen Fenster öffnet. Muss ich die function abbrechen?

Solutions Collecting From Web of "Öffne the_author_link () in einem neuen Fenster"

Ja, Sie müssen die URL nach Benutzer-Meta abrufen:

 < ?php if ( get_the_author_meta('url') ) { // Author has website url $author_url = get_the_author_meta('url'); } else { // Author doesn't have website url, so get Author Posts Page $author_url = get_author_posts_url( get_the_author_meta('ID') ); } ?> Author's website 

Leider ist dies ein Teil, bei dem WordPress keine Anpassung über Filter oder Aktionen erlaubt, wie Sie im Quellcode für diese function sehen können .

Sie können diesen Code jedoch kopieren und zu Ihrem eigenen machen

 function wpse_get_author_link_target_blank() { if ( get_the_author_meta('url') ) { return sprintf( '%3$s', // added this part -------------------------------------------------^ esc_url( get_the_author_meta('url') ), /* translators: %s: author's display name */ esc_attr( sprintf( __( 'Visit %s’s website' ), get_the_author() ) ), get_the_author() ); } else { return get_the_author(); } } 

Und benutze es so

 
< ?php echo wpse_get_author_link_target_blank(); ?>