どうも、くまだです。
前回、前々回とif文で出し分ける記事を書きましたが、今回もif文を使った内容です。if文を使ってtitleタグの内容をページごとに出しわける処理をします。
下はif文系の過去記事です。
LPデザインのお仕事募集中です↓↓↓
私がフリーランスになったきっかけのスクールはこちら↓
Web制作するならレンタルサーバー使いましょう↓(Webサイト作る予定がある人も必要です)
タイトルタグの内容をif文で出しわけ
タイトルタグ<title>○○</title>の○○の部分をページごとに出しわけます。
トップページであればサイト名が表示され、下層ページになると以下のような表示にしたい。
- サイト名 | 下層ページのタイトル
例えばお問い合わせページであれば、以下みたいな感じ。
- サイト名 | お問い合わせ
header.phpのmetaタグのtitleタグ部分を以下のようにテンプレート化してget_template_part();で読み込む。
get_template_part();は、テンプレートパーツを読み込む関数です。
<!-- header.php -->
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<!-- meta -->
<?php get_template_part('template/title'); ?>
<meta name="description" content="○○○○" />
~~~~~~~~~省略!
</head>
titleタグを丸ごと、例えば「templateフォルダ」の中に「title.php」というファイルをつくってそこに貼り付け。
<!-- title.php -->
<title>
<?php bloginfo('name'); ?>
|
<?php global $page, $paged;
if (is_front_page()) : //トップページ
?>
キャッチコピー
<?php
elseif (is_page('〇〇') || is_page('△△')) :
wp_title('');
elseif (is_post_type_archive('〇〇')) : ?>
カスタム投稿のタイトル
<?php elseif (is_home('')) :
wp_title('');
?>
<?php elseif (is_single('')) : ?>
<?php wp_title(''); ?>
<?php
elseif (is_404()) : //404ページ
echo '404';
// bloginfo('name');
endif;
?>
</title>
is_front_page();で、表示されているのがフロントページ(トップ)ならトップページ用のタイトルを出力します。フロントページでなかったら次のelse if条件式に行き、該当すればそのページのタイトルタグが出力されます。
wp_title(”)は管理画面で設定したタイトル部分です。
さらに条件式に該当しなければ、次の、という感じでタイトルタグの中身を出しわけることができます。
<?php elseif (is_○○)?>の○○のところでページごとにいろいろ出し分けできます。
カテゴリページだったらis_category、タクソノミーページだったらis_taxとか。
テンプレで1つ作っておくと制作のとき楽です。
ここまで読んでくださりありがとうございました。
私がフリーランスになったきっかけのスクールはこちら↓
Web制作するならレンタルサーバー使いましょう↓(Webサイト作る予定がある人も必要です)