javascript - 如何在短代码中使用 javascript 变量?

标签 javascript html wordpress

我制作了一个简单的刮刮卡游戏,但某些代码部分有问题。如何在 WordPress 短代码中使用 javascript 变量?

首先,我使用随机数来定义奖金金额。


<script>
var arar = [1,2,3,4,5]
selectG = arar[Math.floor(Math.random() * arar.length)];
if (selectG == 1) {
    var amon = 30;
  } else if (selectG == 2) {
    var amon = 50;
  } else if (selectG == 3) {
    var amon = 10;
  } else if (selectG == 4){
    var amon = 1;
  } else {
    var amon = -10;
} 
</script>

然后我在短代​​码中将金额作为“amon”传递

<div class="promo-code"></div>
  [mycred_link amount=amon href="https://example.org/choose-card/" ]Collect the prize[/mycred_link]
</div>

当按下“领取奖品”按钮时,会将金额添加到用户积分余额中(它们用于在网站上支付网站上的特权)。但无论如何,它总是会增加 10 分。

我研究了它(该插件名为 MyCred),我发现如果金额未定义或返回错误,则默认添加 10 值(假设我们向其传递一个随机文本,例如 > amount = sdfsdfsdf - it仍会加10分)。如果我使用整数,它将添加指定的金额...但我需要通过从数组“arar”中选择的随机值来更改金额

最佳答案

WordPress 短代码在服务器端运行,因此您无法将 js 变量传递到代码中。 但是你可以在 php 中生成相同的随机值:

$arar = array(
    30,50,10,1,-10
);
$amon = $arar[array_rand($arar, 1)];

并在此处使用结果:

<div class="promo-code"></div>
  [mycred_link amount=$amon href="https://example.org/choose-card/" ]Collect the prize[/mycred_link]
</div>

关于javascript - 如何在短代码中使用 javascript 变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57991624/

相关文章:

html - 需要一些关于 HTML 的解释,nth-child

wordpress - 集群会自动平衡资源吗?

html - 导航覆盖其他 div

javascript - 主干 View 有错误的el

html - 将类似VB6的窗体规范转换为显示窗体的网页

html - Div重叠

css - 自定义插件不会加载我的 CSS

javascript - 如何使用 firebase 更新网络列表

javascript - 按标签和时间范围查询 Instagram 帖子

javascript - unEven 数组,如 concatAll 函数