Movable Type でカスタムフィールド foo の値が bar なブログ記事のカテゴリを hoge に一括で変更したい

2012-10-19
1分で読了
更新: 2025-12-14

目次

なんかクイズのようなタイトルですね…

例えば、basename が「birthday_year」(誕生日の年)のカスタムフィールドの値が、1810年代に該当するブログ記事が属するカテゴリのうち、カテゴリIDが120のカテゴリを、一括でカテゴリIDが121のカテゴリに変更したいとき、以下の SQL を実行すれば OK です(妙に具体的w)。

UPDATE `mt_placement`
INNER JOIN `mt_entry_meta`
ON `mt_placement`.`placement_entry_id` = `mt_entry_meta`.`entry_meta_entry_id`
SET `mt_placement`.`placement_category_id` = 121
WHERE `mt_placement`.`placement_category_id` = 120
AND `mt_entry_meta`.`entry_meta_type` LIKE 'field.birthday_year'
AND `mt_entry_meta`.`entry_meta_vchar_idx` REGEXP '^181.*';

直接データベースをいじるので、バックアップは忘れずに!ご利用は自己責任で。

この記事をシェア

この記事を書いた人

Roy Okuwaki

「かたつむりくんのWWW」を運営している Roy Okuwaki(tinybeans)です。bit part 合同会社 代表社員。2007年から、Movable Type や Craft CMS などの CMS、Web 開発、AI ツールの使い方について書いています。

プロフィールを見る →

関連記事