首页 > 解决方案 > 将 Wordpress 简码附加到 CSS 类

问题描述

我试图让用户获得的徽章出现在产品评论下。我有 Woodiscuz 来处理评论,meCRED 来处理徽章。

短代码 [mycred_my_badges user_id="author"] 将显示帖子作者徽章(经过测试并在常规页面上工作)。

我有以下代码:

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

本质上,我的想法是用我的简码附加评论类(带有头像等),显示徽章。我已将此代码放入我的 javascript 页脚中,但似乎什么也没发生,也没有显示任何徽章。

我把这段代码放在错误的地方吗?我错过了一些非常简单的东西吗?

我真的很感激这方面的任何帮助。

感谢:D

标签: javascriptwordpress

解决方案


您需要编辑它所在的文件,通常一个好的插件会允许您覆盖模板文件。

请找到文件:

woodiscuz-woocommerce-comments/comment-form/tpl-comment.php

并尝试通过将代码复制并粘贴到以下位置来覆盖它:

themes/your-theme/comment-form/tpl-comment.php

然后使用搜索找到提到“wpc-comment-left”的位置并将该代码部分替换为:

<?php
$shortcode = '[mycred_my_badges user_id="author]';
$output = '<div id="wpc-comm-' . $unique_id . '" class="' . $wpc_comment_wrapper_class . ' ' . $parent_comment . ' wpc_comment_level-' . $depth . '">';
$output .= '<div id="wpc-comment-' . $comment->comment_ID . '" class="wpc-comment-left">' . $wpc_comm_author_avatar . do_shortcode($shortcode) . '</div>';
if (!$this->wpc_options_serialized->wpc_author_titles_show_hide) {
    $output .= '<div class="wpc-comment-label">' . $author_title . '</div>';
}?>

不幸的是,如果您无法覆盖主题中的文件,则必须编辑核心插件文件,这意味着如果您更新插件,此更改将被覆盖。


推荐阅读