はじめに
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を確認してみるのがおすすめです。

