JoomlaのSEO

Joomlaの技術SEOガイドです。SEF URLと、それを実際に機能させるhtaccess.txtの名前変更、Joomlaのデフォルト重複コンテンツ、拡張によるサイトマップとスキーマ、Joomla 4・5・6で変わった点を扱います。

初回公開:2026年6月27日 · 最終更新:2026年8月20日 · Advanced
言語
このページには証拠シグナルが1件あります

Joomla 5にはSEF URL、記事ごとのメタデータ、ネイティブSchemaプラグイン、強いパフォーマンス基盤がありますが、デフォルト設定には注意が必要です。SEF URLはhtaccess.txtを.htaccessへ名前変更して初めて機能します。それでも古いIDベースURLは残り、複数のカノニカルが出ることがあるため、カノニカル、リダイレクト、拡張で重複コンテンツを修正します。ネイティブXMLサイトマップはないのでOSMap、Aimy Sitemap、Route66、4SEOを使います。Joomla 6もリリース済みで、Joomla 5.xも保守中のため、設定を信頼する前に実際のバージョンを確認してください。

TL;DR — Joomla 5は本当に高機能です。SEF URL、記事ごとのメタデータ、ネイティブSchemaプラグイン、強いCore Web Vitalsの基盤があります。 ただしデフォルトには作業が必要です。SEF URLはhtaccess.txt.htaccessへ名前変更して初めて機能します(Apacheでは最大の見落としです)。 それでも非SEFのID URLは到達可能で、Joomlaは1記事に3つの競合するrel=canonicalタグを出力することがあります。 そのため重複コンテンツは初期状態から存在し、カノニカル、リダイレクト、拡張で修正します。ネイティブXMLサイトマップはありません(OSMap / Aimy Sitemap / Route66 / 4SEOを使います)。 sh404SEFはJoomla 4/5へ移植されませんでした。Route66(無料)または4SEO(有料)を使います。Joomla 5はネイティブスキーマとhreflangを追加し、 Joomla 5.2の自己参照hreflangバグはJoomla 5.3で修正されました。Joomla 6は2025年10月にリリースされ、現在のメジャーです。 Joomla 5.xもセキュリティ/バグ修正を受け続けているため、設定を信頼する前にサイトがどのメジャーを使っているか確認してください。

私の経験

私は自分の経歴を「Drupal、Joomla、WordPress、そして多数の異なるECシステム」に取り組んできたと説明しており、Joomlaとの付き合いも長いです。 2012年にはJoomla Day ChicagoでTechnical SEOについて講演しました。これは読んだだけのCMS紹介ではなく、実際に設定してきたプラットフォームの話です。 私の意見を短く言うと、「JoomlaはSEOに悪い」という神話は誤りです。技術的にはJoomla 5はWordPressに匹敵します。 本当の問題はUX(設定が分散していること)と、いくつかの有害なデフォルトです。

Global Configuration: 重要なSEO設定

System → Global Configuration → Site tab → SEO Settingsからすべてが始まります。

  • Search Engine Friendly URLs → Yes。index.php?option=com_content&view=article&id=2を読みやすいスラッグに変換します。 Googleは長年、ID文字列より読みやすい単語ベースのURLを推奨しており、これが基礎になります。
  • Use URL Rewriting → Yes — ただし下記の.htaccess名前変更後だけです。パスからindex.phpを削除します。
  • Adds Suffix to URL → No(通常)。.htmlを追加します。既存サイトが依存していない限り、クリーンなURLのためオフにします。
  • Unicode Aliases → Noが多くの場合の設定です。生の非ラテン文字より音訳したスラッグがクリーンで、本当に国際的な要件がある場合だけ有効にします。
  • Include Site Name in Page Titles — Before/Afterを選び、サイト名が<title>にどう表示されるかを制御します。

次に、Global Configurationの別の場所で2つ設定します。

  • Server → Force HTTPS → Entire SiteHTTPSをサイト全体に強制します。 Evidence for this claim Joomla provides an Entire Site Force HTTPS configuration option. Scope: Joomla global configuration after HTTPS is functional on the server. Confidence: high · Verified: Joomla: Global configuration help
  • Metadata Settings — グローバルメタディスクリプションを設定し、デフォルトのRobots値が「Index, Follow」であることを確認します。

