Buddypress переопределяет URL автора

Я получаю URL-адрес автора в Wordpress извне цикла, используя это:

<?php
get_author_posts_url( $author_id, $author_nicename );
?> 

Что отлично работает, предоставляя URL-адрес автора в этом формате -

mysitename.com/author/john-james.

Однако, когда Buddypress включен, этот же URL меняется на

mysitename.com/members/john-james

Есть ли способ предотвратить это?


person atsngr    schedule 03.11.2017    source источник


Ответы (2)


get_author_posts_url() вызывает $wp_rewrite->get_author_permastruct(), который по умолчанию возвращает:

$this->author_structure = $this->front . $this->author_base . '/%author%';

Класс WP_Rewrite имеет этот фильтр, который может позволить вам изменить значения:

apply_filters( 'author_rewrite_rules', array $author_rewrite )

Вся эта информация взята из WP Codex.

person Juan    schedule 03.11.2017

В конце концов мне придется использовать этот код - <?php echo get_site_url(); ?>/author/<?php echo($user_name); ?> где $user_name = $user_info->user_nicename;

Меня это тоже заводит - mysitename.com/author/john-james

Могут быть и другие способы, но это позволяет мне использовать два URL вместе для разных целей: один для проверки профиля автора (через buddypress), а другой для просмотра всех статей автора.

person atsngr    schedule 04.11.2017