ツール一覧 / AI活用ノート / WordPressにアニメーションを付ける3つの方法|重さ・壊れにくさで比較
WordPressのブロックをスクロールでフワッと出したい人向けに、プラグイン・コード貼り付け・テーマ機能の3つの方法を、手軽さ・重さ・壊れにくさで比べました。WP7.0で変わった画面、scriptが消える原因、動きを減らす設定への対応までまとめています。
結論: まず自分のテーマの機能を確認し、無ければ無料プラグインを1ブロックで試す。細かく作り込むのはそのあとです。
- テーマにアニメーション機能がある → テーマの機能を使う
- 無い・すぐ試したい → 無料プラグイン
- 動きを細かく決めたい・プラグインを増やしたくない → CSSやHTMLの貼り付け
クライアントから「見出しをフワッと出せませんか」と頼まれて、プラグインを探し始めたところ。検索で上に出てくる記事は、ほとんどが同じプラグインの使い方です。
ただ、方法は3つあります。どれが合うかは「あとで外したとき何が残るか」で決まります。公式ドキュメントとプラグインの公式ページをもとに比べました。
手軽さならプラグイン、自由度ならコード、見た目のそろい方ならテーマの機能です。
| プラグイン | コード貼り付け | テーマの機能 | |
|---|---|---|---|
| 手軽さ | ◎ サイドバーで選ぶだけ | △ CSSを書く | ◎ テーマの設定で選ぶ |
| 重さ | プラグインによる | 書いたぶんだけ | テーマによる |
| 外したとき | ブロックが壊れることがある | テーマを変えると効かなくなる | テーマを変えると使えなくなる |
← 表は横にスクロールできます →
選び方の基準:公式ドキュメントに書かれた動き方と、外したときに何が残るかの2点で比べました。
無料プラグインを1つ入れて、ブロック設定のサイドバーから選びます。 名前が挙がりやすい2つは、向いている人が違います。


| 2026年10月時点 | Blocks Animation | Animations for Blocks |
|---|---|---|
| 有効インストール数 | 90,000+ | 10,000+ |
| 必要なWP / PHP | 6.6以上 / 5.4以上 | 6.6以上 / 8.1以上 |
| 動作確認済み | 7.0.7 | 7.1.3 |
| 向いている人 | 種類を多く選びたい人 | 軽さと配慮を重視する人 |
← 表は横にスクロールできます →
Animations for Blocksは、読み込むファイルがCSS 2.8kB、JS 5.2kB、初期化用1.3kBと公式に書いてあります。合計で約9kB。読み込むファイルの大きさまで載せているプラグインは少ないので、ここは見ていてうれしいポイントでした。
選ぶ前に確認しておくと安心なのは、外し方です。Animations for Blocksの公式ページには、止めるとアニメーションを付けたブロックが「無効なブロック」になることがあると書かれています。止める前にアニメーションを外すか、「ブロックのリカバリーを試行」を使ってください。

3つとも「何かを替えたとき」に影響が出ます。替えるものが違うだけです。

VK BlocksのアニメーションはPro版だけの機能です。お使いのテーマにアニメーション機能があるかは、テーマの公式マニュアルで確かめるのがいちばん早いです。

ブロック1つだけなら、ブロック設定の「高度な設定」にある「カスタムCSS」欄です。 WordPress 7.0から使えるようになりました。
| 書く場所 | 使えるテーマ | メモ |
|---|---|---|
| 外観 → カスタマイズ → 追加CSS | クラシックテーマ | 4.7から |
| サイトエディター → スタイル | ブロックテーマ | 6.2から |
| ブロックの「カスタムCSS」欄 | ブロックごとに指定 | 7.0から。セレクタは書かず中身だけ。入れ子は& |
← 表は横にスクロールできます →
ブロックごとの欄は、edit_css権限が無い人には表示されません。カスタムHTMLブロックや再利用ブロックなど、使えないブロックもあります。
1つ詰まりそうなところがあります。公式の解説記事のコメント欄で、この欄ではメディアクエリ(画面幅で切り替える書き方)が効かないと報告されています。開発者は7.1で安定させる予定と答えていました。スマホだけ止めたいなら、いまのところ追加CSSに書くほうが確実です。
原因はたいてい「権限」か「サーバーのWAF」のどちらかです。
unfiltered_html権限がある人にしか出ません。権限の無い人(寄稿者など)が保存すると、<script>は消されますWAFを切るのは、原因を切り分けるための一時的な手段にとどめてください。確かめたら元に戻します。

transformとopacityだけで動かし、「動きを減らす」設定の人には止めます。 これが基本の形です。
.fade-up {
opacity: 0;
transform: translateY(24px);
transition: opacity .8s ease-out, transform .8s ease-out;
}
.fade-up.is-in {
opacity: 1;
transform: none;
}
@media (prefers-reduced-motion: reduce) {
.fade-up { opacity: 1; transform: none; transition: none; }
}
スクロールで見えたときにis-inを付けるには、短いJSが要ります。カスタムHTMLのJS欄に入れる例です。
const io = new IntersectionObserver((entries) => {
entries.forEach((e) => {
if (e.isIntersecting) { e.target.classList.add('is-in'); io.unobserve(e.target); }
});
});
document.querySelectorAll('.fade-up').forEach((el) => io.observe(el));
対象のブロックには、「高度な設定」の「追加CSSクラス」にfade-upと入れます。ここが一番見落としやすいのですが、JSが動かないと要素は透明のまま残ります。Animations for Blocksの公式ページにも同じ注意が書いてあり、プラグインでもコードでも起きることだと分かります。
生成AIに頼むなら、こう書くと手直しが少なくて済みます。
transformとopacityだけで動かすフェードインのCSSを書いてください。prefers-reduced-motion: reduceのときは動かさないでください。topやleftは使わないでください。
| 出てきたコードの確認ポイント | 理由 |
|---|---|
top・left・widthで動かしていない |
レイアウトのずれ(CLS)の原因になる |
prefers-reduced-motionが入っている |
動きが苦手な人への配慮 |
| 外部ライブラリを読み込んでいない | 重くなる・WAFに止められやすい |
← 表は横にスクロールできます →
web.devでは、CLSは0.1以下が「良好」とされています。transformで動かせば、このずれは起きません。
Q. スマホだけアニメーションを止められますか? VK Blocksには、スマホ幅でアニメーションを止めるオプションがあります。それ以外は、追加CSSにメディアクエリを書いて止めます。
Q. 動きを減らす設定って、対応したほうがいいですか? したほうがいいです。iPhoneの「視覚効果を減らす」やMacの「動きの抑制」などがこの設定です。Animations for Blocksは、初期設定でこの人たちにはアニメーションを見せません。
Q. プラグインとテーマの機能を両方使ってもいいですか? 同じブロックに重ねると、動きがぶつかることがあります。1ブロックにはどちらか1つにしておくと、外すときも迷いません。
transformとopacityだけ。prefers-reduced-motionで止める次にやることは1つです。いま使っているテーマのマニュアルで「アニメーション」を検索してみてください。プラグイン選びはそのあとで間に合います。
この記事は、Webサイトの動く部品集 AETHER Motion の制作チームが書いています。