.htaccessの名前変更 — 最も見落とされる手順

Joomlaはルートディレクトリにhtaccess.txtというファイルを同梱し、名前は.htaccessではありません。 .htaccessへ名前変更するまで「Use URL Rewriting」トグルは何もしません。これはApacheでSEF URLが失敗する最大の原因です。 Global ConfigurationでURL書き換えを有効にする(少なくとも同時)に名前変更してください。そうしないとスイッチを入れた直後にクリーンなURLが壊れます。 Nginxには.htaccessがないため、代わりにサーバー設定へ同等の書き換えルールを追加します。

Joomlaの重複コンテンツ問題

これはJoomlaの初期状態における最大のSEO問題で、正確に理解する価値があります。Joomlaは同じコンテンツに複数のURLを作ります。

  • 非SEF URL/index.php?option=com_content&view=article&id=2)— SEFを有効にしても常に到達可能です。
  • メニュー経由のSEF URLカテゴリ経由のSEF URL — 複数箇所に記事が表示されると同じ記事への別パスになります。
  • wwwと非wwwHTTPとHTTPS末尾スラッシュのバリエーション、任意のURLに付く ?layout=print

JoomlaSEO.comのチェックリストは要点をよくまとめています。“Even when you have SEF links turned on in your Joomla global configuration, the non-SEF URL still exists, meaning 2 URLs with the same content, and often there are more,” (翻訳)「Joomlaのグローバル設定でSEFリンクを有効にしても、非SEF URLは残り、同じコンテンツのURLが2つ、場合によってはそれ以上になります」。 さらに*“Non-SEF URLs are still reachable, despite SEF-URLs being activated, like this: /index.php?option=com_content&view=article&id=2.”* (翻訳)「SEF URLを有効にしても、例示された非SEF URLには引き続き到達できます」と述べます。 JoomUnitedは、“Any duplicate content could have harmful effects on your SEO because search bots cannot determine which version deserves indexing priority.” (翻訳)「検索ボットがどのバージョンを優先してインデックス登録すべきか判断できないため、重複コンテンツはSEOに悪影響を及ぼす可能性があります」と重要性を説明しています。

URLが2つだけとは限りません。同じ記事をカテゴリID、記事ID、クエリパラメーターで開く構成では、 Joomlaがデフォルトで3つの異なるrel="canonical"リンクを出力することがあります。複数のカノニカルは自滅的なシグナルです。 Googleのカノニカル化ガイダンスが明らかにするように、複数を宣言すると無視される傾向があります。公開前に1ページ監査(URL Inspectionまたはクローラー)を実行し、 各ページが1つだけのカノニカルを出力することを確認してください。

修正方法:

  • 記事ごとのCanonical URLフィールド(Publishingタブ → Metadata)を使います。
  • .htaccessで非SEF URLをSEFへ301リダイレクトします。
  • System – SEFプラグインのstrict routing/「strict handling of index.php」(Joomla 4/5)でindex.phpを削除し、古いURLをリダイレクトします。
  • または拡張(4SEO、Route66)にカノニカル追加と非SEF URLの自動リダイレクトを任せます。

基礎概念についてはcanonicalizationcanonical tagを参照してください。

記事ごと・カテゴリごとのメタデータ(そしてUXの落とし穴)

Joomlaでは記事単位でメタデータを設定できますが、フィールドがタブに分散しています。これはJoomlaのコンテンツSEOで最も煩わしい点です。

  • SEO title(Browser Page Title): Edit Article → Optionsタブ。
  • Meta description: Edit Article → Publishingタブ → Metadata。
  • Robots(Index/Follow、NoIndex/NoFollow): Edit Article → Publishingタブ → Metadata。
  • Canonical URL: Edit Article → Publishingタブ → Metadata。

