質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

2回答

3777閲覧

WordPress title 内にスペース(空白)ができてしまう

future

総合スコア62

WordPress

WordPressは、PHPで開発されているオープンソースのブログソフトウェアです。データベース管理システムにはMySQLを用いています。フリーのブログソフトウェアの中では最も人気が高く、PHPとHTMLを使って簡単にテンプレートをカスタマイズすることができます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2016/10/28 00:14

header.php内にタイトルを表示するコードを下記のように書いています。

lang

1<title> 2 <?php if ( is_home() ): ?> 3 <?php bloginfo( 'name' ); ?> 4 <?php elseif ( is_page() ): ?> 5 <?php wp_title( '' ); ?> | <?php bloginfo( 'name' ); ?> 6 <?php endif; ?> 7</title>

処理自体に問題はないのですが、ページを開いてソースを確認すると、
テキストの前後に無駄なスペース(空白)が出来てしまっています。

lang

1<title> 2 〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇〇 </title>

これは仕様上仕方ないのでしょうか?
それともPHPの関数などで空白を取り除くしかないでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ソースを見たときの見た目が気になるならPHPで出力すればよいです。

PHP

1<?php 2 echo '<title>'; 3 if ( is_home() ): 4 bloginfo( 'name' ); 5 elseif ( is_page() ): 6 wp_title( '' ); 7 echo ' | '; 8 bloginfo( 'name' ); 9 endif; 10 echo '</title>'; 11 ?>

ただ、WordPressのコードとしては下記の方が良いと思います

PHP

1<?php 2 echo '<title>'; 3 if ( !is_home() ): // home以外にはタイトル、という形にしないとページタイトルが無いページが出来る 4 wp_title( '' ); 5 echo ' | '; 6 endif; 7 bloginfo( 'name' ); 8 echo '</title>'; 9 ?>

さらに、wp_title() は WordPress 4.4 で一度非推奨になりました。今は「非推奨」の文言は外れていると思いますが、なくなる方向に向いていることには変わりありません。

【WordPress 4.1から title 要素の作り方が変わるという話 | バシャログ。】
http://bashalog.c-brains.jp/14/12/09-100000.php

【WordPress 4.4 から wp_title関数が 非推奨になりました – ねんでぶろぐ】
http://nendeb.com/313

投稿2016/10/28 03:40

kei344

総合スコア69364

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

結論から言いますと、タグ内の空白スペースはブラウザによって消去されます。
ゆえに、わざわざ取らなく手もOKです。

これはW3Cという機関の定めるHTMLの仕様において、
「タグに含まれる空白スペースは原則無視される」
ということになっているからです。

生成されるタグに空白が入っていて気持ち悪い、と感じるかもしれませんが
ブラウザの仕様上無視されるので、動的タグ内置換を行うツール
(ここではPHP)でも厳密に取り去ることをしていません。

逆に、明示的に空白を置きたい場合、文字コード指定などで置きます。
たとえば、半角スペースの一例ですが、

(ノンブレークスペース)と、書いたり。

投稿2016/10/28 00:53

akio221

総合スコア716

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

future

2016/10/28 02:57

ご回答ありがとうございます。 詳しいご説明ありがとうございます。 SEO的に気にする必要はないとの解釈で良いのでしょうか?
akio221

2016/10/28 04:09

>SEO的に気にする必要はないとの解釈で良いのでしょうか? SEOもある程度は、HTMLの仕様を踏まえて解析しているはずです。 ただ、「繋がって○○いる○○文字列」なんてのはダメでしょうけども・・。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問