WordPressで作ったサイトを、CloudflareのCMS「EmDash」に移すとき、いちばん気になるのは「今の見た目のまま移せるのか」です。
EmDashにはテーマの着せ替えが無く、WordPressのテーマもそのままでは動きません。
そこで当社の企業サイト(WordPress+SWELL)のトップページを、EmDashで同じ見た目に作り直してみました。
この記事では、その手順と、移せたもの・移せなかったものを、比較画像つきでまとめます。
最終調査日:2026年10月24日
作り直したページは emdash.motoki-dev.com/case/motoki-top/ で公開しています(検証用のため、検索エンジンには出していません)。
この検証をもとに、移行のご相談を受ける案内のページ(WordPressからEmDashへの移行)もEmDashで作りました。
EmDashの基本は「WordPressとEmDashの違い」と「EmDashの管理画面でできること」で解説しています。
この記事で分かること
- WordPressの見た目をEmDashに移せるか、どこまで同じにできたか
- 移すときに触ったファイルと、作業の順番
- WordPress側で、見た目の材料がどこに散らばっていたか
- 移行を頼む前・引き受ける前に確かめておくこと
結論:見た目は移せる。ただし「移す」より「作り直す」に近い
| 項目 | 結果 | やり方 |
|---|---|---|
| 色・フォント | 同じにできた | SWELLの設定値とフォントのファイルをそのまま持ってきた |
| ヘッダー・フッター・お問い合わせ帯 | 同じにできた | Astroのレイアウトをコードで作り直した |
| トップの各セクション | 同じにできた | ブロックの構成を見て、HTMLとCSSで組み直した |
| スマートフォン表示 | 同じ考え方で作れた | CSSで書き直した。メニューの開閉も作り直し |
| お知らせの一覧 | 管理画面から更新できる形で移せた | WordPressの投稿を取り込み、カテゴリーで絞って表示 |
| メニュー | 管理画面から変えられる形にした | EmDashのメニューを読み、無ければ元と同じ並びを出す |
| トップの文言(キャッチコピー・実績の数字など) | 移せたが、コードの中に入った | 変えるたびにコードの編集とデプロイが要る |
| SWELLのブロックそのもの | 持っていけない | 見た目だけをCSSで再現した |
見た目は、並べて見比べても違いが分からない程度まで寄せられました。
ただ、WordPressのテーマや設定を「変換」したわけではありません。
元のサイトを材料にして、EmDash(Astro)のコードとして書き直しています。
移行前と移行後の比較
同じ幅(1440px)で、同じ場所を撮って並べました。






スマートフォンの幅でも、メインビジュアルの縦積みやメニューの開閉を元と同じ考え方で作っています。

