Magento:URL Rewriteが「自動生成」か「手動作成」かを判別する方法

YK
2025-12-25
2025-12-25

 はじめに

Magentoでは、商品やカテゴリ保存時に自動で URL Rewrite が生成されますが、
管理画面(Marketing > URL Rewrites)から 手動で URL Rewrite を作成することも可能です。

ただし管理画面上では、表示されているURL Rewriteが自動生成されたものなのか、手動で作られたものなのか、見た目だけでは判別できません。

今回は、URL Rewrite が
自動生成か/手動作成かを DB の is_autogenerate カラムで判別する方法を紹介します。

管理画面では見分けがつかない問題

管理画面の URL Rewrite の一覧では、

・リダイレクトパス
・対象パス
・リダイレクトタイプ

などは確認できますが、
「自動生成かどうか」を示す情報は表示されません。

そのため、

・削除していいURL Rewriteなのか
・SEO対策等で意図して作られた重要なRewriteなのか

判断に迷うことがあります。

判別に使えるのが url_rewrite.is_autogenerated

Magentoでは、URL Rewrite が 自動生成かどうかを
DB の url_rewrite テーブルにある is_autogenerated カラムで管理しています。

値の意味
意味
1 Magentoが自動生成したURL Rewrite
0 管理画面から手動作成されたURL Rewrite

 

確認用SQL例

特定のURL Rewriteを確認したい場合は、次のようなSQLで調べられます。

SELECT 
  request_path,
  target_path,
  is_autogenerated
FROM
  url_rewrite
WHERE
 request_path LIKE '%example%';

結果の is_autogenerated を見ることで、

 is_autogenerated = 1 → 商品・カテゴリ保存時にMagentoが作ったもの
 is_autogenerated = 0 → 誰かが意図的に手動で作成したもの

と判別できます。

実務での使いどころ

URL Rewriteが増えすぎて整理したい時や、削除して良いか判断したい時、
以下のような切り分けができます。

is_autogenerated = 1
 → 商品保存時に再生成される可能性があるため、比較的削除しやすい
  (とはいえ現在使用中の可能性もあるため削除前に必ず要確認)

is_autogenerated = 0
 → SEO対策や旧URL対応の可能性あり。安易に削除しない

まとめ

URL Rewrite はMagento内部で重要な役割を持つため、
「とりあえず削除」はリスクがあります。

is_autogenerated を確認するだけで、
消してよい可能性の高いもの/慎重に扱うべきものを切り分けられるので、
URL周りで悩んだときは一度DBを確認してみるのがおすすめです。