我想将此代码转换为代码片段插件中的短代码,我已经看到了一个示例,但当我将其放入时,它不起作用,示例如下:
add_shortcode( \'shortcode_name\', function () {
$out = \'<p>write your HTML shortcode content here</p>\';
return $out;
} );
我想将以下代码转换为旋转横幅:
<script>
rnd.today=new Date();
rnd.seed=rnd.today.getTime();
function rnd() {
rnd.seed = (rnd.seed*9301+49297) % 233280;
return rnd.seed/(233280.0);
}
function rand(number) {
var result = Math.floor(rnd() * number);
if (!result) result = 0;
return result
}
var bannerimgs = new Array("a.jpg", "b.jpg");
var bannerlnks = new Array("a.com", "b.com");
var banneralt = new Array("a", "b");
var rotatorHtml = "";
var endJs = "";
for(var img in bannerimgs){
var thisImg = new Image();
thisImg.src = bannerimgs[img];
}
var bannerimgCt = 2;
var bannercurrentAd = rand(bannerimgCt);
var openlink = "";
var bannerbanner = document.getElementById(\'banner\');
var bannerlink = document.getElementById(\'banneradLink\');
if(bannerlnks[bannercurrentAd] != ""){
rotatorHtml += \'<a href="\' + bannerlnks[bannercurrentAd] + \'" id="banneradLink" target="_blank">\';
endJs = "</a>";
}
rotatorHtml += \'<img src="\' + bannerimgs[bannercurrentAd] + \'" alt = "\' + banneralt[bannercurrentAd] + \'" id="bannerbanner">\' + endJs;
document.getElementById("banner_div").innerHTML = rotatorHtml;
</script>
如何将此脚本转换为短代码?我已经替换了它所说的内容,但出现了错误,然后我做错了什么。如何将此脚本转换为短代码?你知道其他的方法吗?
SO网友:Matthew Brown aka Lord Matt
JavaScript以id为“banner\\u div”的HTML元素为目标。因此,第一步是在短代码中输出这样的元素。
add_shortcode( \'shortcode_name\', function () {
$out = \'<div id=\'banner_div\'></div>\';
return $out;
} );
现在需要保存JavaScript(
<script>
标记)作为文件。这个你现在可以
enqueue 这是一个完全不同的问题。
Here\'s a question about doing this with a widget.
我同意:
wp_enqueue_script( \'unique-name\', \'/path/to/script.js, array(), false, true);
这是怎么回事?让我为你总结一下。
- Param 1 是脚本的名称
- Param 2 是放置脚本文件的URL本例中未使用参数3和4Param 5 将脚本输出设置为页脚,使其在窗口小部件div出现在屏幕上后运行
了解有关该功能的更多参考信息
wp_enqueue_script
看见
the codex page