. SWELL│トップページでローディング画面を表示する方法│ロゴアニメーション│スプラッシュ画面
SWELL│トップページでローディング画面を表示する方法│ロゴアニメーション│スプラッシュ画面
SWELL│トップページでローディング画面を表示する方法│ロゴアニメーション│スプラッシュ画面

SWELL│トップページでローディング画面を表示する方法│ロゴアニメーション│スプラッシュ画面

SWELL│トップページでローディング画面を表示する方法│ロゴアニメーション│スプラッシュ画面 2024 9/20 SWELLカスタマイズ 2024.09.20

トップページにアクセスした時に簡単なロゴアニメーションを表示(スプラッシュ画面)させてみました。

SWELL以外のテーマでも再現可能です。※再利用ブロック等を使ってください。

※GIFアニメーションは倍速になってしまってます

その備忘録です。

目次

著者

motoki

WEB制作をしているデジタルノマド WordPressのカスタマイズが好きで、色々と自作しています。

WordPressのカスタマイズに困ったらご相談ください!

MOTOKI合同会社 カスタマイズの依頼・相談

SWELLでトップページでロゴアニメーションするローディング画面を作成する方法

作り方は簡単です。

ブログパーツとCSSとJSで作成できます。

STEPロゴ画像をブログパーツに配置する

ブログパーツを開いて、背景用にフルワイドを作成。

その中にロゴ画像も入れましょう。

フルサイドの追加CSSクラスにはloader-overlayと記述しておきます。

作成したブログパーツのショートコードはメモしておきましょう。

画像との境目がわかりやすいようにフルワイドの背景色をグレーにしていますが、黒にしております。

CSSではなくブログパーツで要素の見た目を整えるようにしています。

STEPCSSの挿入

追加CSSやStyle.cssなどに以下のCSSを挿入してください。

今回はロゴ部分はスケールとフェードのアニメーション、フルワイドの部分にフェードのアニメーションを入れております。

この部分は好きなように変更してみてください。

/* ローディング画面表示 */ .loader-overlay { position: fixed; top: 0; left: 0; z-index: 9999; width: 100vw; height: 100vh; display: flex; align-items: center; justify-content: center; pointer-events: none; /* ローディング中にクリックを無効化 */ animation: overlayFadeOut 2.5s 2s forwards; } .loader-overlay img { width: 360px; /* PCのロゴ画像のサイズ */ opacity: 0; transform: scale(0.9); /* 初期状態は少し小さく */ animation: logoFadeZoom 1.5s ease-out forwards, logoFadeOut 1.5s 1.5s ease-out forwards; /* ロゴのフェードインとフェードアウトアニメーション */ } @media screen and (max-width: 959px) { .loader-overlay img { width: 180px; /* スマホのロゴ画像のサイズ */ } } /* ローディング画面全体のフェードアウトアニメーション */ @keyframes overlayFadeOut { 0% { opacity: 1; } 100% { opacity: 0; visibility: hidden; } } /* ロゴのズームインとフェードインのアニメーション */ @keyframes logoFadeZoom { 0% { opacity: 0; transform: scale(0.9); /* 少し小さい状態から始める */ } 100% { opacity: 1; transform: scale(1); /* 徐々にフェードインしながら元のサイズに */ } } /* ロゴがフェードアウトのアニメーション */ @keyframes logoFadeOut { 0% { opacity: 1; transform: scale(1); /* フェードアウト前の状態を維持 */ } 100% { opacity: 0; transform: scale(1); /* 少し大きくしてふわっと消える */ } } STEPfunctions.phpにコードを挿入

外観、テーマエディタのfunctions.phpに以下のコードを挿入します。

エラーが怖い人はCode Snippetsのプラグインを入れて、そこにコードを挿入しましょう。

ショートコードのIDは適宜、変更してください。

function insert_loading_screen_to_front_page() { if (is_front_page()) { //トップページの場合 // ショートコードでローディング画面を挿入 echo do_shortcode('[blog_parts id="270"]'); } } add_action('wp_head', 'insert_loading_screen_to_front_page'); function enqueue_loading_screen_script() { echo <<< EOM <script> window.onload = () => { const loaderOverlay = document.querySelector('.loader-overlay'); const content = document.getElementById("content"); const fixHeader = document.getElementById("fix_header"); // コンテンツとヘッダーの初期状態 content.style.zIndex = 9999; if (fixHeader) { fixHeader.style.opacity = 0; } // ローディング画面をフェードアウト setTimeout(() => { loaderOverlay.style.opacity = '0'; loaderOverlay.style.visibility = 'hidden'; content.style.zIndex = 1; if (fixHeader) { fixHeader.style.opacity = 1; } }, 3000); // 3秒後にローディングがフェードアウト }; </script> EOM; } add_action('wp_footer', 'enqueue_loading_screen_script');

他の追従パーツ表示のカスタマイズとの競合を防ぐためにJSのタイミングは遅くしています。

STEP確認

あとはトップページを更新してアニメーションを確認しましょう。

※GIFアニメーションは倍速になってしまってます

以上です。

まとめ

個人的にサイトのローディングアニメーション表示は好きではないのですが、

リッチに見せたいサイトの場合は必要なので、シンプルなものを入れてみました。

もっと凝ったものを作りたい場合はプラグイン等を使うことをおすすめします

SWELLカスタマイズ
  • URLをコピーしました!

WAZAの有料記事のサブスクリプションも開始しました。

あわせて読みたい アフィリエイト付き!有料記事のサブスクリプションについて WAZAでは特に有益な記事は有料記事とさせていただいてます。 本記事では有料記事をリストでまとめました。 また有料記事の読み放題のサブスクリプション、そして有料記...

サービス

Service

WordPressサイトのカスタマイズのサービスに関心がありましたら、ぜひ詳細をご覧ください。

詳細を見る 全サービス一覧

関連記事

📎📎📎📎📎📎📎📎📎📎