用Javascript输出短代码
Wordpress: Outputting shortcode with Javascript?
<script language=”javascript”>
if (country_code==’US’)
{
document.write("[adrotate banner="1"]");
}
else
{
document.write("[adrotate banner="2"]");
}
</script>
[adrotate banner="x"]
是用于Adrotate插件的wordpress短代码
这个脚本不工作,因为不知何故输出[adrotate banner="x"]
是不可能的?它使用全局保存的变量country_code
。
我已经尝试了"
和'
(和内部使用其中一个和外部使用另一个),但没有运气。
有没有办法解决这个问题,仍然使用JS?
短代码只在服务器端工作。如果您想绕过它,可以使用AJAX提交值,在PHP中调用do_shortcode()
,以JSON形式返回结果,然后写入页面。
作为旁注,您的示例有一个语法错误,因为您的字符串中有双引号,因为它不会作为短代码处理。您需要转义它或使用单引号
尝试使用' backtick (Template literal) https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals?retiredLocale=it
<script language=”javascript”>
var option1 = `[adrotate banner="1"]`;
var option2 = `[adrotate banner="2"]`;
if (country_code=='US') {
document.write(option1);
} else {
document.write(option2);
}
</script>
也适用于PHP代码(解决单引号和双引号的问题):
<script language=”javascript”>
var option1 = `<?php echo do_shortcode('[adrotate banner="1"]'); ?>`;
var option2 = `<?php echo do_shortcode('[adrotate banner="2"]'); ?>`;
if (country_code=='US') {
document.write(option1);
} else {
document.write(option2);
}
</script>
相关文章:
- 无法获取输出.返回代码206.缺少值
- 将 JSP 变量输出到 JavaScript 代码段中
- 有谁知道这行代码的输出是什么?$.get(“http://192.168.4.1:80/”, {pin:p}.
- 从一个文本框执行代码,并在另一个文本框中以 HTML 显示输出
- 修改此node.js代码以输出.wav而不是.mp4
- 如何在Angular js中返回html代码作为过滤器的输出
- 如何从按钮后面的代码中调用javascript函数,点击并存储其输出,然后继续操作
- 为什么console.log()在我的代码中输出意外的0
- 当从代码后台输出Javascript时,如何处理换行符
- PHP 文件输出 javascript 代码本身而不是运行
- 从字面上看,以HTML格式输出PHP代码
- 输出代码后更改链接中的 URL
- 从后台代码输出字符串到新页面或窗口
- 在javascript中产生以下代码输出的原因是什么?
- 对象.为什么我的代码输出对象而不是名称字符串值
- Javascript代码输出示例
- 为什么此代码输出Event对象的任何元素
- 单击提交按钮时,JavaScript代码输出两次
- 输入的焦点不通过代码输出
- 代码输出差异