この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:6
ページ更新者:guest
更新日時:2026-06-11 07:07:02

タイトル: title要素
SEOタイトル: HTML title 要素完全ガイド (SEO 観点)

この記事の要点
  • </code></strong> は <code><head></code> 内に必須で 1 個のみ</li><li><strong>ブラウザタブ表示</strong> / <strong>ブックマーク名</strong> / <strong>検索結果のリンクテキスト</strong>に使われる</li><li><strong>SEO で最も重要なタグの 1 つ</strong>。推奨長は 50-60 字 (日本語は 30 字前後)</li><li>OGP <code>og:title</code> は SNS シェア用、<code>meta description</code> はスニペット用 → 役割が違う</li><li>SPA では JS で <code>document.title = "..."</code> や Vue Router / Next.js Head で動的に</li></ul></td></tr></table> <h2>title 要素とは</h2> <p><code><title></code> は HTML 文書のタイトルを表すメタデータ要素。ブラウザのタブ、履歴、ブックマーク、そして<strong>検索エンジンの結果ページ</strong>で見出しとして使われます。</p> <pre style="background:#1e293b;color:#e2e8f0;padding:1em;border-radius:6px;overflow-x:auto;line-height:1.5"><code class="language-html"><!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>CSS セレクタ完全ガイド | サンプルサイト ...

    仕様上のルール

    項目仕様
    配置場所
    個数1 ドキュメント 1 個 (必須)
    子要素テキストのみ (タグは入れられない)
    属性グローバル属性のみ (lang, dir 等)
    文字数仕様上の上限なし。実用上は SEO 観点で 50-60 字 (英) / 28-32 字 (和)
    HTML 仕様HTML 4.01 以降必須要素

    SEO 観点での書き方

    • 主要キーワードを前方に: 「セレクタ完全ガイド | サイト名」のように冒頭にトピック
    • サイト名はパイプ | や ハイフン - で区切る: 「ページタイトル | サイト名」
    • ページごとに固有: 全ページ同じタイトルは SEO 大幅減点
    • 30 字前後 (日本語): Google 検索結果での表示が切れない
    • クリック誘導語を含める: 「完全ガイド」「2026 年版」「徹底比較」
    • タイトル詐欺 NG: 中身と無関係なキーワード羅列はペナルティ

    title と description / OGP の役割分担

    タグ用途推奨長
    </code></td><td>タブ / 検索結果リンクテキスト</td><td>28-32 字 (和)</td></tr> <tr><td><code><meta name="description"></code></td><td>検索結果のスニペット (本文要約)</td><td>120 字前後</td></tr> <tr><td><code><meta property="og:title"></code></td><td>SNS シェア時 (Twitter/Facebook)</td><td>40 字程度</td></tr> <tr><td><code><meta property="og:description"></code></td><td>SNS シェア時の説明</td><td>80 字程度</td></tr> <tr><td><code><h1></code></td><td>本文中の見出し</td><td>title と同じか短く</td></tr> </tbody> </table> <pre style="background:#1e293b;color:#e2e8f0;padding:1em;border-radius:6px;overflow-x:auto;line-height:1.5"><code class="language-html"><head> <title>CSS セレクタ完全ガイド | MyWiki

    JavaScript で動的にタイトル変更

    // 単純な書き換え
    document.title = '新しいタイトル';
    
    // 未読件数を表示
    let unread = 5;
    document.title = `(${unread}) Inbox | MyApp`;
    
    // 可視性に応じた切替
    document.addEventListener('visibilitychange', () => {
      if (document.hidden) {
        document.title = '★ 戻ってきてね | MyApp';
      } else {
        document.title = 'MyApp';
      }
    });

    SPA でのタイトル管理

    Vue Router

    const routes = [
      { path: '/', component: Home, meta: { title: 'ホーム | MyApp' } },
      { path: '/about', component: About, meta: { title: 'About | MyApp' } },
    ];
    
    router.afterEach((to) => {
      if (to.meta.title) document.title = to.meta.title;
    });

    Next.js (App Router)

    // app/page.tsx
    export const metadata = {
      title: 'ホーム | MyApp',
      description: '...',
    };
    
    // 動的タイトル
    // app/posts/[id]/page.tsx
    export async function generateMetadata({ params }) {
      const post = await fetchPost(params.id);
      return { title: `${post.title} | MyApp` };
    }
    
    // テンプレート (子から見て共通の接尾辞)
    // app/layout.tsx
    export const metadata = {
      title: { default: 'MyApp', template: '%s | MyApp' }
    };

    React (react-helmet-async)

    import { Helmet } from 'react-helmet-async';
    
    function Page() {
      return (
        <>
          
            記事ページ | MyApp
            
          
          ...
        
      );
    }

    多言語サイトでの title

    
    
    
      CSS セレクタ完全ガイド | MyWiki
      
      
    
    
    
    
    
      Complete CSS Selectors Guide | MyWiki
      ...
    

    絵文字や記号を入れるべきか

    検索結果で目立つので CTR が上がるという報告もありますが、ジャンルを選びます:

    • ○ 通販・キャンペーン: 「【セール中】iPhone 15 Pro 最安値 ⭐」
    • × 法人・士業・医療: 信頼性を損なうので避ける
    • Google の表示制御: 絵文字が黒丸 (●) に置換されたり消されるケースあり

    よくあるミス

    ミス影響対処
    全ページ同じタイトルSEO 大幅減点ページごとに固有に
    「無題ドキュメント」CMS デフォルトのまま放置必ず編集
    キーワード羅列スパム判定自然な文に
    長すぎる (60 字超)後ろが「...」で切れる30 字前後に
    SPA でタイトル未更新全ページ同じ扱いルーター連動
    JS 描画 = Googlebot に届かないクロール時 title 空SSR or プリレンダリング

    確認方法

    # curl で title を取得
    curl -s https://example.com | grep -oP '[^<]+'
    
    # Google Search Console
    # → URL検査 → ライブテスト → レンダリング後の HTML で title を確認
    
    # ブラウザ DevTools
    # → Console: document.title</code></pre>
    <h2>FAQ</h2>
    
    <p><strong>Q: Google が勝手にタイトルを書き換える</strong><br />
    A: 2021 年から Google は <code>title</code> を h1 やリンクテキストに書き換えることがあります。書き換えを減らすには「ページ内容と一致した簡潔なタイトル」が有効。</p>
    
    <p><strong>Q: title と h1 は同じにすべき?</strong><br />
    A: 完全一致は冗長。title はサイト名込み「記事タイトル | サイト名」、h1 は記事本文の見出し、と役割分担するのが定石。</p>
    
    <p><strong>Q: title 内に HTML タグは書ける?</strong><br />
    A: 仕様上 NG。書いてもリテラル表示になります。実体参照 (<code>&</code> 等) は使えます。</p>        </div>
        </div>
    </div>
    
                    </div>
                </div>
                <div id="footer"><div class="move-top"></div>
    <div class="move-bottom"></div>
    
    <!-- フッタ開始 -->
    <footer id="footer">
        <div class="footer-inner">
            <div class="footer-grid">
                <div class="footer-col">
                    <h4 class="footer-heading">CWiki</h4>
                    <a href="https://jpn.itlibra.com">CWiki</a>
                    <a href="https://jpn.itlibra.com/help">ヘルプ</a>
                    <a href="https://jpn.itlibra.com/inquiry/post/form">問い合わせ</a>
                </div>
                <div class="footer-col">
                    <h4 class="footer-heading">Legal</h4>
                    <a href="https://jpn.itlibra.com/termsOfService">利用規約</a>
                    <a href="https://jpn.itlibra.com/privacyPolicy">プライバシーポリシー</a>
                </div>
                <div class="footer-col">
                    <h4 class="footer-heading">Feed</h4>
                    <a href="https://jpn.itlibra.com/sitemap/sitemap-index.xml">サイトマップ</a>
                    <a href="https://jpn.itlibra.com/feed/articles">ページのフィード</a>
                    <a href="https://jpn.itlibra.com/feed/boards">掲示板のフィード</a>
                </div>
                <div class="footer-col">
                    <h4 class="footer-heading">Account</h4>
                                        <a href="https://jpn.itlibra.com/login">ログイン</a>
                                </div>
            </div>
            <div class="footer-bottom">
                <span>© 2017 Libra</span>
            </div>
        </div>
    </footer>
    <span id="page-bottom"></span>
    </div>
            </div>
            <!-- Scripts -->
    <!-- 表示速度とSEOの観点からbodyタグの一番下に記載する -->
    <!--<script src="https://jpn.itlibra.com/js/app.js" async></script>-->
    <script src="https://jpn.itlibra.com/js/common.js" async></script>
    <script src="https://jpn.itlibra.com/js/scroll.js" async></script>
    <script src="https://jpn.itlibra.com/js/jquery.sidebar.min.js"></script>
            <span></span>
    
    <!-- ローディング -->
    <div id="loading">
        <div class="cv-spinner">
            <span class="spinner"></span>
        </div>
    </div>
        </body>
    </html>