jQuery リンク先で指定タブを開く

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>