修复一为导航V4主题天气插件不显示问题

wordpress2个月前更新 qingcheng
0 0
推荐使用一为导航主题
  1.  前置流程:
    1. 登陆 心知天气 https://www.seniverse.com/login
    2. 再前往token申请页 https://www.seniverse.com/widgetv3 (如果没登陆,会一直表演转圈圈)
    3. 获取到token后,打开/wp-content/themes/onenav/inc/functions/functions.php文件,拉到最下方替换整段有关心知天气的代码段
    4. 填写代码最下面的token区域
    5. 温馨提示,操作前请做好备份,以免出现未知问题
      隐藏内容!
      登录后才能查看!
/**
 * 知心天气(适配 Seniverse Weather Widget v2)
 * @return void
 */
function io_get_weather_widget($html = '') {
    // 设置语言映射
    $locale = 'zh-Hans'; // 默认简体中文
    switch (get_locale()) {
        case 'zh':
        case 'zh_CN':
            $locale = 'zh-Hans'; // 简体中文
            break;
        case 'zh_TW':
        case 'zh_HK':
            $locale = 'zh-Hant'; // 繁体中文
            break;
        case 'pt_PT':
        case 'pt_BR':
        case 'pt_AO':
            $locale = 'pt';      // 葡萄牙语
            break;
        case 'ja':
            $locale = 'ja';      // 日语
            break;
        case 'en_AU':
        case 'en_GB':
        case 'en_US':
        default:
            $locale = 'en';      // 英语
            break;
    }

    // 输出 HTML 容器
    echo '<div id="tp-weather-widget">'.$html.'</div>';

    // 加载 Seniverse 天气插件 JS
    echo '
    <script>
        (function(a,h,g,f,e,d,c,b){
            b=function(){
                d=h.createElement(g);
                c=h.getElementsByTagName(g)[0];
                d.src=e;d.charset="utf-8";d.async=1;
                c.parentNode.insertBefore(d,c);
            };
            a["SeniverseWeatherWidgetObject"]=f;
            a[f]||(a[f]=function(){(a[f].q=a[f].q||[]).push(arguments)});
            a[f].l=+new Date();
            if(a.attachEvent){a.attachEvent("onload",b)}else{a.addEventListener("load",b,false)}
        })(window,document,"script","SeniverseWeatherWidget","//cdn.sencdn.com/widget2/static/js/bundle.js?t="+parseInt((new Date().getTime() / 100000000).toString(),10));
    </script>';
    
// 下列代码建议做js代码加密,不做加密前端会获取到用户token,切记!
// 初始化并展示天气插件
    echo "
    <script>
        window.SeniverseWeatherWidget('show', {
            flavor: 'slim',
            location: 'WX4FBXXFKE4F',
            geolocation: true,
            language: '{$locale}',
            unit: 'c',
            theme: 'auto',
            token: '替换为你自己的TOKEN',
            hover: 'enabled',
            container: 'tp-weather-widget'
        });
    </script>";
}
修复一为导航V4主题天气插件不显示问题
© 版权声明

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...