WordPress添加夜间模式cookie版 -7b2主题修改

将下列代码放入子主题 child.js 文件中 //夜间模式 (function(){ if(document…

将下列代码放入子主题 child.js 文件中

    //夜间模式
(function(){
    if(document.cookie.replace(/(?:(?:^|.*;s*)nights*=s*([^;]*).*$)|^.*$/, "$1") === ''){
        if(new Date().getHours() > 22 || new Date().getHours() < 6){
            document.body.classList.add('night');
            document.cookie = "night=1;path=/";
            console.log('夜间模式开启');
        }else{
            document.body.classList.remove('night');
            document.cookie = "night=0;path=/";
            console.log('夜间模式关闭');
        }
    }else{
        var night = document.cookie.replace(/(?:(?:^|.*;s*)nights*=s*([^;]*).*$)|^.*$/, "$1") || '0';
        if(night == '0'){
            document.body.classList.remove('night');
        }else if(night == '1'){
            document.body.classList.add('night');
        }
    }
})();
//夜间模式切换
function switchNightMode(){
    var night = document.cookie.replace(/(?:(?:^|.*;s*)nights*=s*([^;]*).*$)|^.*$/, "$1") || '0';
    if(night == '0'){
        document.body.classList.add('night');
        document.cookie = "night=1;path=/"
        console.log('夜间模式开启');
    }else{
        document.body.classList.remove('night');
        document.cookie = "night=0;path=/"
        console.log('夜间模式关闭');
    }
}

将下列代码加入到 主题或子主题 header.php 文件中
具体位置 在17行后

  1. <?php echo($_COOKIE['night'] == '1' ? 'night' : ''); ?>

将下列代码放入想要展示的地方即可调用切换开关.

  1. <a href="javascript:switchNightMode()" target="_self">查看效果</a>

比如跟本站一样的位置,

b2/Modules/Templates/Header.php 406行插入下面代码,

  1. <div class="top-search-icon mobile-show"><a href="javascript:switchNightMode()" target="_self"><svg class="icon" aria-hidden="true"><use xlink:href="#icon-liangdu"></use></svg></a></div>

最后,调试CSS,body.night xxx ,xxx覆盖替换的css样式,body.night .site 是把背景颜色降低亮度,

body.night .site{
    background-color: #353535;
}

此文转载至 https://xptt.com/653884.html

类别:WordPress教程

本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。

评论 (0)COMMENT

登录 账号发表你的看法,还没有账号?立即免费 注册