【问题标题】:Append a Wordpress shortcode to a css class?将 Wordpress 短代码附加到 CSS 类?
【发布时间】:2018-11-22 10:53:51
【问题描述】:

所以...

经过数小时的反复试验,我似乎无法正常工作。

我有一个名为 woodiscuz 的插件,它允许用户对产品进行评论(这是一个运行 woocommerce 的电子商务商店,没什么花哨的)。

下面是它的截图: https://i.stack.imgur.com/2oH5T.png

我有另一个名为 myCRED 的插件,用作忠诚度计划。 (消费时获得积分等)

myCRED 带有徽章,您可以使用 [mycred_my_badges] 显示用户获得的徽章。 我希望此徽章/简码出现在 STAFF 徽章下方。

所以我想,嘿,我为什么不直接使用我最近学到的 do_shortcode() 函数……不。

这是我尝试使用的代码:

$( ".wpc-comment-left" ).append( document.createTextNode(<?php echo do_shortcode(“[mycred_my_badges]”); ?>) );

现在,查看评论截图,蓝色框是一个名为“wpc-comment-left”的 css 类,因此我尝试将我的简码附加到它。红色部分是我希望徽章出现的地方。

我希望这对你们中的一些人有意义。我不知道还能去哪里看,而且我对 PHP 和 JS 知之甚少,因此非常感谢任何帮助。

干杯!

【问题讨论】:

    标签: javascript php jquery wordpress


    【解决方案1】:

    如果是引号等,您需要为javascript编码字符串,并将生成的字符串用引号括起来:

    $( ".wpc-comment-left" ).append( document.createTextNode("<?php echo json_encode(do_shortcode("[mycred_my_badges]")); ?>") );
    

    【讨论】:

    • 最有可能,我还建议检查源代码如何检查 php 回显的内容。
    • @janw 已编辑,添加了 json_encode 以确保字符串在包含双引号时不会过早关闭 textNode 字符串。
    • 这似乎对我不起作用。但是,我刚刚意识到我需要显示实际评论作者的徽章,而不是当前用户的徽章......这个短代码只显示当前用户的徽章。
    • 您可以使用短代码的 user_id 属性来指定要显示其徽章的用户。您能否提供一个短代码输出的 HTML 示例?然后我们可以更好地帮助您。
    • @markmoxx 不幸的是,开发目前处于暂停状态,我没有进一步了解此事。如果我这样做,我会尽量记住更新这篇文章。
    猜你喜欢
    • 2020-11-10
    • 2013-01-16
    • 1970-01-01
    • 2019-08-04
    • 1970-01-01
    • 2019-04-01
    • 1970-01-01
    • 2019-03-25
    • 1970-01-01
    相关资源
    最近更新 更多