
投稿記事内だけでJavaScriptを動かす方法

WordPress+Cocoonでブログを書いていると、ときどき
- この記事の中だけで、ちょっと動く JavaScript を入れてみたい
- でも、テーマの
functions.phpはあまり触りたくない - 子テーマの編集も、なんか怖い…
という場面がありませんか?

あっ、ぼくは、そういうの触らない主義なんで……。

やっぱり、ありますよね😊
今日は、そんなときに使える
「functions.php を一切いじらず、投稿記事内だけで完結する JavaScript の入れ方」 をメモしておきます。
🔐 テーマ編集なし・Cocoonの設定変更なし
👉 投稿本文の中だけで完結する方法です。
1.今回の前提(WordPress+Cocoon)
今回の想定はこんな感じです。
テーマ:Cocoon または Cocoon 子テーマ
functions.php や PHPファイルは一切編集しない
投稿本文の中だけで JavaScript を完結させる
この前提のもとで、次の章のように 「カスタムHTML」ブロックにコードをまとめて貼ることで、
その記事の中だけで動く JS デモが作れます。
2. ボタンを押すとメッセージボックス(モーダル)が表示されるサンプル

さっそく、実際に動くサンプルを置いておきます。
ボタンを押すと、画面中央にメッセージボックス(モーダルウィンドウ)が表示されて、うさちゃんのメッセージがポップアップします。

上のサンプルを動かすためには、このブロック全体を、投稿の「カスタムHTML」ブロックにコピペすればOKです。
<div class="usaneko-js-sample-box">
<button id="usaneko-js-sample-button" type="button">
メッセージを表示する
</button>
</div>
<!-- ▼ モーダル本体 -->
<div class="usaneko-js-modal" id="usaneko-js-modal" aria-hidden="true">
<div class="usaneko-js-modal-bg"></div>
<div class="usaneko-js-modal-content" role="dialog" aria-modal="true">
<p class="usaneko-js-modal-message">
🐰ボタンが押されました🐱<br>ありがとうございます 🐯
</p>
<button type="button" class="usaneko-js-modal-close">閉じる</button>
</div>
</div>
<style>
/* ▼ デモボックス */
.usaneko-js-sample-box{
border: 1px solid #cde7d8;
background: #f7fffb;
padding: 16px;
border-radius: 8px;
max-width: 320px;
margin: 1.5em auto; /* ← 左右 auto で枠ごと中央寄せ */
text-align: center; /* ← 中のボタンも中央寄せ */
}
.usaneko-js-sample-box p{
margin: 0 0 12px;
}
.usaneko-js-sample-box button{
padding: 6px 16px;
border-radius: 999px;
border: none;
cursor: pointer;
background: #54c2a8;
color: #fff;
font-size: 14px;
}
.usaneko-js-sample-box button:hover{
opacity: .9;
}
/* ▼ モーダル共通 */
.usaneko-js-modal{
position: fixed;
inset: 0;
display: none; /* 初期状態:非表示 */
align-items: center;
justify-content: center;
z-index: 9999;
}
.usaneko-js-modal.is-active{
display: flex; /* 表示状態 */
}
.usaneko-js-modal-bg{
position: absolute;
inset: 0;
background: rgba(0,0,0,.4);
}
.usaneko-js-modal-content{
position: relative;
z-index: 1;
background: #ffffff;
border-radius: 12px;
padding: 20px 24px;
max-width: 320px;
box-shadow: 0 10px 25px rgba(0,0,0,.15);
text-align: center;
}
.usaneko-js-modal-message{
margin: 0 0 16px;
}
.usaneko-js-modal-close{
padding: 6px 16px;
border-radius: 999px;
border: none;
cursor: pointer;
background: #54c2a8;
color: #fff;
font-size: 14px;
}
.usaneko-js-modal-close:hover{
opacity: .9;
}
</style>
<script>
// ▼ この投稿ページ「だけ」で動くシンプルなモーダルJS
document.addEventListener('DOMContentLoaded', function () {
var button = document.getElementById('usaneko-js-sample-button');
var modal = document.getElementById('usaneko-js-modal');
if (!button || !modal) return;
var closeBtn = modal.querySelector('.usaneko-js-modal-close');
var bg = modal.querySelector('.usaneko-js-modal-bg');
// モーダルを開く
button.addEventListener('click', function () {
modal.classList.add('is-active');
modal.setAttribute('aria-hidden', 'false');
});
// モーダルを閉じる(閉じるボタン/背景クリック)
function closeModal() {
modal.classList.remove('is-active');
modal.setAttribute('aria-hidden', 'true');
}
if (closeBtn) {
closeBtn.addEventListener('click', closeModal);
}
if (bg) {
bg.addEventListener('click', closeModal);
}
});
</script>
3.設置手順(Cocoon+ブロックエディター)
・WordPress 管理画面 → 「投稿」→ 追加 or 編集
・本文の好きな位置で「+」→ 「カスタムHTML」 を選択
・この記事で紹介したコードブロック全体を丸ごと貼り付け
・「プレビュー」でボタンを押して、モーダルが開くか動作確認
・OKなら「公開」または「更新」をクリック
まとめ

functions.php は触りたくないけど、投稿記事内だけでちょっとした JavaScript を動かしたいときは「カスタムHTML」ブロックが一番手軽です。
HTML・CSS・JavaScript(<style> / <script>タグ)をひとまとめにしておけば、1記事完結の小さなデモとして管理しやすくなります。
本格的に使い回したくなったら、そのときにあらためて「ショートコード化+functions.php 編集」を検討すればOKです😊

ぼくにはさっぱりですが、そういうことです。
WordPress+Cocoonを始めるなら「エックスサーバー」がおすすめ!
「これからWordPress+Cocoonでブログを作りたい!」という方には、
国内シェアNo.1の高速レンタルサーバー エックスサーバーがぴったりです。
- 🚀 WordPressクイックスタート対応(最短10分でブログ開設)
- 🪄 Cocoonテーマの自動インストールにも対応
- 🔒 無料独自SSL/高セキュリティ/自動バックアップ完備
- ☁️ 高速SSD・安定稼働率99.99%以上
- 💰️ スタンダード 月額料金 990円~ 693円~(キャンペーン中なら) 2025/11現在
「WordPress × Cocoon」を最もスムーズに始められる環境が整っています。
👉 今すぐチェック:レンタルサーバー エックスサーバー
免責事項
本記事のサンプルプログラムは実行を保証するものではなく、利用に伴う結果について一切の責任を負いません。
