我想在wordpress中混合使用jQuery和php。
这是我目前的代码:
function theme_output($url) {
echo "<script language='text/javascript'>
jQuery(function($) {
var $products,
$current_product = 'default';
// List all the products here
$products = {
";
$themes = array('cerulean', 'cosmo', 'cyborg', 'darkly', 'flatly', 'journal', 'lumen', 'paper', 'readable', 'sandstone', 'simplex', 'slate', 'spacelab', 'superhero', 'united', 'yeti');
foreach ($themes as $theme) {
echo
$theme." : {
name : '".ucfirst($theme)."',
tag : 'phpBB',
img : '".css_file($theme)."',
url : '".$url."?theme=".$theme."',
purchase : 'http://www.google.de',
},";
};
echo "
};
});
</script>";
};
所以有一个&#34;标题&#34;在jquery / javascript中然后是一个foreach php部分,至少是一个jquery&#34; footer&#34;一部分。
问题是,wordpress没有冲突(我猜这就是原因),删除所有$变量。
这是输出:
有人可以帮我解决这个问题吗?
谢谢
答案 0 :(得分:1)
解决问题的一种方法是将foreach部分放入自己的函数中。 你也应该改变&#34;而且&#39;。
像这样:
function theme_output($url) {
echo '
<script type="text/javascript">
var $products,
$current_product = "default";
// List all the products here
$products = {
';
funct2($url);
echo '
};
</script>';
};
function func2($url) {
$themes = array('cerulean', 'cosmo', 'cyborg', 'darkly', 'flatly', 'journal', 'lumen', 'paper', 'readable', 'sandstone', 'simplex', 'slate', 'spacelab', 'superhero', 'united', 'yeti');
foreach ($themes as $theme) {
echo $theme.' : {
name : "'.ucfirst($theme).'",
tag : "phpBB",
img : "'.css_file($theme).'",
url : "'.$url.'?theme='.$theme.'",
purchase : "http://www.google.de",
},
';
};
}
答案 1 :(得分:0)
Wordpress使用jQuery代替$
尝试用jQuery替换所有$