つまりページタイトルは一方のタブ、説明は別のタブにあります。Seobilityのレビューは、Joomlaの標準インターフェースでは “Basic SEO settings are buried” (翻訳)「基本的なSEO設定が埋もれている」ため、“easy to miss.” (翻訳)「見落としやすい」と広い傾向を説明しています。 カテゴリにはEdit Category → Optionsに独自のメタデータがあります。またJoomlaが今も表示するmeta keywordsフィールドは無視してください。 Googleは2009年以降メタキーワードを無視しており、害はないものの価値もありません。

XMLサイトマップ — ネイティブ解決策なし

Joomlaは単独ではXMLサイトマップを生成しません。拡張を導入します。 Evidence for this claim Sitemap generation for Joomla is supplied by extensions rather than the cited core global configuration features. Scope: Joomla Extensions Directory ecosystem; extension compatibility must be checked against the installed Joomla version. Confidence: medium · Verified: Joomla Extensions Directory: Site map

  • OSMap(Weeblr/JoomlaShack)— 最も広く使われ、無料版とPro版があります。
  • Aimy Sitemap — Joomla 3/4/5/6に対応し、設定の自由度が高い拡張です。
  • JSitemap — XML、HTML、画像、動画のサイトマップに対応します。
  • Route664SEO — どちらも広いSEOスイートの中にサイトマップ生成を含みます。

生成したら、robots.txtにSitemap: https://example.com/sitemap.xmlを追加し、 Google Search ConsoleBing Webmaster Toolsへ送信します。

robots.txt — 完全な手動制御

Joomlaは実体のあるrobots.txtをサイトルート(index.phpと同じ階層)に置き、FTPまたはホストのファイルマネージャーで完全に編集できます。 デフォルトでは、クロールさせたくない管理・システムディレクトリである/administrator//api//cache//components/を適切にブロックします。 覚えておくべき普遍的なルールは、robots.txtはクロールを制御し、インデックス登録は制御しないことです。 ページをインデックスから外す目的で使わないでください。

拡張: 使うもの(避けるもの)

  • Route66(Firecoders、無料)— Seobilityは*“as close as you’ll get to a WordPress SEO plugin like YOAST for Joomla.”* (翻訳)「Joomla向けのYOASTのようなWordPress SEOプラグインに最も近いもの」と評しています。 SERPプレビュー、サイトマップ、カノニカル管理、SEOスコアリングがあります。
  • 4SEO(Weeblr、有料)— Weeblrは*“works exactly like a search engine, crawling your site to understand it then adds metadata, structured data, builds a sitemap, replace content, helps your social networks sharing or finds broken links.”* (翻訳)「検索エンジンのようにサイトをクロールして理解し、メタデータや構造化データを追加し、サイトマップを作り、コンテンツを置き換え、ソーシャル共有を助け、リンク切れを見つける」と説明します。 URL管理には4SEFを組み合わせます。
  • **Joomla 4/5ではsh404SEFを使わない。これは移行時の重要な落とし穴です。15年以上Joomlaの主要SEO拡張だった後、Weeblrは移植しないことを選びました。 “After more than 15 years of duty, sh404SEF won’t be ported to Joomla 4. It will not run on Joomla 4.x. To move to Joomla 4, consider newer extensions, including 4SEF to maintain your site SEF URLs and 4SEO for metadata.” (翻訳)「15年以上の役割を終え、sh404SEFはJoomla 4へ移植されない。Joomla 4.xでは動作しない。 Joomla 4へ移行するには、サイトのSEF URLを維持する4SEFやメタデータ用4SEOなど新しい拡張を検討してほしい」)と述べています。 古いサイトでも注意が必要です。Joomlashackは”If you have an existing site that is already using the built in SEF, activating this extension may change all of your URLs.” (翻訳) 「組み込みSEFを使う既存サイトでこの拡張を有効にすると、すべてのURLが変わる可能性がある」と警告しています。 稼働中サイトでURL管理拡張を切り替えるとURLが書き換えられ、受信リンクが壊れる可能性があります。必ずステージングでテストし、先にリダイレクトマップを準備してください。
  • JCH Optimize(パフォーマンス)— CSS/JSを結合してminifyします。