移行の手順
1. WordPress側の「見た目の材料」を集める
最初にやったのは、元のサイトの見た目がどこで決まっているかの棚卸しです。
SWELLのサイトでは、見た目の材料が5か所に散らばっていました。
| 材料 | WordPressでの置き場所 | EmDashでの置き場所 |
|---|---|---|
| メインカラー・黒・灰色 | SWELLのカスタマイザー(CSS変数 –color_main など) | theme.css の変数 |
| 独自のCSS | Arkhe CSS Editor と子テーマ | corp.css(新しく作成) |
| フォント | 子テーマに置いた Noto Sans JP の分割WOFF2(34ファイル) | public/fonts に同じファイルを置いた |
| メインビジュアル | SWELLのメインビジュアル設定 | トップページのコード |
| お問い合わせ帯・フッター | ブログパーツとウィジェット | レイアウトのコード |
| トップの中身 | 固定ページ(SWELLのカラム・フルワイド・ボタンなどのブロック) | トップページのコード |
色の値は、公開ページのCSS変数を読めば取れます。
独自CSSとブロックの構成は、管理画面とWP-CLIで書き出して確かめました。
画像は自社のサイトのものなので、そのまま持ってきています。
2. 色とフォントを theme.css に書く
EmDashのテンプレートは、色や余白を tokens.css に既定値として持ち、theme.css で上書きする作りです。
SWELLの設定値を、そのまま変数に写しました。
:root {
color-scheme: light; /* 元のサイトはライトモードだけ */
--corp-main: #b09d7b; /* SWELL の --color_main */
--corp-black: #202020;
--corp-gray: #e5e5ec;
--color-text: #333333;
--font-body: "NotoSansJP", sans-serif;
}フォントは、元のサイトで使っている分割済みのWOFF2ファイルと、読み込み用のCSSをそのまま使いました。
Noto Sans JPはオープンソースのライセンスなので、別のサイトに置いても問題ありません。
有料のフォントを使っているサイトでは、移行先のドメインで使えるかを先に確かめる必要があります。
3. ヘッダーとフッターをレイアウトに書く
ヘッダー・お問い合わせ帯・フッターは、全ページ共通のレイアウト(Base.astro)に書きました。
このファイルには、EmDashが動くための部品(EmDashHead など)も入っているので、そこは残して、見た目の部分だけを差し替えています。
テンプレートにあった検索窓とダークモードの切り替えは、元のサイトに無いので外しました。
メニューは、管理画面の「メニュー」に corp という名前のメニューがあればそれを使い、無ければ元のサイトと同じ5項目を出すようにしました。
WordPressと同じく、担当者が管理画面からメニューを変えられる形を残すためです。
4. トップページを組み直す
トップページ(index.astro)には、メインビジュアル・制作実績・私たちについて・実績の数字・サービス・お知らせの6つのセクションを書きました。
SWELLのブロック(カラム・フルワイド・ボタン)は持っていけないので、同じ見た目になるHTMLとCSSを書いています。
制作実績やサービスの文言は、コードの中に配列として持たせました。
5. お知らせはWordPressから取り込む
お知らせだけは、管理画面から増やせる形にしたかったので、WordPressの投稿を取り込みました。
WordPressのツールで書き出したファイル(WXR)を、EmDashの「インポート」に入れると、6件の投稿と7枚の画像がそのまま入りました。
カテゴリー「お知らせ」もそのまま移るので、トップではそのカテゴリーの新しい3件を出しています。
const { entries: news } = await getEmDashCollection("posts", {
where: { category: "news" },
orderBy: { published_at: "desc" },
limit: 3,
});取り込んだ投稿の本文は、普通の段落と画像だけで書かれていたので、崩れずに移りました。
テーマ独自のブロックがある記事の崩れ方は「EmDashの管理画面でできること」のインポートの節で触れています。
6. 並べて見比べ、違いを直す
ローカルで表示して元のサイトと並べると、最初の段階で3つの違いが見つかりました。
| 見つかった違い | 原因 | 直し方 |
|---|---|---|
| 画面の左右に縦の細い線が出る | EmDashのテンプレートが持っている飾りの線 | CSSで消した |
| サービスの画像が入れ替わっていた | ブロックの並び順を読み違えた | 元の並びに合わせて直した |
| フッターのロゴが見えない | 黒いロゴを、元のサイトはCSSで反転して白く見せていた | 同じ指定を足した |
2つ目と3つ目は、元のサイトのコードを読むだけでは気づけず、画面を並べて初めて分かりました。
見た目の移行では、最後に「同じ幅・同じ位置で並べて見る」工程を入れたほうがいいと感じました。
7. 検証用であることを示して公開する
元のサイトと内容が同じなので、検索エンジンには出さない設定(noindex)にしました。
あわせて、ページの上部に「移行の検証用のデモ」である旨と、正式なサイトへのリンクを出しています。
コードは npm run deploy の1回でCloudflareに公開されます。
やってみて分かったこと
見た目の情報は、テーマの設定より独自CSSに多くある
SWELLの設定から取れたのは、色や一部の余白だけでした。
ボタンの形、見出しの大きさ、メニューの最後の項目だけ色を変える指定などは、独自CSSに書かれていました。
移行の見積もりでは、テーマの設定画面より、独自CSSと子テーマの量を見るほうが実態に近いはずです。
文言をコードに置くと、担当者が更新できなくなる
今回はトップの文言をコードに書いたので、キャッチコピーや実績の数字を変えるには、コードの編集とデプロイが要ります。
WordPressでは管理画面のブロックを直すだけで済んでいた部分です。
実際のお仕事で移すなら、更新したい文言はEmDashの「コンテンツタイプ」に欄を作って、管理画面から変えられるように設計する必要があります。
作業時間はAIを使って約30分だった
元のサイトの調査から本番への公開まで、トップ1ページで約30分でした。
コードはAIのコーディング道具に書かせ、人は見比べと判断を受け持っています。
下層ページ・問い合わせフォーム・検索などは含んでいないので、サイト全体の移行の目安にはなりません。
トップの表示は、無料プランでも落ちなかった
公開後にトップを20回、お知らせの一覧を10回開いたところ、すべて正常に表示されました(2026年10月24日)。
一方、管理画面での作業は、無料プランだとCPU時間の上限で落ちることがあります(「EmDashは無料で使えるのか」)。
移行を頼む前に確かめておくこと
- 見た目の材料(テーマ設定・独自CSS・子テーマ・ブログパーツ)がどこにどれだけあるか
- 有料フォントを使っている場合、新しいドメインでも使えるか
- 担当者が管理画面から変えたい文言・画像はどこか(コードに置くと変えられない)
- 問い合わせフォーム・検索・会員機能など、見た目以外の機能をどう作り直すか
- 古いURLから新しいURLへの転送をどう用意するか
見た目を移すこと自体は、今回の検証で十分にできると分かりました。
費用と期間を左右するのは、見た目より、更新のしやすさと機能の作り直しのほうです。
よくある質問
Q. SWELLのテーマをEmDashに入れることはできますか
できません。
SWELLはWordPressのテーマなので、EmDashでは動きません。
見た目を同じにしたい場合は、今回のようにEmDash(Astro)のコードとして作り直します。
Q. ブロックエディターで作ったページの見た目は移りますか
取り込み機能で文章と画像は移りますが、テーマ独自のブロックの見た目は移りません。
段落・見出し・リスト・表・画像だけのページは、ほぼそのまま表示されます。
Q. 移行後に見た目を変えるにはどうしますか
CSSやレイアウトのファイルを編集して、もう一度デプロイします。
管理画面の設定だけで色やレイアウトを変える仕組みはありません。
まとめ
- WordPress(SWELL)のトップを、EmDashで並べても見分けにくい程度まで同じ見た目にできた
- やったのは「変換」ではなく、元のサイトを材料にしたコードの書き直し
- 色とフォントは設定値とファイルをそのまま、ヘッダー・フッター・トップはHTMLとCSSで作り直した
- お知らせはWordPressから取り込み、管理画面から増やせる形で表示できた
- トップの文言をコードに置くと、担当者が更新できなくなる点は設計で補う必要がある
WordPressのサイトをEmDashへ移す作業は、当社でもご相談をお受けしています。
進め方と移せる範囲は「WordPressからEmDashへの移行」のページにまとめています。
今のサイトで移せるところ・作り直しが要るところの見立てから、お問い合わせください。
出典
- EmDash:Themes:テーマはAstroのプロジェクトとして配られ、作成後はサイトのファイルになる
- EmDash:Migrate from WordPress:WordPressからの取り込み
- emdash.motoki-dev.com/case/motoki-top/:今回作り直した検証用のページ
- motoki-design.co.jp:移行元のWordPressサイト



