WordPressテーマSANGOの質問

固定ページをフロントページに設定したときにタイトルにh1タグをあてたい

アバター
小林

質問させていただきます。
固定ページをフロントページに設定した際、
他ページと異なり、
ロゴがh1に設定され、投稿画面のタイトルに入力したテキストはh1に出力されません。

これを他のページ同様、フロントページもロゴをh1に設定せず、コンテンツ内のh1に出力されるようにしたいのですが、どうすればよろしいでしょうか?

SANGO
質問板アーカイブ
コメントへの回答
サルワカくん
サルワカくん
2019/02/09

標準仕様では、トップページではロゴ画像/サイトタイトルにh1タグがあてられるようになっています。
以下の手順で変更可能です。
①子テーマのフォルダ直下に、親テーマからheader.phpを複製(すでに存在する場合はそちらを編集してください)。
②33行目

$title_tag = (is_home() || is_front_page()) ? 'h1' : 'p'; //トップページのみタイトルをh1に

を以下に書き換え

$title_tag = 'p';

次に固定ページのテンプレートファイルを編集します。「デフォルトテンプレート」を固定しておりますかね?
トップページでもタイトルにh1タグがあてられるようにします。
③8〜13行目

<?php if(is_front_page()) ://ホーム固定の場合 ?>
  <h2 class="page-title"><?php the_title(); //タイトル ?></h2>
<?php else ://通常の場合 ?>
  <?php breadcrumb(); ?>
  <h1 class="page-title"><?php the_title(); //タイトル ?></h1>
<?php endif; ?>

を以下にまるっと置き換えます

<?php breadcrumb(); ?>
<h1 class="page-title"><?php the_title(); //タイトル ?></h1>

ご確認よろしくお願いします。

アバター
西村 寛
2020/02/05

お世話になります。
まだまだWordPressの勉強中のため、拙い質問になってしまっているかと思いますが、よろしくお願いします。

現在は、1月に購入し、どのようなHPが作れるのか実験しているところです。

なんとなくイメージは出来てきたのですが、解決できないところが出てきたので質問をさせていただきました。

固定ペーをジをTopにした時に、他のページと同じようにページの一番上のパーマリンクの下の行でh1を出力したいと考えています。

SEO的にはあまり意味がないとお考えのようですが、今教わっている方がこの部分を大切にしているため、それに沿ってつくっていきたいと思っております。

2019/02/09にあった質問も同じ内容かと思いますが、ベージョンが変わったからなのでしょうか、header.phpの内容が違ってしまっているように感じます。
33行目、とありますが、そもそも20 行しかないような、、、

また、「固定ページのテンプレートファイルを編集します。「デフォルトテンプレート」を固定しておりますかね」の意味がわかりません。

今回の場合、「トップページ用 1カラム(タイトルなど出力無し) 固定ページテンプレート (page-forfront.php)」を変更するということでしょうか?

お手数をおかけしますが、よろしくお願いいたします。

サルワカくん
サルワカくん
2020/02/06

お世話になります。

現在「トップページ用1カラム固定ページ」のテンプレートで作った固定ページを、ホーム固定していると思います。
2019/2/9の質問者様は「トップページ用固定ページ」のテンプレートではなく、通常の固定ページテンプレートをホーム固定しているので別の話だと思われます。

「ページの一番上のパーマリンク」とはパンくずリスト(ホーム > カテゴリー名などのリンクの並び)のことでしょうか?
その場合、パンくずリストは、トップページには表示する必要はありません。

現在ご自身でh1タグを使い、ページ最上部にタイトルを入れていると思います。そのような形で良いのではないかと思いますが、何か問題があるのでしょうか?

アバター
はし
2020/02/16

1年ほど前から使わせていただいております。ありがとうございます。

私も2019/2/9の質問者様と同じように、トップページのH1タグをタイトルタグとは別のワードで出力したいと考えています。

2020/2/5の質問者様と重複してしまうかもしれないのですが、質問2点、よろしくお願いします。

質問①

記載いただいたとおり、ヘッダーの、

$title_tag = (is_home() || is_front_page()) ? ‘h1’ : ‘p’;

