PrestaShopのSEO
PrestaShopでSEOがどのように機能するかを解説します。必須のIDトークンを含むフレンドリーURL、設定可能なcanonicalリダイレクト、制限のある標準sitemapとrobots.txt生成機能、標準のhreflangやスキーマがないこと、不足を補うモジュールのエコシステムを扱います。
言語
PrestaShopは自分でホスティングするオープンソース(PHP/MySQL)のECで、深い制御が得られる一方、ホスティング型の競合より多くの設定が必要です。オブジェクトごとのメタタグ、フレンドリーURL(mod_rewriteが必要)、設定可能な301のcanonicalリダイレクト、ページごとのH1を1つ、無効な商品のリダイレクト設定、robots.txt生成機能など、標準で正しく行うことも多くあります。注意点は、数値の{id}トークンがURLルートで必須(モジュールまたはルート上書きでのみ削除可能)、標準sitemapが自動更新されず多言語/画像のカバレッジが弱いこと、標準のhreflangや包括的なスキーマがないことです。ファセットナビゲーション、並べ替え、フィルターURLも自動でcanonical化されません。不足の多くはサードパーティーモジュールで補えます。重いデフォルトテーマのCore Web Vitalsは、組み込みCCC(Concatenate, Compress, Cache)で改善されます。
Evidence for this claim PrestaShop provides configurable friendly URLs, canonical redirects, and route patterns in its traffic and SEO settings. Scope: PrestaShop 8 administration; modules and version differences can change behavior. Confidence: high · Verified: PrestaShop 8: SEO and URLs Evidence for this claim Google treats canonical declarations as signals and recommends consistent canonicalization for duplicate URLs. Scope: Google canonicalization behavior applied to ecommerce URL variants. Confidence: high · Verified: Google Search Central: CanonicalizationTL;DR — PrestaShopは自分のホスティングにインストールする無料のオープンソースのストアプラットフォームです(ShopifyやBigCommerceのようにホスティングを任せるサービスとは異なります)。編集可能なページタイトルと説明、クリーンな「フレンドリー」URL、自動canonicalタグ、robots.txt生成機能など、SEOの基本は備えていますが、複数言語向けのhreflang、リッチなschema、フィルターページの整理など重要な部分には追加モジュールが必要です。
「PrestaShop SEO」とは
PrestaShopはPHPで構築されたオープンソースのECプラットフォームです。ShopifyやBigCommerceとの大きな違いは、あなた自身がホスティングすることです。自分のサーバーに設置し、更新、セキュリティ、パフォーマンスに責任を持ちます。その分、自由度は高い一方で、SEO設定の多くも自分で行う必要があります。
「PrestaShop SEO」とは、商品やカテゴリを見つけてもらい、クロール、インデックス登録、ランキングにつなげるという通常のSEOを、PrestaShopで動くストアに適用することです。PrestaShopにはURLに数字を入れるなど固有のデフォルト設定があるため、専用ガイドとして扱う価値があります。
PrestaShopが標準で行ってくれること
- メタタグ。 管理画面(Shop Parameters → Traffic & SEO)から、すべての商品、カテゴリ、コンテンツページのページタイトルとメタディスクリプションを編集できます。
- フレンドリーURL。
product.php?id_product=27の代わりに、商品名を含む読みやすいURLになります。設定で有効にします(サーバーでmod_rewriteを有効にする必要があります)。 - canonicalタグ。 PrestaShopは商品ページのどのバージョンが「メイン」かをGoogleに自動的に伝え、重複URLを301リダイレクトできます。
- 重要なページのパンくずと、ページごとのH1を1つ。
- robots.txt生成機能と組み込みのsitemapモジュール。
自分で対応しなければならないこと
- URL内の数字。 デフォルトのPrestaShop URLは
/27-product-nameのようになり、この数字は必須で設定から削除できません。削除にはモジュールが必要です。 - フィルターページ。 購入者が色やサイズで絞り込むと、組み合わせごとに新しいURLが作られます。そのままでは、ほぼ重複するページでGoogleを圧迫します。PrestaShopはこれを自動整理しません。
- 複数言語。 PrestaShopは多言語に対応していますが、どの言語版を表示するかをGoogleに伝えるタグ(hreflang)は自動追加されません。モジュールが必要です。
- リッチ検索結果。 星評価、FAQスニペット、完全な商品スキーマの多くはコアではなくモジュールから提供されます。
多くの人が誤解する点
「フレンドリーURL」を有効にすれば重複コンテンツが解決すると考える人がいますが、そうではありません。フレンドリーURLはアドレスを読みやすくするだけで、フィルター、並べ替え、ページネーションによる重複は解決しません。canonicalリダイレクトを設定し、robots.txtをカスタマイズする必要があります。
実務家向けの内容、つまり必須の{id} URLトークン、商品バリエーションのcanonical動作、sitemapとrobots.txtの詳細、hreflangの不足については、Advancedタブに切り替えてください。
Evidence for this claim PrestaShop provides configurable friendly URLs, canonical redirects, and route patterns in its traffic and SEO settings. Scope: PrestaShop 8 administration; modules and version differences can change behavior. Confidence: high · Verified: PrestaShop 8: SEO and URLs Evidence for this claim Google treats canonical declarations as signals and recommends consistent canonicalization for duplicate URLs. Scope: Google canonicalization behavior applied to ecommerce URL variants. Confidence: high · Verified: Google Search Central: CanonicalizationTL;DR — PrestaShopはセルフホスティングのオープンソースECなので、ホスティング作業と引き換えに深い制御が得られます。標準の強みは、オブジェクトごとのメタタグ、フレンドリーURL(
mod_rewriteが必要)、設定可能な301/302のcanonicalリダイレクト、商品組み合わせの親URLcanonical化、ページごとのH1を1つ、無効な商品のリダイレクト設定、robots.txt生成機能です。注意すべきデフォルトは、URLルートで{id}トークンが必須(モジュールまたはルート上書きでのみ削除可能)、標準sitemapが自動更新されず、多言語とCDN画像のカバレッジが弱いこと、そして多言語、構造化データ、フィルターURLの挙動はインストール済みのバージョン、テーマ、モジュールに照らして確認すべきことです。重いデフォルトテーマのパフォーマンスは、組み込みのCCC(Concatenate, Compress, Cache)で改善できます。
深い制御と増える設定
PrestaShop SEOのコンテンツの多くは、一般的なチェックリストか有料モジュールの売り込みです。役に立つ捉え方はこうです。PrestaShopは、ホスティング型SaaSプラットフォームよりも、生の制御力を大きく与えます。オープンソース、サーバーアクセス、編集可能なルートテンプレートがある一方、完成した状態で出荷される機能は少ないため、不足する部分は具体的で予測できます。 すべてを2つのバケットに分ければ、プラットフォームは謎ではなくなります。
ここで、まずバージョンについて1点。2026年半ばの時点で、PrestaShopは2つのメジャーブランチを同時にアクティブ運用しています。9.x(2026年6月時点で9.1.4)と、独自の更新を並行して提供しているv8.2.x LTSブランチ(同じく2026年6月時点で8.2.7)です。以下で説明するSEO設定は、PrestaShopのv9 SEO & URLsドキュメントで直接確認した限り、v8とv9で変わっていません。ただし、あるブランチ向けに構築・テストされたモジュールが別ブランチで動作する保証はありません。インストール前にモジュールの対応バージョンを確認し、まず自分のストアのコアバージョンを確認してください。各モジュールベンダーの「compatible with」表示が参照する番号です。
デフォルトで整っているもの: オブジェクトごとのメタタイトル/説明、フレンドリーURL、設定可能なリダイレクト付きcanonicalタグ、商品組み合わせの親URLcanonical化、ページごとのH1を1つ、パンくず、無効な商品のリダイレクト設定、robots.txt生成機能、標準sitemapモジュール。
自分で行うこと(主にモジュール経由): IDなしURL、多言語/マルチショップ向けhreflang、包括的なProduct/Breadcrumb/Organization/FAQスキーマ、ファセットナビゲーションのcanonical/noindex、自動更新する多言語画像sitemap、デフォルトテーマでのCore Web Vitals。
URL構造
URL設定はShop Parameters → Traffic & SEOにあります。「Friendly URLs」を有効にすると、product.php?id_product=27は/2-music-players/27-ipod-nano-greenのような説明的なスラッグに変わります。Apacheのmod_rewrite(またはNginx相当)が必要で、必要ならURLにアクセント付き文字を残せます。
理解すべきなのはデフォルトのルートスキーマです。PrestaShopの商品ルートは{category:/}{id}{-:id_product_attribute}-{rewrite}{-:ean13}.htmlで、他のタイプも同じパターンに従います。
| ページタイプ | デフォルトルート |
|---|---|
| 商品 | {category:/}{id}{-:id_product_attribute}-{rewrite}{-:ean13}.html |
| カテゴリ | {id}-{rewrite} |
| CMSページ | content/{id}-{rewrite} |
| サプライヤー | supplier/{id}-{rewrite} |
| ブランド | brand/{id}-{rewrite} |
{id}トークンは必須です。 すべてのデフォルトルートに含まれるのは、PrestaShopがそのIDでデータベースからオブジェクトを検索するためです。スラッグ({rewrite})は装飾にすぎません。これはPrestaShop URLで最も誤解されている点です。設定から数字を取り除くことはできません。きれいに削除するには、IDを取り除き301リダイレクトを維持するサードパーティーモジュール(FME Pretty URL、SunnyToo、MyPresta)か、誤るとコア機能を壊しうる慎重なルートテンプレート上書きが必要です。Empirical EdgeがPrestaShopは「PrestaShop generates URLs that contain unwanted numbers and special characters, making it non-SEO-friendly. A long, complex URL decreases the possibility of higher ranking in the search results.」 (翻訳)「不要な数字や特殊文字を含むURLを生成するため、SEOに適していません。長く複雑なURLは検索結果で上位にランクされる可能性を下げます。」と指摘するのは正確ですが、IDには実際の目的があります。バグではなく、検索キーなのです。
知っておく価値のあるルートの詳細が2つあります。{category:/}トークンはデフォルトで商品のカテゴリを商品URLに挿入します(商品が複数カテゴリに属する場合の重複コンテンツ上の考慮事項です)。また、{-:ean13}はURLにEANを追加できます。v 1.7.5.1以降は「Display attributes in the product meta title」を有効にして、「Product Name Color Size」のようなタイトルを自動生成することもできます。
canonicalタグ
PrestaShopはcanonicalタグを自動生成し、Traffic & SEOの下でcanonicalへのリダイレクト設定を提供します。選択肢はリダイレクトなし、301(恒久)、302(一時)の3つです。安定した本番設定には301を使ってください。PrestaShopが生成しがちな重複URLのバリエーションを統合できます。
標準の挙動が特に優れている場所が1つあります。それは商品組み合わせです。バリエーションURL(色、サイズ、ルートの{-:id_product_attribute}部分)では、canonicalが親商品のURLを指し、URL内の属性IDが無効ならそのcanonical親URLへリダイレクトされます。そのため、サイズや色の組み合わせがデフォルトで何百ものインデックス可能な重複に分裂することはありません。
標準canonicalがカバーしないのは、フィルターパラメーター、並べ替えパラメーター、ページネーションされたカテゴリページです。PrestaShopは?order=price_ascやファセット付きの?color=red&size=M URLを、クリーンなカテゴリURLへcanonical化しません。PrestaHeroの言葉を借りれば、“Implementing canonical tags is one of the most important practices for enabling friendly URLs on PrestaShop, as these HTML tags inform search engines of the ‘master’ version of a page when duplicate or similar content exists.” (翻訳)「PrestaShopでフレンドリーURLを有効にするにはcanonicalタグの実装が最も重要な実践の1つです。重複または類似するコンテンツが存在する場合、これらのHTMLタグが検索エンジンにページの『マスター』版を知らせるためです。」ものであり、フィルターページではcanonicalモジュールまたはテーマ/コード変更による実装を自分で行う必要があります。
重複コンテンツ——本当の作業
PrestaShopで重複コンテンツが生じる原因は予測できます。FME Modulesは問題の大きさを次のようにまとめています。“Duplicate URL issues confuse search engine crawlers, waste crawl budget, and split link equity, which collectively damage SEO performance.” (翻訳)「重複URLの問題は検索エンジンのクローラーを混乱させ、クロールバジェットを浪費し、リンクエクイティを分割するため、総合的にSEOパフォーマンスを損ないます。」主な原因は次のとおりです。
- ファセットナビゲーション —
?color=red&size=M形式のフィルターURL、同一またはほぼ同一のコンテンツ、標準canonicalなし。 - 並べ替え — カテゴリURLに
?order=price_ascが追加される。 - ページネーション — カテゴリや検索の
/page-2、/page-3。 - IDのみのURLとスラッグURL — リダイレクトを強制していなければ、どちらも解決される可能性があります。
- wwwと非www/HTTPとHTTPS — 適切なリダイレクト設定が必要です。
- 印刷用URLと(古いバージョンでは)セッションID URL。
修正は単一のスイッチではなく、段階的に行います。
- Traffic & SEOでcanonicalリダイレクトを301に設定します。
- フィルター/並べ替えパラメーターを拒否するようrobots.txtをカスタマイズします(詳細は後述)。
- ファセットナビゲーションにはcanonicalモジュールを追加します。標準canonicalは商品と組み合わせには対応しますが、フィルターページには対応しません。
- ページネーションを意図的に扱います。PrestaShopは重複を減らすため、1ページ目以降ではカテゴリタイトルブロックをすでに削除します。Googleは2019年に
rel=next/prevのサポートを終了したため、現在の方法は、各ページを独自のself-canonical URLでインデックス可能に保つことです。コンテンツが本当に重複している場合を除き、2ページ目以降を1ページ目にcanonical化しないでください。ページネーションを反射的にnoindexにしないでください。対象はフィルター/並べ替えのバリエーションです。
監査担当者向けに、PrestaShopのH1について1点。カテゴリページで重複H1が生成されるバグはv 1.7.5で修正されました。古いインストールでは確認してください。
Sitemap
PrestaShopには、モジュールカタログから利用できる標準のGoogle Sitemapモジュールがあり、商品、カテゴリ、メーカー、CMSページ、モジュールが生成するページをカバーします。生成後、sitemap URLをrobots.txtに追加し、Google Search Consoleで送信します。
標準モジュールの制限は十分に文書化されており、大規模運用では重要です。商品を追加しても自動更新されず(手動またはcronで再生成します)、多言語対応が弱く(言語ごとのsitemapにはサードパーティーモジュールが必要)、CDNホスト画像のインデックス登録に一貫性がありません。FME Modulesは、組み込みsitemapについて*“may not auto-refresh when adding products, multilingual support is weak, and CDN-hosted image indexing is inconsistent.”* (翻訳)「商品追加時に自動更新されない場合があり、多言語対応が弱く、CDNホスト画像のインデックス登録に一貫性がない」と説明しています。多言語ストアや大規模で頻繁に変わるカタログには、サードパーティーのsitemapモジュール(FME、Sweet Sitemap)を使うと、自動更新、言語ごとのsitemap、画像sitemap、優先度/頻度の制御が得られます。
Robots.txt
**Shop Parameters → Traffic & SEO → 「Generate robots.txt file.」**から生成します。PrestaShopはインストール時にベースラインを作成しますが、カスタマイズは必要です。推奨する拒否対象は次のとおりです。
/cart、/checkout、/search- フィルター/並べ替えパラメーター:
?order=、?sort=、?q=、およびファセットパラメーター - 管理画面/モジュールのユーティリティパス(例:
/module/)
商品画像をインデックス登録できるよう、/img/はクロール可能にして、sitemapの参照(Sitemap: https://example.com/sitemap.xml)を追加します。
他の何より重要な警告が1つあります。設定を誤ったrobots.txtはストア全体を削除しかねません。PrestaHeroは、“A misconfigured robots.txt can destroy SEO, as you don’t want to accidentally block /category or /product pages, which could remove your whole store from Google’s index.” (翻訳)「設定を誤ったrobots.txtはSEOを破壊する可能性があります。誤って/categoryや/productページをブロックすると、ストア全体がGoogleのインデックスから削除されるおそれがあるからです」と率直に述べています。ここで間違ったパスを拒否するのは、自分で招くインデックス削除です。
Schema/構造化データ
これは実際の不足です。PrestaShopが標準で含む構造化データは最小限で、包括的なスキーマはモジュールの仕事です。通常は、完全なProduct(名前、画像、価格、在庫状況、レビュー、配送/返品)、BreadcrumbList、Organization、WebSite、FAQPageが必要になります。これはリッチスニペットモジュールから提供されます。たとえばPrestaPremiumのSchema Proは、“Schema Pro automatically generates 9 Schema.org types across your entire store: Product, ProductGroup (variants with size, color, material), Organization, WebSite, BreadcrumbList, FAQPage, CollectionPage, shipping details and return policy.” (翻訳)「ストア全体で9種類のSchema.orgタイプを自動生成する」とうたい、Product、ProductGroup(サイズ、色、素材を持つバリエーション)、Organization、WebSite、BreadcrumbList、FAQPage、CollectionPage、配送詳細、返品ポリシーを挙げています。Googleの商品構造化データはまさにこれらのフィールドに対応しているので、マークアップを追加する価値はあります。ただし、コアが提供してくれるとは期待しないでください。
パフォーマンスとCore Web Vitals
PrestaShopのデフォルトテーマ、特にレガシーのClassicテーマは、Core Web Vitalsで苦戦することがあります。レンダリングをブロックするCSS/JS、最適化されていない画像(古いバージョンではWebPが標準でない)、古いテーマでは標準の遅延読み込みがないこと、重いモジュールのJSが同期的に読み込まれることが原因です。目標は標準的なものです。LCP < 2,5秒、INP < 200ms(INPは2024年3月にFIDに置き換わりました)、CLS < 0,1。
PrestaShopに組み込まれたレバーは、Advanced Parameters → Performanceにある**CCC(Concatenate, Compress, Cache)**です。CSS/JSを結合・圧縮してリクエスト数と容量を減らします。本番で有効にする前にテストしてください。一部のモジュールを壊すことがあります。CCC以外では、画像をWebPに変換し、遅延読み込みを有効にし、CDNを使い、パフォーマンス重視のテーマ(Hummingbird)を選び、重要でないJSを遅延させ、サーバーレベルのキャッシュ(Redis/Memcached)を追加します。Knowbandがこの重要性を説明する内容は妥当です。Core Web Vitalsは「クロール効率、有料トラフィックの品質、モバイルコンバージョン、チェックアウトの信頼性、すべての商品ページの第一印象に影響する」としています。PageSpeed InsightsとSearch ConsoleのCrUXデータで測定してください。
多言語ストアのhreflang
PrestaShopは複数言語(同一ドメイン、/fr/や/en/のような言語URLプレフィックス、または別ドメイン)と、カタログを共有する複数ショップをサポートします。ただし、hreflangタグは標準では生成しません。モジュールが必要です。SunnyToo、DataFireFly、MyPresta、FMEのCanonical & Hreflangなどがあります。MyPrestaは問題が起きる状況を明確に述べています。“Without hreflang tags, Google does not know which version of a page to display based on the visitor’s language or region. It may index the wrong version, create duplicate content across your language stores, or show an English page to a French-speaking visitor.” (翻訳)「hreflangタグがなければ、訪問者の言語や地域に応じてどのページ版を表示するかをGoogleは知ることができません。間違った版をインデックス登録したり、言語ストア間で重複コンテンツを作ったり、フランス語話者の訪問者に英語ページを表示したりする可能性があります。」
実装する際は、すべてのページタイプ(商品、カテゴリ、CMS、メーカー、サプライヤー)を対象にし、必ず x-default を含め、マルチショップのクロスドメインの対応付けを処理し、canonical化と一貫性を保ってください。また、一般的なhreflangのルールも忘れないでください。不完全で対応付けのない導入には意味がありません。Googleがセットとして認識するには、戻りタグが必要です。
プラットフォーム比較
PrestaShopは、ホスティング型SaaSプラットフォームと完全な制御を得られるMagentoの中間に位置します。各プラットフォームがSEOのレバーでどこに位置するかを見てみましょう。
| 機能 | PrestaShop | Shopify | WooCommerce | Magento | BigCommerce |
|---|---|---|---|---|---|
| フレンドリーURL | Yes(切り替え) | Yes(強制プレフィックス) | プラグイン経由 | Yes | Yes |
| URL内のID | デフォルトでYes | No | Yoast経由 | 設定可能 | No |
| canonicalタグ | Yes(一部) | Yes | Yoast経由 | Yes | Yes |
| 標準スキーマ | モジュール必須 | 一部 | Yoast/RankMath経由 | 一部 | 一部 |
| Hreflang | モジュール必須 | アプリ必須 | WPML/Yoast経由 | Yes | 制限あり |
| 標準sitemap | モジュール(制限あり) | 自動 | Yoast経由 | Yes | 自動 |
| Robots.txtエディター | バックオフィス(生成) | 標準なし | プラグイン経由 | 編集可能 | 編集可能 |
| ファセットナビゲーション対応 | モジュール必須 | 制限あり | プラグイン経由 | 設定オプション | 設定オプション |
| オープンソース/サーバーアクセス | Yes | No | Yes | Yes | No |
Kinstaの比較も多く含めた正直なまとめです。Shopifyと比べると、PrestaShopはオープンソース、サーバーアクセス、カスタマイズ可能なルートによって生の制御力が高い一方、Shopifyはパフォーマンスとセキュリティを管理し、削除できない/products/形式のプレフィックスを強制します。WooCommerceについてKinstaは、“WooCommerce would beat PrestaShop, as it inherits all of WordPress’s SEO capabilities, especially when it comes to blogging” (翻訳)「ブログに関して特に、WordPressのSEO機能をすべて受け継ぐため、WooCommerceがPrestaShopに勝る」と読み取っています。ただし、“out of the box, PrestaShop offers more options than WooCommerce for ecommerce SEO, with the product editor enabling you to add custom meta titles and descriptions for each product.” (翻訳)「標準状態では、PrestaShopは商品ごとにカスタムメタタイトルと説明を追加できる商品エディターがあり、EC SEOではWooCommerceより多くのオプションを提供する」とも述べています。Magentoと比べると、Magentoは「完全なURLカスタマイズ、標準の構造化データ、高度なsitemap設定、深いメタタグ管理を備え、複雑なストアに最大の制御を提供する」(LueurExterne)一方、複雑さとコストがはるかに高くなります。BigCommerceと比べると、BigCommerceは自動sitemap、組み込みスキーマ、URL内IDなしという、より良いデフォルトを出荷しますが、オープンなカスタマイズ性ははるかに低いです。どれも十分にランキングできます。PrestaShopのトレードオフは、制御と設定作業です。
AI要約
Advanced版の内容を短くまとめます。
- PrestaShopはセルフホスティングのオープンソースEC(PHP/MySQL)で、ShopifyやBigCommerceのようなホスティング型SaaSよりも制御が深く、設定が多くなります。
- 標準の強み: オブジェクトごとのメタタイトル/説明(Shop Parameters → Traffic & SEO)、フレンドリーURL(
mod_rewriteが必要)、設定可能な301/302のcanonicalリダイレクト、商品組み合わせの親URLcanonical化、ページごとのH1を1つ、パンくず、無効な商品のリダイレクト設定、robots.txt生成機能+標準sitemapモジュール。 - 必須の
{id}トークン: 数値IDはデフォルトのURLルートで必須(DB検索キー)。削除にはモジュール(FME Pretty URL、SunnyToo、MyPresta)か、危険を伴うルートテンプレート上書きが必要で、設定の切り替えではありません。 - 標準canonicalが対応しないもの: フィルター、並べ替え、ページネーションURL。ファセットナビゲーションにはcanonicalモジュールを追加し、ページネーションを反射的に
noindexにしないでください(対象はフィルター/並べ替えのバリエーションで、rel=next/prevは2019年から廃止されています)。 - 標準sitemapは限定的: 自動更新なし、多言語対応が弱い、CDN画像のインデックス登録に一貫性がない。多言語/大規模カタログにはサードパーティーモジュールを使います。
- robots.txt: バックオフィスから生成してカスタマイズします(
/cart、/checkout、/search、並べ替え/フィルターパラメーターを拒否し、/img/はクロール可能に保つ)。/categoryや/productをブロックするとストア全体がインデックスから外れる可能性があります。 - 標準hreflangなし(モジュール:SunnyToo、DataFireFly、MyPresta、FME)、包括的なスキーマなし(モジュール:Schema Pro/リッチスニペット)。
- パフォーマンス: 重いデフォルトテーマはCWVで苦戦します。組み込みの**CCC(Concatenate, Compress, Cache)**が役立ちますが、本番前にテストしてください。目標はLCP < 2,5秒、INP < 200ms、CLS < 0,1です。
公式ドキュメント
PrestaShopとGoogleの一次資料ドキュメントです。
PrestaShop
- SEO & URLs(v9ドキュメント) — 現在の安定ブランチ(2026年半ば時点でv9.1.x)。v8と同じメタ管理、フレンドリーURL、canonicalリダイレクト、robots.txt生成を扱います。
- SEO & URLs(v8ドキュメント) — v8.2.x LTSブランチ。9.xと並行して引き続き保守されています。
- SEO & URLs(v 1.7ドキュメント) — v 1.7相当のドキュメント。
- SEO Rules & Behaviors(仕様) — デフォルトのルートパターン、
{id}要件、組み合わせのcanonical化、H1ルール、ページネーションの挙動。 - URLとsitemap(ヘルプセンター) — 標準Google Sitemapモジュールとその制限。
- 商品の構造化データ — PrestaShopのスキーマモジュールが出力すべきProductフィールド。
- ECのページネーションと段階的な読み込み — ページごとに固有URLを使い、noindexはページネーションではなくフィルターに使うという説明。
- 重複URLの統合(canonicalization) —
rel=canonicalがPrestaShopの生成する重複を統合する仕組み。 - ローカライズ版をGoogleに伝える(hreflang) — PrestaShopが標準では追加しない多言語シグナル。
資料からの引用
PrestaShopエコシステムと、PrestaShop固有の知見でこのガイドを形作った実務家の発言です。各ディープリンクから、ページ上で引用を裏付ける箇所へ移動できます。
URL構造について
- “PrestaShop generates URLs that contain unwanted numbers and special characters, making it non-SEO-friendly. A long, complex URL decreases the possibility of higher ranking in the search results.” (翻訳)「PrestaShopは不要な数字や特殊文字を含むURLを生成するため、SEOに適していません。長く複雑なURLは検索結果で上位にランクされる可能性を下げます。」 — Empirical Edge。 引用へ移動
重複コンテンツについて
- “Duplicate URL issues confuse search engine crawlers, waste crawl budget, and split link equity, which collectively damage SEO performance.” (翻訳)「重複URLの問題は検索エンジンのクローラーを混乱させ、クロールバジェットを浪費し、リンクエクイティを分割するため、総合的にSEOパフォーマンスを損ないます。」 — FME Modules。 引用へ移動
canonicalタグについて
- “Implementing canonical tags is one of the most important practices for enabling friendly URLs on PrestaShop, as these HTML tags inform search engines of the ‘master’ version of a page when duplicate or similar content exists.” (翻訳)「PrestaShopでフレンドリーURLを有効にするにはcanonicalタグの実装が最も重要な実践の1つです。重複または類似するコンテンツが存在する場合、これらのHTMLタグが検索エンジンにページの『マスター』版を知らせるためです。」 — PrestaHero。 引用へ移動
robots.txtについて
- “A misconfigured robots.txt can destroy SEO, as you don’t want to accidentally block /category or /product pages, which could remove your whole store from Google’s index.” (翻訳)「設定を誤ったrobots.txtはSEOを破壊する可能性があります。誤って/categoryや/productページをブロックすると、ストア全体がGoogleのインデックスから削除されるおそれがあるからです。」 — PrestaHero。 引用へ移動
組み込みsitemapについて
- “PrestaShop’s built-in sitemap functionality has constraints: it may not auto-refresh when adding products, multilingual support is weak, and CDN-hosted image indexing is inconsistent.” (翻訳)「PrestaShopの組み込みsitemap機能には制約があります。商品追加時に自動更新されない場合があり、多言語対応が弱く、CDNホスト画像のインデックス登録に一貫性がありません。」 — FME Modules。 引用へ移動
スキーマ/リッチスニペットについて
- “Schema Pro automatically generates 9 Schema.org types across your entire store: Product, ProductGroup (variants with size, color, material), Organization, WebSite, BreadcrumbList, FAQPage, CollectionPage, shipping details and return policy.” (翻訳)「Schema Proはストア全体で9種類のSchema.orgタイプを自動生成します。Product、ProductGroup(サイズ、色、素材を持つバリエーション)、Organization、WebSite、BreadcrumbList、FAQPage、CollectionPage、配送詳細、返品ポリシーです。」 — PrestaPremium。 引用へ移動
hreflangについて
- “Without hreflang tags, Google does not know which version of a page to display based on the visitor’s language or region. It may index the wrong version, create duplicate content across your language stores, or show an English page to a French-speaking visitor.” (翻訳)「hreflangタグがなければ、訪問者の言語や地域に応じてどのページ版を表示するかをGoogleは知ることができません。間違った版をインデックス登録したり、言語ストア間で重複コンテンツを作ったり、フランス語話者の訪問者に英語ページを表示したりする可能性があります。」 — MyPresta。 引用へ移動
プラットフォーム比較について
- “Out of the box, PrestaShop offers more options than WooCommerce for ecommerce SEO, with the product editor enabling you to add custom meta titles and descriptions for each product.” (翻訳)「標準状態では、PrestaShopはWooCommerceよりEC SEO向けの多くのオプションを提供し、商品エディターから商品ごとにカスタムメタタイトルと説明を追加できます。」 — Kinsta。 引用へ移動
PrestaShop SEOチェックリスト
影響度の順に並べています。上位の項目ほど効果が大きくなります。
高い影響度
- Shop Parameters → Traffic & SEOでcanonicalリダイレクトを301に設定(302でも無効でもない)。
- ファセット/並べ替え/フィルターURLに対応 — canonicalモジュールをインストールし、不要なフィルターの組み合わせをクリーンなカテゴリにcanonical化するか、
noindex,followにする。 - 生成後にrobots.txtをカスタマイズ —
/cart、/checkout、/search、並べ替え/フィルターパラメーターを拒否し、/img/はクロール可能にする。/categoryや/productは決してブロックしない。 - Core Web Vitalsに合格 — CCCを有効化(テスト済み)、WebP画像、遅延読み込み、CDN。LCP < 2,5秒、INP < 200ms、CLS < 0,1。
標準設定
- フレンドリーURLを有効化(
mod_rewrite/Nginx rewriteが有効なことを確認)。 - ホーム、主要商品、主要カテゴリ、重要なCMSページのメタタイトルと説明を作成。
- 標準またはサードパーティーのsitemapを生成し、robots.txtで参照し、Google Search ConsoleとBing Webmaster Toolsに送信。
- Product/Breadcrumb/Organization/FAQ向けのスキーマモジュールをインストール。
- 無効または削除した商品は**301(または404/410)**にし、ソフトエラーのままにしない。
- 古いインストールでは、v 1.7.5より前の重複カテゴリH1バグを確認。
検討するがデフォルトではないもの
- 信頼できるモジュールが301sを維持する場合に限りIDなしURLを使う。ルートテンプレートを手作業で盲目的に編集しない。
- ページネーションはself-canonicalでインデックス可能に保つ(2ページ目以降を
noindexにしない)。
国際化(多言語/マルチショップのみ)
- hreflangモジュールをインストールし、すべてのページタイプにタグを付ける。
x-defaultを含め、すべての言語/ショップ間で双方向に対応付ける。 - 言語ごとのsitemap(サードパーティーモジュール。標準の多言語対応は弱い)。
PrestaShop SEOチートシート
PrestaShopが標準で処理することと、モジュールが必要なこと
| 機能 | 標準? | 注記 |
|---|---|---|
| メタタイトル/説明(オブジェクトごと) | Yes | Shop Parameters → Traffic & SEO |
| フレンドリーURL | Yes(切り替え) | mod_rewrite/Nginx rewriteが必要 |
URL内の数値{id} | Yes(強制) | 削除にはモジュール/ルート上書きが必要 |
| canonicalタグ(商品+組み合わせ) | Yes | 301/302のcanonicalリダイレクトを設定可能 |
| フィルター/並べ替え/ページネーションのcanonical | No | モジュールまたはテーマ/コードが必要 |
| ページごとのH1を1つ | Yes | カテゴリ重複H1バグはv 1.7.5で修正 |
| 無効な商品のリダイレクト | Yes | 301/302/404を設定可能 |
| robots.txt生成機能 | Yes | ベースラインのみ。カスタマイズが必要 |
| XML sitemap | Yes(モジュール) | 自動更新なし。多言語/画像対応が弱い |
| 包括的なスキーマ | No | Schema Pro/リッチスニペットモジュール |
| Hreflang | No | SunnyToo/DataFireFly/MyPresta/FME |
| パフォーマンス(CCC) | Yes | Advanced Parameters → Performance。最初にテスト |
設定の場所
| 設定 | パス |
|---|---|
| メタ、フレンドリーURL、canonicalリダイレクト、robots.txt | Shop Parameters → Traffic & SEO |
| CCC(Concatenate, Compress, Cache) | Advanced Parameters → Performance |
| Sitemap | Modules → Google Sitemap |
デフォルトのルートパターン
- 商品:
{category:/}{id}{-:id_product_attribute}-{rewrite}{-:ean13}.html - カテゴリ:
{id}-{rewrite}· CMS:content/{id}-{rewrite}· ブランド:brand/{id}-{rewrite}
robots.txt — 拒否/維持
- 拒否:
/cart、/checkout、/search、?order=、?sort=、?q=、ファセットパラメーター - クロール可能に保つ:
/img/ - 決してブロックしない:
/category、/product(ストアをインデックスから外します) - 追加:
Sitemap: https://example.com/sitemap.xml
Core Web Vitalsの目標
- LCP < 2,5秒 · INP < 200ms(2024年3月にFIDから置き換え) · CLS < 0,1
してはいけないこと
- フレンドリーURLで重複コンテンツが解決すると考えない(解決しません)。
- ページネーションされたカテゴリページを
noindexにしない。 - 標準のhreflangや完全なスキーマを期待しない。
- リダイレクトなしでIDを削除するためにルートテンプレートを手作業で編集しない。
PrestaShop SEO向けモジュールとツール
PrestaShop/公式エコシステム
- Google Sitemap(標準モジュール)— XML sitemapを生成します。手動またはcronで再生成します。
- SEO Expertモジュール — メタ最適化とソーシャルネットワーク用マークアップ。
- PrestaShop Marketing with Google(Google連携マーケティング) — Google Merchant Center/Shoppingフィード。
URLとcanonical
- FME Pretty URL/ID removal、SunnyToo、MyPresta — 数値の
{id}を取り除き、301リダイレクトを維持。 - Canonical URLモジュール(FME、PrestaHero、SEIGI)— 標準canonicalをフィルター/ページネーション/ファセットページに拡張。
スキーマとhreflang
- Schema Pro/リッチスニペットモジュール — Product、ProductGroup、Organization、WebSite、BreadcrumbList、FAQPage、配送/返品のJSON-LD。
- Hreflangモジュール(SunnyToo、DataFireFly、MyPresta、FME Canonical & Hreflang)—
x-default付きで全ページタイプのhreflangに対応。一部はマルチショップのクロスドメインにも対応。
Sitemapとrobots.txt
- サードパーティーのsitemapモジュール(FME、Sweet Sitemap)— 自動更新、言語ごとのsitemap、画像sitemap、優先度/頻度。
- robots.txtエディターモジュール(dh42)— バックオフィスからrobots.txtを編集。
パフォーマンス
- PrestaSpeed、WebsiteSpeedy、FME speed modules — 画像圧縮、遅延読み込み、CCC設定、CDN統合。組み込みのCCC(Advanced Parameters → Performance)もあります。
測定(プラットフォーム非依存)
- Google Search Console — sitemap送信、URL Inspection、Coverage、CrUX/Core Web Vitals、International Targeting。
- Bing Webmaster Tools — 2つ目のsitemap送信、クロール制御。
- Screaming Frog/Ahrefs Site Audit — ストアをクロールして、ファセットURLの急増、IDとスラッグの重複、リダイレクトチェーン、robots.txtの誤りを検出。
- PageSpeed Insights/Lighthouse — CCCとテーマ変更の前後でCWVをベンチマーク。
PrestaShop URLから数値IDを削除すべきですか?
Choose whether to migrate to ID-free routes
回避可能なリスクを生むPrestaShop SEOの間違い
フレンドリーURLで重複コンテンツがなくなると考える
この切り替えはクエリ形式の商品URLを説明的なルートに置き換えますが、並べ替え、フィルター、ファセット、ページネーション、プロトコル、ホストの重複は制御しません。301のcanonicalリダイレクトを維持し、標準でないURLの領域を意図的に処理してください。
ページネーションされたカテゴリページをすべてnoindexにする
ページネーションは、1ページ目より後の商品にクローラーが到達するのに役立ちます。本当に異なるページネーションページは、実装によって重複だと証明されない限り、インデックス可能かつself-canonicalに保ち、不要な並べ替えやフィルターの組み合わせに制御を限定してください。
{id}を削除するためだけにルートテンプレートを手作業で編集する
数値IDはデータベースの検索キーです。維持された実装と完全なリダイレクトなしに削除すると、ルートが壊れ、URL全体の移行が発生する可能性があります。現実的な要件とテスト済みの移行計画がない限り、そのままにしてください。
生成されたrobots.txtを確認せず信頼する
生成機能が作るのはベースラインであり、サイト固有の安全なポリシーではありません。広すぎる拒否は商品やカテゴリのパスをブロックし、ストアを検索から外す可能性があります。生成ファイルを差分確認し、/img/をクロール可能に保ち、公開前に代表的なURLをテストしてください。
PrestaShopコアがすべてのSEO機能を提供すると期待する
標準canonicalはファセットナビゲーションを解決しません。包括的なスキーマ、hreflang、堅牢な多言語/画像sitemapは、モジュールまたはカスタム実装の作業です。プラットフォームの項目にチェックが入っていると仮定せず、レンダリングされた出力を監査してください。
カテゴリページに重複H1見出しが表示される
症状: クロールでカテゴリテンプレートに複数のH1が報告される。主な原因: ストアが、v 1.7.5で修正されたカテゴリ重複H1バグの影響を受ける古いPrestaShopバージョンで動いているか、使用中のテーマが古いマークアップを残している。修正: コアとテーマのバージョンを確認し、レンダリングされたカテゴリテンプレートを調べ、テンプレートを更新またはパッチする。同じカテゴリ群を再クロールし、意図したH1が1つだけ残っていることを確認する。
商品とカテゴリページがクロールまたはインデックスから消える
症状: robots.txtの変更後に大きな範囲がクロールされなくなる。主な原因: 生成または手作業で編集したDisallowルールが/product、/category、その他の広いパスに一致している。修正: Shop Parameters → Traffic & SEO、実際のrobots.txtファイル、URL単位のrobotsテストを調べる。広すぎるルールを削除し、意図したカート/検索/ファセットのブロックを保ち、代表的な商品URLとカテゴリURLが許可されていることを確認する。
クロールレポートでフィルターと並べ替えのURLが増殖する
症状: クローラーが、重複するカテゴリコンテンツを持つ?color=、?size=、?order=などのURLや類似URLを大量に発見する。主な原因: 標準の商品canonicalはファセットや並べ替えパラメーターをカバーせず、ナビゲーションがクロール可能な組み合わせを公開している。修正: パラメーターのパターンを一覧化し、価値のない組み合わせへのリンクを止め、テスト済みのクロール/インデックスルールを適用し、本当に重複するものにはcanonical実装を使う。価値のあるファセットページを到達可能に保ちながら、再クロールで不要なURL領域が広がらなくなったことを確認する。
フレンドリーURLがエラーを返す、またはクエリ形式のルートが残る
症状: フレンドリーURLを有効にすると404s(Not Foundエラー)が発生する、または商品URLが書き換わらない。主な原因: Apacheのmod_rewrite、Nginx相当機能、または生成されたrewrite設定が有効になっていない。修正: サーバーのrewrite機能を確認し、PrestaShopからルート設定を再生成する。設定を有効にしたままにする前に、商品、カテゴリ、CMS、無効な商品のURLをテストする。
時間をかける価値のあるリソース
関連する自分の執筆
- テクニカルSEO初心者ガイド — このガイドの下にあるクロール/インデックス/canonicalの基礎が当てはまる場所。
- 重複コンテンツが生じる理由と修正方法 — PrestaShopの最大の問題をプラットフォーム非依存で掘り下げた記事。
- ファセットナビゲーションの定義、例、SEOのベストプラクティス — PrestaShopがcanonical化しないフィルター/並べ替えURLの扱い方。
- Hreflang初心者ガイド — PrestaShopがモジュールを必要とする多言語シグナル。
自分の講演
- 検索の仕組み (SlideShare)— すべてのPrestaShopストアが通るパイプライン、クロール、レンダリング、インデックス登録、ランキングについての解説です。(通常の注意書き:“This is my understanding of systems… not going to be 100% complete or accurate.” (翻訳)「これはシステムについての私の理解であり、100%完全または正確とは限りません。」)
サイト内の関連情報
- Faceted navigation — 重複コンテンツ問題をプラットフォーム非依存で掘り下げた記事。
- Canonicalization — PrestaShopのリダイレクト設定を支えるcanonicalの仕組み。
業界の資料
- PrestaShop公式ブログ — PrestaShop向け究極のSEOチェックリスト — PrestaShop自身のチェックリスト(2023年のものですが、一次資料)。
- PrestaHero — canonical URLと重複コンテンツ と robots.txtの設定。
- FME Modules — PrestaShopの重複URL問題を修正する と PrestaShopのテクニカルSEO:sitemapとrobots.txt。
- Kinsta — PrestaShopとWooCommerceの比較 — プラットフォーム比較の出典。
- Knowband — PrestaShop向けCore Web Vitals究極ガイド — パフォーマンスとCCCの背景。
- PrestaShop GitHub Issue #20677 — URLからIDを削除 — 必須の
{id}トークンについてのオープンソースの議論。
PrestaShop SEOをテスト
PrestaShopでSEOがどのように機能するかについての5つの短い質問です。それぞれ答えを選んでから確認してください。
変更履歴
2026年8月21日に更新。
編集概要と記録された変更の詳細。変更の詳細
-
変更の詳細な注記は現在英語でのみ提供されています。
-
変更の詳細な注記は現在英語でのみ提供されています。
-
変更の詳細な注記は現在英語でのみ提供されています。
完全な比較は利用できません — この改訂の以前のスナップショットがアーカイブされていません。
2026年7月18日に更新。
編集概要と記録された変更の詳細。変更の詳細
-
変更の詳細な注記は現在英語でのみ提供されています。
-
変更の詳細な注記は現在英語でのみ提供されています。
完全な比較は利用できません — この改訂の以前のスナップショットがアーカイブされていません。