好きなもの、好きなだけ、盛り合わせ

STINGER5でタイトルタグを自動生成するカスタマイズ。

      2016/03/30

Less is more…

僕の好きな言葉です。シンプルっていいですよね!

STINGER5って最高ですよね!

というわけで、またまたカスタマイズしてみたよ。

 

タイトルタグが自動生成されるんだって!

今回のカスタマイズは、「めんどくさいコードを記述しなくてもタイトルタグが自動生成されるよ」というものです。

(こちらのサイトを参考にしました→http://www.nishi2002.com/12861.html

 

「新しいものが正義」というわけではありませんが、便利なものはどんどん取り入れた方が良いと思うんですよね。

計算機で一つ一つ計算するよりも、エクセルの関数使った方が良いよね?というのと同じです。

 

では、始めましょう。

 

STINGER5のヘッダーにはどんなコードがあるの?

まず、STINGER5では、どのようにタイトルタグが生成されているのでしょうか?

コードを見てみましょう。

header.phpの「meta name」のコードの下にありました。

<title>
<?php
global $page, $paged;
if(is_front_page()):
elseif(is_single()):
wp_title('|',true,'right');
elseif(is_page()):
wp_title('|',true,'right');
elseif(is_archive()):
wp_title('|',true,'right');
elseif(is_search()):
wp_title('|',true,'right');
elseif(is_404()):
echo'404 |';
endif;
bloginfo('name');
if($paged >= 2 || $page >= 2):
echo'-'.sprintf('%sページ',
max($paged,$page));
endif;
?>
</title>

 

投稿記事の時はこれ、固定ページの時はこれと、このコードで条件分岐しているみたいです。

すごく長いですね。

もはや、当たり前のように他のテーマでも使われているみたいです。

 

今回のカスタマイズでは、このコードが全て必要なくなります

やることは2つ。

  1. ヘッダーのタイトルタグを生成するコードを消す
  2. ファンクションにタイトルタグを自動生成するコードを追加する

以上です。はい、簡単ですね。

 

ヘッダーのカスタマイズ

(最新版のワードプレスで実行してね!)

(そして、まずはテスト環境で実行してね!)

 

ワードプレスの管理画面→外観→テーマの編集と進み、header.phpを開きます。

そして、先ほどのタイトルタグを全て削除します。

<?php endif; ?>
<link rel="stylesheet" href="<?php bloginfo('template_directory'); ?>/css/normalize.css">

この2行のコードの間にタイトルタグを生成するコードがありました。

デフォルトでは、削除するとこういう順番になるはずです。

これで、タイトルタグが生成されなくなります。

 

ファンクションのカスタマイズ

※変にカスタマイズすると画面が真っ白になるから注意してね!

 

次に、ファンクションのカスタマイズに取り掛かります。

ワードプレスの管理画面→外観→テーマの編集と進み、function.phpを開きます。

//更新日の追加
function get_mtime($format) {
    $mtime = get_the_modified_time('Ymd');
    $ptime = get_the_time('Ymd');
    if ($ptime > $mtime) {
        return get_the_time($format);
    } elseif ($ptime === $mtime) {
        return null;
    } else {
        return get_the_modified_time($format);
    }
}

//テーマカスタマイザーで編集しない方は削除して下さい(ここから)

デフォルトでは、こういう順番でコードが記述されているはずです。

 

この間にタイトルタグを自動生成してくれる

add_theme_support( 'title-tag' );

のコードを追加します。

//更新日の追加
function get_mtime($format) {
    $mtime = get_the_modified_time('Ymd');
    $ptime = get_the_time('Ymd');
    if ($ptime > $mtime) {
        return get_the_time($format);
    } elseif ($ptime === $mtime) {
        return null;
    } else {
        return get_the_modified_time($format);
    }
}

//タイトルタグの追加
add_theme_support( 'title-tag' );

//テーマカスタマイザーで編集しない方は削除して下さい(ここから)

こういう順番になればOKですね。一応コメント書いてます。

 

すると…

 

stinger5-title-tag-1

 

しっかりタイトルタグを自動生成してくれていますね。

「|」が「ー」になりましたが、全く気にならないので、このままにしています。

多分、「|」のままにする方法もあるはずなので、気になる方は「気になる!」とお知らせください。

頑張って調べてみます。

 - WordPressカスタマイズ

この記事が気に入ったらいいね!しよう

最新情報をお届けします

この記事を書いた人:シェフ

WEBメディア「MORIAWASE」の運営者。求人広告会社の元施設長で、趣味は音楽制作(DTM)。育児に奮闘中です!

閉じる

CLOSE
CLOSE