ダークモードをWordPressに実装します。プラグインは必要ありません。
1.JavaScriptの記述
ヘッダーに以下のjsコードを記述してください。
document.addEventListener('DOMContentLoaded', function() {
const toggleButtons = document.querySelectorAll('.toggle-mode');
toggleButtons.forEach(function(button) {
button.addEventListener('click', function() {
const currentMode = localStorage.getItem('data-mode');
const newMode = currentMode === 'dark' ? 'light' : 'dark';
localStorage.setItem('data-mode', newMode);
applySavedMode();
});
});
applySavedMode();
});
function applySavedMode() {
const savedMode = localStorage.getItem('data-mode');
if (savedMode === 'light') {
document.documentElement.setAttribute('data-mode', 'light');
} else if (savedMode === 'dark') {
document.documentElement.setAttribute('data-mode', 'dark');
}
}
2.Cssの記述
Cssファイルに以下コードを記述してください。
/*ダークモード制御*/
html[data-mode="dark"] {
filter: invert(1) hue-rotate(180deg);
}
html[data-mode="dark"] img {
filter: invert(1) hue-rotate(180deg);
}
html[data-mode="dark"] iframe {
filter: invert(1) hue-rotate(180deg);
}
/*切替アイコン*/
.toggle-mode{
height: 7px;
padding: 0;
margin: 0;
}
上記切替アイコンのcssはお好みで変更してください。
3.HTMLの記述
切替アイコン(.svg)を表示させたい場所に以下コードを記述してください。アイコンはお好みで。マークアップでないと反転しませんので必ずマークアップを記述してください。
<button class="toggle-mode"><svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" width="25" height="25" viewBox="385 385 30 30"><path d="M400 392.48a7.52 7.52 0 1 0 0 15.04 7.52 7.52 0 0 0 0-15.04z"/><path d="M415 400c-4.58-2.87-5.75-5.48-4.4-10.6-5.12 1.35-7.73.18-10.6-4.4-2.87 4.58-5.48 5.75-10.6 4.4 1.35 5.12.18 7.73-4.4 10.6 4.58 2.87 5.75 5.48 4.4 10.6 5.12-1.35 7.73-.18 10.6 4.4 2.87-4.58 5.48-5.75 10.6-4.4-1.35-5.12-.18-7.73 4.4-10.6zm-15 9.83a9.83 9.83 0 1 1 0-19.66 9.83 9.83 0 0 1 0 19.66z"/></svg></button>
以上、たったこれだけでダークモード実装完了です。
コード
サーバー内でzipファイルを解凍する方法
解凍したいファイルを「example.zip」とします。 1. 1:解凍したいzipファイルをアップロード2. 2:unzip.phpの作成・アップロード3. 2:unzip.phpにアクセス4. 3...
続きを見るWeb Wordpress コード セキュリティ
php.iniの情報を隠す方法。WordPress
php.ini情報を隠すとサイトのセキュリティが向上します。 Webサイトを保守するために、是非参考にされてみてください。 1. 「php.ini」ファイルに記述2. 「.htaccess」ファイルに...
続きを見るWeb コード プラグインなし
長いリンク(URL)がはみ出すときのCSS。スマホでも対策OK!
スマートフォンで見ると、長いリンクが横にはみ出している場合があります。そんなときは下記スタイルで対処できます。 a{word-break: break-all;}
続きを見るCDN Web スピード セキュリティ
CloudflareでCDN配信してもAdSense収益が減ることはない?各種設定方法。
1. Adsenseの影響について2. 原因は個々のIPがCloudflareを通すことで区別がつかなくなっていること(Cloudflareを通すと全て同じIPになる)3. Nginxで個別のIPを区...
続きを見るWeb Woocommerce Wordpress コード プラグインなし
Woocommerceの属性に「親」と「子」を割り当てたい!プラグインなしで可能にする方法。
Woocommerceの「属性」にカテゴリーのように「親」と「子」を作成できればいいと思ったことはありませんか? かつてはこの機能がありましたがバージョンアップを経てなくなってしまいました。 現在のバ...
続きを見るスポンサー
DAIKICI(大吉)スポンサー募集開始しました!
この度、DAIKICI(大吉)スポンサーの募集を開始させていただきました。 スポンサー 様々なプランや特典をご用意させていただいております。 ご支援いただきました資金は、数あるプロジェクトの実現のため...
続きを見るWeb スピード
Webサイトの表示速度を加速させる画像圧縮Webツール。
Webサイトの表示速度を向上させるためには、いくつか方法がありますが、まずは画像のサイズを最適化することが効果的です。 その場合は下記のような画像圧縮Webツールを利用することをおすすめします。 メリ...
続きを見るWeb Wordpress コード セキュリティ
wp-config.phpへのアクセスを禁止する方法。WordPress
wp-config.phpへのアクセスを禁止するとサイトのセキュリティが向上します。 Webサイトを保守するために、是非参考にされてみてください。 「.htaccess」ファイルに下記コードを記述して...
続きを見るWeb Wordpress コード プラグインなし
プラグインなし!内部・外部リンク対応のブログカードを表示する方法。|WordPress
WordPressで、プラグインを使わずにブログカードを表示する方法をご紹介致します。 プラグイン不使用には、サーバー負荷の軽減やサイト表示速度の保持など様々なメリットがあります。 WordPress...
続きを見るWeb Wordpress コード スピード
コンタクトフォーム7(Contact Form 7)指定ページのみjsとcssを読み込ませる方法。|WordPress
WordPressで、プラグインを使わずにContactForm7のjsとcssを指定ページのみ読み込ませる方法をご紹介します。 通常ContactForm7を導入すると、すべてのページでjsとcss...
続きを見る