html:リンク元
<a href="<?= get_page_link( 7 ) ?>#tab2">タブ2を開いて</a>
html:リンク先
<ul class="tab_list">
<li class="active" data-tab="tab1"><a id="tab1">タブ1</a></li>
<li data-tab="tab2"><a id="tab2">タブ2</a></li>
</ul>
<div class="tab_content">
<div class="ac_content active">タブ1コンテンツ</div>
<div class="ac_content">タブ2コンテンツ</div>
</div>
jQuery
<script>
$(function () {
// URL ページ内リンク取得
let pram = location.hash;
// URLのhashが#tab2だったらタブ2を開く
if( pram === '#tab2'){
$('[data-tab="tab1"]').removeClass('active');
$('[data-tab="tab2"]').addClass('active');
$('.ac_content').toggleClass('active');
}
});
</script>
活用編
例えば、フォームなどをタブ切り替えで設置していた場合、確認ページも同じタブを開きたい。
html
<ul>
<li class="active" data-tab="tab_1">
<a id="tab_1">タブ1</a>
</li>
<li data-tab="tab_2">
<a id="tab_2">タブ2</a>
</li>
</ul>
<div>
<div class="ac_content active">タブ1フォーム</div>
<div class="ac_content">タブ2フォーム</div>
</div>
jQuery
1.aタグのhrefにid名が入るように指定する
2.hashを取得
3.activeクラスを付与・削除
<script>
// タブ2をクリックしたらタブ2のaタグにhrefを追加
$('[data-tab="tab_2"]').click(function(){
$('#tab_2').attr("href",'#tab_2');
});
// URL ページ内リンク取得
let pram_recruit = location.hash;
// URLハッシュがタブ2から来たらtab_2を開く
if( pram_recruit === '#tab_2'){
$('[data-tab="tab_1"]').removeClass('active');
$('[data-tab="tab_2"]').addClass('active');
$('.ac_content').toggleClass('active');
}
</script>