SWELLのアーカイブページのサブタイトルを変更する方法

目次

はじめに

SWELLではアーカイブページの横にハイフンで囲まれる形でサブタイトルが付きます。

下記の画像でいえば、-WEB制作-という箇所です。

通常の投稿タイプであればあまり問題ないのですが、タームで絞ったアーカイブページではここが-tax-と表示されて、初めて見る人だと「tax…税?」となってしまいます。

そこで今回は-◯◯◯◯-の部分を任意の文字列に変更する方法を紹介します。

変更方法

まずは前提としてSWELLの子テーマを用意してください。

親テーマを書き換えるとテーマのアップデートが掛かったときに変更内容がリセットされてしまうので、このようなカスタムをするときは子テーマが必須です。

子テーマはSWELL ChildやSWELL PLUSがあるので、好きなものをダウンロードするか、自作で作ってください。

まずはSWELL本体のテーマをVSCodeなどで開いてtaxが出力される処理を探します。

今回は出力される文字列が分かっているので、VSCodeの検索欄に‘tax’と打ち込んで対象のファイルを絞っていきます。

ある程度PHPを読んで理解できるなら、Get.phpが対象ファイルであることはすぐに分かります。

ではGet.phpのファイルの中身を見てみましょう。

419行目付近に$data['type'] = 'tax';という記述があるはずです。

この部分がタームアーカイブでのtaxを指定しています。

では続けて、子テーマで本題の書き換えといきます。

私の場合はfunctions.phpに記述する内容はfncフォルダ内に個別でファイルを作って管理していますが、functions.phpに直書きでも大丈夫です。

ここでは同じファイル名としてget.phpというファイルを新規作成して使っています。

get_artchive_data()swell_get_archive_dataという名前でフックがあったので、カスタムした関数をadd_filter()で実行します。

<?php 
/**
 * /classes/Utility/Get.php内のget_archive_data()について一部変更
 */
function get_archive_data__custom( $data ) {
  // is_tax() の条件でタクソノミーアーカイブをカスタマイズ
  if ( is_tax() ) {
      // ここでカスタムタクソノミーのタイトルやタイプを変更
      $data['title'] = single_term_title( '', false );
      $data['type']  = 'category'; // タイプを 'tax' から 'category' に変更
  }
  // 他の条件分岐も同様にカスタマイズ可能
  return $data;
}
add_filter( 'swell_get_archive_data', 'get_archive_data__custom' );

元のget_archive_data()の後で処理を実行するので、内容はシンプルにif ( is_tax() )で条件分岐しているだけです。

今回はcategoryとしましたが、試しに他の文字列にしても良いです。

また、この条件分岐やif文内部での処理を書き換えればタームやタクソノミー単位で出力内容を変えることもできるので、是非試してみてください!

WEB制作 -WEB制作-はおかしいから自分のサイトも変更しないとですね(汗

この記事が気に入ったら
いいね または フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする

CAPTCHA


目次