WordPress
こんにちは、Anejo(アネホ)です。

ブログはけっこう長く書いてるんですが、あまりレイアウトに凝らないので、「CSS って何?」とか、「はぁ?PHP ってなんだよ?」みたいなド素人のままで過ごして来ちゃいました。

でも、いくつもブログを運営してる中で、「同じ様なレイアウトはさすがにマズイだろ~」と思い、違ったものにするんですが、CSS や php がわからないまでも、「こんな時はこうしろ!」みたいな情報が必ずしも手に入るとは限りません。

そこで備忘録としてこのサイトに残していこうと思います。

※ この記事があなたにも役立ってくれたら幸いです。


何のタイトルを非表示にしたい?

brog

よくあるのが、「トップページだけはタイトル表示したくない」といった要望ですが、他にも色々要望が出てくると思います。

そこで、いくつかのシチュエーション別にやり方を書いていこうと思います。

※ この記事は賢威 7.0 の場合で書いてます。

 

php ファイルで思いのままに非表示化する

プラグインでも非表示化出来るんですが、他のサイトでは Elementer というプラグインで複雑なレイアウトにしてると、プラグインでは対応不可能でした。

なので、この記事では、どんな状況でも対応出来る、php ファイルを直接いじる方法で対応することにします。

 

php ファイル編集画面に行く

WordPress_テーマ編集_002

ダッシュボード → 外観 → テーマの編集 → page.php の流れで、php ファイル編集画面に行ってください。

WordPress_テーマ編集_004

次に、ファイル内をクリックしてカーソルをファイル内に表示させます。

その状態で『Ctrl+F』を押すと、『Search』ボックスが表示されます。

WordPress_テーマ編集_006

『Search』ボックスに『article-header』と打ち込み、エンターキーを押します。

すると、『article-header』と書かれた行が表示されます。
(上の画像では 34 行目ですね)

これで準備完了です。

あとは下の各シチュエーションに合わせた『改造』をすると良いです。

 

トップページだけタイトルを非表示にする

賢威 7.0だと、下のような形になっていると思います。

<header class=”article-header”>
<?php if (is_front_page()) { ?>
<h2 class=”section-title”><?php echo esc_attr(get_the_title(get_the_ID())); ?></h2>
<?php } else { ?>
<h1 class=”section-title”><?php h1_keni(); ?></h1>
<?php } ?>
</header>

青字の部分は、「フロントページ(トップページ)だったらどーする?」と聞いてます。
そして赤字の部分は、「タイトルの見出しを h2 で表示する」と言ってます。

タイトルを表示したくないので、赤字の部分を消しちゃう、もしくは『<!–』と『–>』で挟んじゃうといいです。

つまり、

<h2 class=”section-title”><?php echo esc_attr(get_the_title(get_the_ID())); ?></h2>

↓ ↓ ↓ ↓

<!–<h2 class=”section-title”><?php echo esc_attr(get_the_title(get_the_ID())); ?></h2>–>

に置き換えればよいというわけです。

 

固定ページだけタイトルを非表示にする

賢威 7.0だと、下のような形になっていると思います。

<header class=”article-header”>
<?php if (is_front_page()) { ?>
<h2 class=”section-title”><?php echo esc_attr(get_the_title(get_the_ID())); ?></h2>
<?php } else { ?>
<h1 class=”section-title”><?php h1_keni(); ?></h1>
<?php } ?>
</header>

青字の部分は、「フロントページ(トップページ)だったらどーする?」と聞いてます。
そして赤字の部分は、「タイトルの見出しを h2 で表示する」と言ってます。

フロントページだけじゃなく、固定ページ全てのタイトルを表示したくないので、青色の部分をこのように直します。

