Appearance
誕生日マスタ スロカレ一括投入ガイド
誕生日マスタテーブル(db_birthday)に、スロカレ「誕生日一覧」 のパチ・スロキャラ誕生日データを投入するための運用ガイドです。
概要
- テーブル:
{prefix}db_birthday(誕生日キャラクターデータ。作品名は{prefix}db_title_masterをtitle_idで参照) - 必要な作業: 管理画面または WP-CLI から一括投入を実行します。
- 既存テーブル:
db_birthday/db_title_masterは Installer が自動作成・移行します。
利用条件・注意事項
- データ取得元: スロカレ(Slot Calendar)誕生日一覧。実行前にスロカレの利用規約および robots.txt を確認のうえ、利用範囲内で実行してください。
- 本スクリプトは User-Agent にサイト名・URL を含めず 汎用識別子(
PHP/バージョン)のみを使用しています。 - 再実行防止: WordPress Transients API で TTL=1 時間のクールダウンを設けています。実行後 1 時間は再実行できません(管理画面・CLI 共通)。テストなどで即時再実行する場合は下記「クールダウンリセット」を参照してください。
重複スキップについて
- スクリプトは作品名を
db_title_masterへ upsert したうえで、title_id付きでINSERT IGNORE投入します。 - 目標構成:
UNIQUE(month, day, chara, divi, title_id)。同一の月・日・キャラ名・区分・作品名マスタ ID のみスキップされ、作品名や月日が異なる同名キャラは別エントリとして登録できます。 - 自動移行:
init/admin_initでTitleMasterInstallerとBirthdaySeedInstallerがスキーマを揃えます。詳細は 誕生日テーブル UNIQUE 自動移行 を参照。 - 作品名の一覧・改名・統合は管理画面の 作品名マスタ(ADM-030)で行います。
一括投入
注意: 複数のプロセスから同時に実行しないでください。外部サイトへ HTTP リクエストを行うため、ネットワークが利用可能な環境で実行してください。
方法 A: 管理画面から実行(推奨)
WordPress 管理画面 → 設定 → 誕生日シード を開き、「シード実行」ボタンをクリックします。処理件数・新規挿入件数と直近の投入レコードが表示されます。実行後は 1 時間のクールダウンがかかります。
方法 B: WP-CLI で実行(WordPress のドキュメントルートが app/public のとき)
接続手順は WP-CLI 接続手順 を参照してください。
bash
cd /path/to/app/public
wp eval-file wp-content/themes/cocoon-child-master/myCustom/scripts/seed-birthday-from-sulocale.php- 成功時は
Processed N entries, inserted M new rows ...のような出力が表示されます。
クールダウンリセット(テスト時などに即時再実行する場合):
- WP-CLI:
wp transient delete birthday_seed_cooldown - MySQL(接頭辞が
wp_でない場合はテーブル名を読み替えてください):DELETE FROM wp_options WHERE option_name = '_transient_birthday_seed_cooldown' OR option_name = '_transient_timeout_birthday_seed_cooldown';
ローカルでホストの PHP を使う場合(WP-CLI が使えないとき): WordPress のドキュメントルート(例: app/public)で次を実行してください。
bash
# 実行場所: WordPress のドキュメントルート(例: app/public)
/opt/homebrew/bin/php -r "require 'wp-load.php'; require 'wp-content/themes/cocoon-child-master/myCustom/scripts/seed-birthday-from-sulocale.php';"/opt/homebrew/bin/phpは Homebrew で入れた PHP のパスです。環境によりwhich phpで確認したパスに読み替えてください。
本番での一括投入
方法 A(管理画面から実行) はローカルと同様、管理画面(設定 → 誕生日シード)から実行できます。以下は CLI での実行方法です。
注意: 複数のプロセスから同時に実行しないでください。
方法 B: WP-CLI がある場合
接続手順は WP-CLI 接続手順 を参照してください。本番の WordPress ドキュメントルート で:
bash
wp eval-file wp-content/themes/cocoon-child-master/myCustom/scripts/seed-birthday-from-sulocale.php方法 C: WP-CLI が無い場合
本番サーバーに SSH 接続したあと、WordPress のドキュメントルートに移動し:
bash
cd ~/public_html/あなたのドメイン
php -r "require 'wp-load.php'; require 'wp-content/themes/cocoon-child-master/myCustom/scripts/seed-birthday-from-sulocale.php';"- ドキュメントルートのパスおよびテーマパスは本番の構成に合わせて変更してください。
- 成功時は
Processed N entries, inserted M new rows ...と表示されます。