Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Migrate Drupal7 to Drpual8
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
kazukomurata
October 01, 2020
Technology
300
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Migrate Drupal7 to Drpual8
kazukomurata
October 01, 2020
More Decks by kazukomurata
See All by kazukomurata
Drupal SDC入門
kazukomurata
0
130
長期運用のためのDrupal開発入門
kazukomurata
0
83
Drupal8 Migrate API
kazukomurata
0
370
Drupal8 Problem of multilingualization of contents
kazukomurata
0
160
Drupalのデモサイト作って明日までに!と言われたら
kazukomurata
0
880
Drupal8 CKEditor TIps
kazukomurata
0
450
Drupal7 & 8 翻訳コンテンツの罠
kazukomurata
0
290
Drupal7×Cloudfront×SSL
kazukomurata
0
290
Drupal8 State API と Configuration API
kazukomurata
0
300
Other Decks in Technology
See All in Technology
Service Connect 上のサービスに ECS Service の外側から到達できなかった話
ota1022
1
240
Model Studio CLI × Token Plan
maigo999
0
170
その“隠したつもり”が命取り ── 自前と平文をやめて「正解」に委ねる
kuroneko13
0
120
修正PRを食べてレビュースキルが賢くなる:Claude Codeによる自己改善サイクル
yuyaumetsu
6
1.5k
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
4.9k
LanceDB入門
mocobeta
7
460
会社紹介資料 / Sansan Company Profile
sansan33
PRO
23
430k
モダンフロントエンド 開発研修
recruitengineers
PRO
4
630
[しろおび夏祭り2026] チャットするAIから、作業するAIへ - 使われ方の変化と、その裏側で起きていること
kk0n
0
1.7k
Genie Codeハンズオン基礎編
taka_aki
1
120
【CEDEC2026】次世代デジタルカードゲームのサーバー設計と運用 〜『Shadowverse: Worlds Beyond』の舞台裏~
cygames
PRO
1
1.2k
20分でわかるセキュアAPI
nwiizo
2
270
Featured
See All Featured
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.9k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.1k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Speed Design
sergeychernyshev
33
2k
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
640
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.3k
The Spectacular Lies of Maps
axbom
PRO
1
910
Fashionably flexible responsive web design (full day workshop)
malarkey
408
67k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
690
How Software Deployment tools have changed in the past 20 years
geshan
1
34k
Chasing Engaging Ingredients in Design
codingconduct
0
270
Transcript
Migrate Drupal7 to Drupal8 @kazunoko_m
Drupal8で移行といえば・・・ Drupal8サイト Drupal9サイト Drupal7サイト 他のCMS etc... HTML群
今日の観点 Drupal8サイト Drupal9サイト Drupal7サイト HTML群 他のCMS etc...
何が移行できる • サイトの設定からコンテンツのデータまで全て • と、言うもののコントリビューションモジュールは D8版が存在していないと厳し い
手順 1. 新規インストールが完了したDrupal8を用意 2. D7で有効だったモジュールをD8側でもインストール・有効化 3. 移行のモジュールを有効化 4. 移行実行 a.
画面から b. drushから 5. カスタムテーマ・モジュールのD8版作成
移行のモジュール
画面から実行 1/6 URL : /upgrade
画面から実行 2/6
画面から実行 3/6
画面から実行 4/6
画面から実行 5/6
画面から実行 6/6
drushから実行 1/2 • 参考 : Upgrade using Drush • コントリビューション
Migrate Plus, Migrate Tools が必要 1. 移行用のconfigを生成 a. https://qiita.com/masam10/items/5b0d14d2af0115307d27 の設定を自動生成している 2. 設定系の移行実行 3. コンテンツ系の移行を実行 4. 実行結果を確認
drushから実行 2/2 移行用のconfigを生成 drush migrate -upgrade --legacy-db-url=mysql://user:password@server/db --legacy-root=http://example.com --configure-only 設定系の移行実行
drush migrate:import --group=migrate_drupal_7 --tag=Configuration --execute-dependencies コンテンツ系の移行を実行 drush migrate:import --group=migrate_drupal_7 --tag=Content --execute-dependencies 実行結果を確認 drush migrate:status --group='migrate_drupal_7'
Tips という名のつまずいたところ • Field collection移行 • 多言語コンテンツ:デフォルト言語が変わってしまう • テキストのフォーマット混合問題 •
D8にテキストフィルター、フォーマッター、ウィジェットが無い • メディア
Field collection移行 • Drupal8にField collectionはない • Paragraphsに移行する • 対応パッチ: https://www.drupal.org/project/paragraphs/issues/2911244
• 8.x-1.x-dev をインストールでOK。 https://git.drupalcode.org/project/paragraphs/-/network/8.x-1.x
多言語コンテンツ デフォルト言語が変わる • 翻訳言語が存在する場合、言語コードの abc順に登録される。データ構造 上、最初に登録される言語がオリジナルになる。 • オリジナル:日本語(ja)・翻訳:英語(en)の場合、英語(en)が先に登録されるの で、オリジナル・翻訳が逆転する。 •
パッチにて、オリジナル言語を先に登録するようにソート順を追加する。 • https://gist.github.com/kazukomurata/f4e59bdbc7ad645e1d52203d7 6380017 ◦ おそらくPostgreSQLではソート順を逆にする必要がある。
テキストフォーマット混合問題 • https://www.drupal.org/docs/upgrading-drupal/known-issues-when-u pgrading-from-drupal-6-or-7-to-drupal-8-or-9 • テキスト、テキストエリアのフィールドを複数のコンテンツタイプで共有してい る場合に発生する可能性がある • D7とD8の構造の違い
D8にテキストフィルター、フォーマッター、ウィ ジェットが無い • テキストフィルター ◦ 独自作成か・・・解がない。 • フォーマッター ◦ Twigの方が早い
• ウィジェット ◦ 代替モジュールは結構ある
メディア • D7にもメディアがあったが、D8と構造が異なる。 • ファイル群をメディアへ移行するモジュールがある。 • https://www.drupal.org/project/media_migration • ただし、単純なファイル添付フィールドもメディア参照に切り替わってしまいそ う(ソースコードの雰囲気)
• それは・・・やりすぎかも・・・。