<?php if (is_front_page()) { ?>

↓ ↓ ↓ ↓

<?php if (is_page()) { ?>

※ 固定ページは『page』という表示なんです。

そして、赤字の部分を消しちゃう、もしくは『<!–』と『–>』で挟んじゃうといいです。

つまり、

<h2 class=”section-title”><?php echo esc_attr(get_the_title(get_the_ID())); ?></h2>

↓ ↓ ↓ ↓

<!–<h2 class=”section-title”><?php echo esc_attr(get_the_title(get_the_ID())); ?></h2>–>

に置き換えればよいというわけです。

 

投稿ページだけタイトルを非表示にする

賢威 7.0だと、下のような形になっていると思います。

<header class=”article-header”>
<?php if (is_front_page()) { ?>
<h2 class=”section-title”><?php echo esc_attr(get_the_title(get_the_ID())); ?></h2>
<?php } else { ?>
<h1 class=”section-title”><?php h1_keni(); ?></h1>
<?php } ?>
</header>

青字の部分は、「フロントページ(トップページ)だったらどーする?」と聞いてます。
そして赤字の部分は、「タイトルの見出しを h2 で表示する」と言ってます。

フロントページではなく、投稿ページ全てのタイトルを表示したくないので、青色の部分をこのように直します。

<?php if (is_front_page()) { ?>

↓ ↓ ↓ ↓

<?php if (is_single()) { ?>

※ 投稿ページは『single』という表示なんです。

そして、赤字の部分を消しちゃう、もしくは『<!–』と『–>』で挟んじゃうといいです。

つまり、

<h2 class=”section-title”><?php echo esc_attr(get_the_title(get_the_ID())); ?></h2>

↓ ↓ ↓ ↓

<!–<h2 class=”section-title”><?php echo esc_attr(get_the_title(get_the_ID())); ?></h2>–>

に置き換えればよいというわけです。

 

固定ページと投稿ページの両方をタイトル非表示にする

賢威 7.0だと、下のような形になっていると思います。

<header class=”article-header”>
<?php if (is_front_page()) { ?>
<h2 class=”section-title”><?php echo esc_attr(get_the_title(get_the_ID())); ?></h2>
<?php } else { ?>
<h1 class=”section-title”><?php h1_keni(); ?></h1>
<?php } ?>
</header>

青字の部分は、「フロントページ(トップページ)だったらどーする?」と聞いてます。
そして赤字の部分は、「タイトルの見出しを h2 で表示する」と言ってます。

フロントページではなく、固定ページと投稿ページのタイトルを表示したくないので、青色の部分をこのように直します。

<?php if (is_front_page()) { ?>

↓ ↓ ↓ ↓

<?php if (is_singular()) { ?>

※ 投稿ページや固定ページは『singular』という表示なんです。

そして、赤字の部分を消しちゃう、もしくは『<!–』と『–>』で挟んじゃうといいです。

つまり、

<h2 class=”section-title”><?php echo esc_attr(get_the_title(get_the_ID())); ?></h2>

↓ ↓ ↓ ↓

<!–<h2 class=”section-title”><?php echo esc_attr(get_the_title(get_the_ID())); ?></h2>–>

に置き換えればよいというわけです。

 

特定の固定ページだけタイトルを非表示にする

賢威 7.0だと、下のような形になっていると思います。

<header class=”article-header”>
<?php if (is_front_page()) { ?>
<h2 class=”section-title”><?php echo esc_attr(get_the_title(get_the_ID())); ?></h2>
<?php } else { ?>
<h1 class=”section-title”><?php h1_keni(); ?></h1>
<?php } ?>
</header>

青字の部分は、「フロントページ(トップページ)だったらどーする?」と聞いてます。
そして赤字の部分は、「タイトルの見出しを h2 で表示する」と言ってます。

フロントページではなく、例えば特定の固定ページ(例:ページ ID = 3250)のタイトルを表示したくないので、青色の部分をこのように直します。

<?php if (is_front_page()) { ?>

↓ ↓ ↓ ↓

<?php if (is_page(‘3250’)) { ?>

※ ページ ID を『 ‘ ’ 』で挟むと特定出来るというわけ。
ページ ID は、こうやって確認しよう!

そして、赤字の部分を消しちゃう、もしくは『<!–』と『–>』で挟んじゃうといいです。

つまり、

<h2 class=”section-title”><?php echo esc_attr(get_the_title(get_the_ID())); ?></h2>

↓ ↓ ↓ ↓

<!–<h2 class=”section-title”><?php echo esc_attr(get_the_title(get_the_ID())); ?></h2>–>

に置き換えればよいというわけです。

 

複数の固定ページだけタイトルを非表示にする

賢威 7.0だと、下のような形になっていると思います。

<header class=”article-header”>
<?php if (is_front_page()) { ?>
<h2 class=”section-title”><?php echo esc_attr(get_the_title(get_the_ID())); ?></h2>
<?php } else { ?>
<h1 class=”section-title”><?php h1_keni(); ?></h1>
<?php } ?>
</header>

青字の部分は、「フロントページ(トップページ)だったらどーする?」と聞いてます。
そして赤字の部分は、「タイトルの見出しを h2 で表示する」と言ってます。

フロントページではなく、例えば 3つの固定ページ(例:ページ ID = 3250, 3325, 3540)のタイトルを表示したくない場合、青色の部分をこのように直します。

<?php if (is_front_page()) { ?>

↓ ↓ ↓ ↓

<?php if (is_page( array(‘3250′,’3325′,’3540’) ) ) { ?>

※ ページ ID を入れるところに『array()』を入れると、複数個 特定出来るというわけ。
ページ ID は、こうやって確認しよう!

なお、難しいことが嫌な人は、単純にこうやって縦に並べてもいいです。

<?php if (is_page(‘3250’)) { ?>
<?php if (is_page(‘3325’)) { ?>
<?php if (is_page(‘3540’)) { ?>

そして、赤字の部分を消しちゃう、もしくは『<!–』と『–>』で挟んじゃうといいです。

つまり、

<h2 class=”section-title”><?php echo esc_attr(get_the_title(get_the_ID())); ?></h2>

↓ ↓ ↓ ↓

<!–<h2 class=”section-title”><?php echo esc_attr(get_the_title(get_the_ID())); ?></h2>–>

に置き換えればよいというわけです。

 


まとめ

今回の方法は『条件分岐』というワザ(?)で、そのキーワードでググればヒットしてきますが、単純に『タイトル非表示』だとプラグインなどの簡単な方法がヒットしてきて、この『条件分岐』を見つけるのに時間がかかりました。

タイトルを非表示にしたい時、いくつかプラグインを試したものの、それらでは対応出来ない場合には、今回のような方法が使えれば対応出来ます。

 


もしよろしかったらコメントもお寄せください、今後の記事執筆に活かしていきたいと思います!


この記事の内容が役に立ったと思ったら、記事をソーシャルメディアで共有していただけると嬉しいです。