Hello目前我在wordpress主题中使用Simple weather JS(http://simpleweatherjs.com/)来显示实时天气以及我正在使用redux框架的选项。我为"您所在城市的名称"创建了一个文本字段。我的选项唯一ID是> " cpv-hm-cat-op-8"。 My Redux框架选项的预览如下所示。
array(
'id' => 'cpv-hm-cat-op-8',
'type' => 'text',
'title' => __( 'Name of your city', 'redux' ),
'desc' => __( 'Write your city which you want to show in weather', 'redux' ),
'default' => 'New York',
),
现在我想在我的简单天气JS文件中使用该选项,我想要我的输出,当我在该城市的天气输入我的城市名称。简单的天气js选项看起来像=>
$.simpleWeather({
location: 'New Jersey',
woeid: '',
unit: 'c',
success: function(weather) {
html = '<h2><i class="symbol-weather icon-'+weather.code+'"></i> '+weather.temp+'°'+weather.units.temp+'</h2>';
html += '<ul><li>'+weather.city+'</li>';
$("#weather").html(html);
},
error: function(error) {
$("#weather").html('<p>'+error+'</p>');
}
});
这里&#34;位置&#34;我想添加我的redux插件选项。但它不起作用。
$.simpleWeather({
location: '<?php global $cpv; echo $cpv['cpv-hm-cat-op-8'];?>',
请帮助我如何添加我的redux框架选项。
答案 0 :(得分:1)
我找到了解决方案,它对我有用,但我不知道它是否是理想的解决方案。
我的解决方案是将值添加到页面的头部,因此可以访问其他钩子。确保在需要此代码的代码之前加载此代码(将所有其他内容加载到以前的页脚)
在function.php中添加
add_action ( 'wp_head', 'yourjs' );
function yourjs(){ global $cpv; //your global redux Var ?>
<script type="text/javascript">
var weatherinfo = <?php echo json_encode( array(
'city' => $cpv['cpv-hm-cat-op-8'],
'zip' => $cpv['cpv-hm-cat-op-7'], // just an example for another value in the array
) ); ?>
</script><?php
}
这将放在页面的标题中,如:
<script type="text/javascript">
var weatherinfo = {"city":"Austin","zip":"12345"} </script>
所以现在您可以在代码中访问一系列值 - 只需调用var。
希望这会对你有所帮助。