構造化データ

構造化データの扱いはJoomlaのバージョンによります。

  • Joomla 5には、BlogPosting、Event、Product、Organization(さらにBook、Vacancy、Person、Recipe)に対応するネイティブSchemaプラグインがあります。Edit Article → Schemaタブで設定し、拡張は不要です。
  • Joomla 4以前では拡張(Google Structured Data、4SEO、tassos.gr製など)またはテンプレートの<head>への手動JSON-LDが必要です。
  • 手動JSON-LDはバージョンに関係なく機能します。Joomla組み込みのBreadcrumbsモジュールはBreadcrumbListマークアップとも自然に組み合わせられます。

多言語SEOとhreflang

Joomlaには強力な組み込み多言語システムがあります。System → Extensions → Languagesで言語を導入し、 Language Filterプラグインを有効にして「Add alternate meta tags」をオンにすると、hreflangタグを自動生成します。 Language CodeプラグインがBCP47コードを正しく保ちます。各言語にURLプレフィックス(/en//fr//de/)が付きます。

現在は解決済みですが、歴史的な注意点があります。Joomla 5.2では自己参照hreflangタグが欠落していました。 現在のページ自身を指すタグが省略されていたのです(GitHub issue #44297)。 Joomla 5.3で修正され、問題はクローズされました。Joomla 5.3以降(Joomla 6を含む)なら通常は遭遇しませんが、 パッチ未適用の古いJoomla 5.2を監査する場合は、正しいと思い込まずhreflang出力を直接確認してください。

パフォーマンス: Joomlaの静かな強み

JoomlaのCore Web Vitalsの基盤は、多くの人が思うより優れています。 SeobilityはデフォルトのCassiopeiaテンプレートが最適化を「まったく何も」しない状態で*“scored 93/100 on PageSpeed Insights with ‘absolutely nothing’ done for optimization,”* (翻訳)「最適化をまったく何もしていないのにPageSpeed Insightsで93/100」と報告し、 “Joomla 5 is even better, with great performance and many SEO features built in.” (翻訳)「Joomla 5はさらに優れ、性能が高く多くのSEO機能が組み込まれている」と結論づけました。 Global Configuration → ServerでGzip Page CompressionCacheを有効にし、さらにJCH Optimize、画像圧縮、CDNを追加します。 JoomlaにはWordPressにありがちなプラグインスタック(SEO、キャッシュ、セキュリティを別々に導入)がないため、素のJoomlaは素のWordPressより高速なことが多く、 これはCore Web Vitalsに関係します。

SEOにおけるJoomla 3と4と5と6

  • Joomla 3(2023年12月にEOL): 基本的なSEF URL以外はほぼすべて拡張が必要で、sh404SEFが主要な解決策でした。
  • Joomla 4(2021年8月): 管理画面が整理されSEFルーティングが改善しましたが、sh404SEFは放棄され、Route66/4SEOが代替になりました。
  • Joomla 5(2023年10月): ネイティブSchemaプラグイン、約300文字の拡張メタディスクリプション、末尾スラッシュ制御、System – SEFプラグインの厳格なindex.php処理、AVIF対応、Organization/Websiteスキーマ、より良いパフォーマンス基盤があります。
  • Joomla 6(2025年10月、現在はJoomla 6.1.x系列): 現行のメジャーバージョンです。Joomla 5のSEO機能を引き継いでいます。5と6のSEO固有設定の変更を示す一次資料は見つけていないため、 実際のインストールで確認するまでは上記のGlobal Configurationパスが6でも正しいと扱ってください。Joomla 5.xもセキュリティ/バグ修正のサポートを並行して受けているため、稼働中サイトには5のものもまだ多くあります。

Joomlaサイトを監査する最初の3つの質問は、どのメジャーバージョンか(テーマから推測せず、管理画面のフッターまたはSystem InformationでJoomla自身のバージョン番号を確認)、 SEF URLが実際に機能しているか(.htaccessの名前変更を確認)、非SEFの重複URLが処理されているか、です。ここを押さえればJoomlaは正しく動きます。

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.