WooCommerce get_author_posts_url () – URL des Autors wird zur Shop-Basis umgeleitet

Ich habe festgestellt, dass wenn ich WooCommerce aktiviert habe und get_author_posts_url() es automatisch zur “Shop-Basis” umleitet, wenn die Rolle des Benutzers Customer .

Wenn ich den Benutzer zum Subscriber get_author_posts_url() funktioniert get_author_posts_url() korrekt.

Ich habe alle Plugins deaktiviert, um systematisch zu identifizieren, was das Problem verursacht hat, und kann bestätigen, dass dies nur der Fall ist, wenn WooCommerce aktiviert ist. Ich habe auch Überschreibungen überflutet. Ich habe sogar versucht, $user->add_role( 'subscriber' ) zu dem Capability-Array des Benutzers zu verwenden.

Weiß jemand, warum das passiert und wie ich es unterdrücken kann? (dh leiten Sie get_author_posts_url() für Benutzer mit einer get_author_posts_url() um.

BEARBEITEN

Ich glaube, das ist ein Bug, ich habe ein Bug Ticket mit WC geöffnet und im WP Forum Thread gepostet

Im Moment habe ich alle “Kunden” -Benutzer auf “Abonnenten” eingestellt, wenn ich eine Antwort bekomme / einen Fortschritt mache, den ich hier posten werde.

Danke im Voraus!

Solutions Collecting From Web of "WooCommerce get_author_posts_url () – URL des Autors wird zur Shop-Basis umgeleitet"

Ich fand!

https://wordpress.org/support/topic/how-to-add-author-page-to-custom-user-role/#post-8807168

In WooCommerce wird dies durch den folgenden Code in wp-content / plugins / woocommerce / includes / wc-user-functions.php erreicht:

 /** * Disable author archives for customers. * * @since 2.5.0 */ function wc_disable_author_archives_for_customers() { global $wp_query, $author; if ( is_author() ) { $user = get_user_by( 'id', $author ); if ( isset( $user->roles[0] ) && 'customer' === $user->roles[0] ) { wp_redirect( wc_get_page_permalink( 'shop' ) ); } } } add_action( 'template_redirect', 'wc_disable_author_archives_for_customers' ); In your theme's functions.php (or somewhere else appropriate), you could turn that off: /* This removes the function that redirects customers to the shop page */ function enable_author_archives_for_customers() { remove_action('template_redirect', 'wc_disable_author_archives_for_customers'); } add_action( 'after_setup_theme', 'enable_author_archives_for_customers' );