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
kazukomurata
October 01, 2020
Technology
290
0
Share
Migrate Drupal7 to Drpual8
kazukomurata
October 01, 2020
More Decks by kazukomurata
See All by kazukomurata
長期運用のためのDrupal開発入門
kazukomurata
0
74
Drupal8 Migrate API
kazukomurata
0
360
Drupal8 Problem of multilingualization of contents
kazukomurata
0
150
Drupalのデモサイト作って明日までに!と言われたら
kazukomurata
0
870
Drupal8 CKEditor TIps
kazukomurata
0
450
Drupal7 & 8 翻訳コンテンツの罠
kazukomurata
0
280
Drupal7×Cloudfront×SSL
kazukomurata
0
280
Drupal8 State API と Configuration API
kazukomurata
0
290
Drupal8 2016/11
kazukomurata
0
83
Other Decks in Technology
See All in Technology
可視化から活用へ — Mesh化・Segmentation・アライメントの研究動向
gpuunite_official
0
230
サイボウズ、プラットフォームエンジニアリング始めるってよ ― プラットフォームチームの事業貢献と組織アラインメントの強化
ueokande
0
120
Gaussian Splattingの実用化 - 映像制作への展開
gpuunite_official
0
210
【禁断】Obsidianの第二の脳に「知の巨人」と呼ばれた師匠の脳をロードしてみた
nagatsu
0
1.8k
SpeechTranscriber + AIによる文字起こし機能
kazuki1220
0
120
[4] Power BI Deep Dive [2026-05]
ohata_bi
0
110
Redmine次期バージョン7.0の注目新機能解説 — UI/UX強化と連携強化を中心に
vividtone
1
210
AI時代に求められる思考のパラダイムシフト
nrinetcom
PRO
0
100
TypeScriptとAngular Signal で実現する保守性の高いアプリケーション設計 - 3層アーキテクチャによる責務分離の実践(たつかわ) https://2026.tskaigi.org/talks/10
nealle
0
120
Oracle AI Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
6
1.4k
TSKaigi 2026 - enumよ、さようなら
teamlab
PRO
1
220
JaSSTに関わることで変わった人生観 #jasstnano
makky_tyuyan
0
160
Featured
See All Featured
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
200
The Cost Of JavaScript in 2023
addyosmani
55
9.9k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
510
Java REST API Framework Comparison - PWX 2021
mraible
34
9.3k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
23k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
260
A better future with KSS
kneath
240
18k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.2k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.4k
Thoughts on Productivity
jonyablonski
76
5.2k
Music & Morning Musume
bryan
47
7.2k
Rails Girls Zürich Keynote
gr2m
96
14k
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 • ただし、単純なファイル添付フィールドもメディア参照に切り替わってしまいそ う(ソースコードの雰囲気)
• それは・・・やりすぎかも・・・。