У вас сломан сайт по ссылке, но на сколько я понимаю, у вас там табы, на них якоря работать не будут как по ссылкам. Активный таб устанавливается с помощью добавления класса
active как к табу, так и к контенту таба. У вашей задачи есть два решения — на php и на js
Регистрируете дополнительный параметр в
query_vars
add_filter( 'query_vars', 'add_query_vars' );
function add_query_vars( $qvars ) {
$qvars[] = 'tab';
return $qvars;
}
Ссылку с активным табом можно собрать так
$url = add_query_arg( [ 'tab' => '2' ], home_url( '/' ) ); // Получится ссылка вида https://example.loc/?tab=2
Получить номер активного таба можно с помощью
get_query_var()
, при выводе проверяете его номер и присваиваете соответствующий класс
$active_tab = get_query_var( 'tab', 1 );
$tabs = ['О компании', 'Услуги', 'Портфолио'];
foreach ( $tabs as $key => $tab ) {
if ( $key == $active_tab ) {
echo '<div class="tab active">';
} else {
echo '<div class="tab">';
}
}
Всю последнюю часть, которая добавляет активный класс исходя из ссылки можно переписать на js