を置き換えようとしたのですが、このコードが見つかりません。

親テーマのテーマヘッダー (header.php)は20行で終わっており、最後の行が

となっています。

念のためテーマエディターからほかのphpファイルも1つ1つ同じコードで検索してみたのですが、見当たりませんでした。

こちらのコードはどこにあるのでしょうか?

なお、まだ子テーマにheader.phpは複製していません。もしかして複製すると出現するのでしょうか・・・?

質問②
「次に固定ページのテンプレートファイルを編集します。」で編集するファイルは親テーマの「個別投稿ページ (page.php)」で合っていますか?

以上、よろしくお願いします。

サルワカくん
サルワカくん
2020/02/16

お世話になっております。

①ヘッダーロゴがどのファイルに書かれているかについて
以前のアップデートでソースコードをより見やすくするために、ロゴまわりをheader.phpからparts/header/inner.phpに移しました。
そのため、子テーマにparts/header/inner.phpを複製したうえで、編集する必要があります。
(子テーマにpartsフォルダを作り、その中にheaderフォルダを作る。さらにその中にinner.phpファイルを入れることで、子テーマのファイルが読み込まれるようになります)

②編集するファイルについて
ホーム固定している固定ページで選択しているテンプレートを編集することになります。
以下のようなイメージです。
・「デフォルトテンプレート」を利用しているならpage.php
・「1カラム表示(サイドバー無し)」を利用しているならpage-1column.php
・「トップページ用 1カラム」を利用しているならpage-forfront.php
・「トップページ用 サイドバー有」を利用しているならpage-forfront2co.php

よろしくお願いします。

アバター
がま
2020/08/06

https://saruwakakun.com/sango/comments?id=3570
の質問の方に追加の質問です。2018年から使わせていただいております。

固定ページをホームに選択し、
「トップページ用 サイドバー有」を利用しているならpage-forfront2co.php
を使用しています。
②編集するファイル page-forfront2co.php には、
該当する
<?php if(is_front_page()) ://ホーム固定の場合 ?>
<h2 class="page-title"><?php the_title(); //タイトル ?></h2>
<?php else ://通常の場合 ?>
<?php breadcrumb(); ?>
<h1 class="page-title"><?php the_title(); //タイトル ?></h1>
<?php endif; ?>
が含まれておりませんでした。
その代わりにテンプレートの説明に
**
* Template Name: トップページ用 サイドバー有(タイトルなど出力無し)
* Template Post Type: page
*/
とあります。
どのファイルを編集すればいいのでしょうか。また、テンプレート②も子テーマで複製した方がいいのでしょうか?

サルワカくん
サルワカくん
2020/08/06

お世話になっております。
該当のコメントでの回答は通常の固定ページ(トップページ用ではないもの)をホーム固定している場合のカスタマイズ方法です。
「トップページ用2カラム」のテンプレートではh1タイトルは自動出力されません。
そのため、該当のコメントのうち①②のカスタマイズ(header.phpのカスタマイズ)のみを行い、「トップページ用2カラム」で表示したいh1タイトルはご自身で好きな場所に挿入すればOKです。

・Gutenbergエディターを利用しているならカスタムHTMLブロックでh1タグを書き込む
・クラシックエディターを使用しているなら「テキスト」エディタからh1タグを書き込む
という感じですね。

よろしくお願いします。

アバター
がま
2020/08/12

お返事遅くなり申し訳ありません。おっしゃるとおりに致しましたら、h1として表示されました。ありがとうございます。

ただ私の質問箇所が間違って質問してしまっていたようで
カスタマイズ→基本情報とロゴの設定
サイトタイトルに指定した文字(ロゴと文字の組み合わせ)にしているため実際に
メタ情報のサイトタイトルとして使用したいものと異なります。(サイトタイトルは地域などもう少し長いタイトルを使用したい)

その場合 別にサイトタイトルを作成できないでしょうか?という質問でした。

トップページのタイトルを変更すればサイトタイトルがそのまま変わると勘違いをしていたようです。失礼いたしました。改めてトピックを立て直したいと思います。