自定义DIQUS_IDENTIFIER未正确更改缺省值

时间:2012-09-22 作者:Preston

我有几个页面都是同一主题的一部分,我希望它们在论文上使用相同的评论线程。我使用以下代码从自定义字段中提取自定义标识符:

<?php
    //Attempt to get identifier
    $disqus = get_post_meta($post->ID, \'disqusid\', true);
    //if isset & not blank else use $post->ID
    $disqus = (!empty($disqus)) ? $disqus : $post->ID;
?>
<script type="text/javascript">
    var disqus_identifier = \'<?=$disqus?>\';
</script>
代码正确地显示了自定义字段中的值,但是,当我检查页面代码时,disqs插件仍然使用页面ID作为标识符。这意味着每个页面仍然使用自己的注释线程。

我尝试将代码放在几个不同的地方:就在comments\\u template()之前;代码,在标题中。php在各个位置(wp\\U头之前/之后)和页脚。php在各个位置(wp\\u页脚之前/之后)。

我读到的所有内容听起来都很简单,只需在嵌入之前添加标识符代码。js调用取消。我觉得我可能错过了一些需要做的特别的事情。有没有可能是别的什么东西在干扰它?其他一切都按预期进行。

Discus WordPress插件:http://wordpress.org/extend/plugins/disqus-comment-system/

在这个问题解决之前,我正在工作的站点是不活动的,但如果查看整个站点代码会有所帮助,我可以将其设置为活动的。

1 个回复
SO网友:Chris Simeone

我不得不把一些已经在我旧网站上发表的乐队评论放到我的新WordPress乐队网站上。我只想在我们的主页上看到评论,所以下面是我所做的。。。

我查看了旧网站上的代码,并抓取了disqus_identifier 从那里获得价值。

我定义并添加了一个名为dsq_identifier 我的自定义页面模板,并将disqus_identifier 旧站点的价值。

我是WordPress和PHP新手,我确信这是个坏主意,但我需要完成这项工作,所以。。。

我编辑了Discus插件的comment.php 通过在所有var初始化之后添加此代码:

<?php if ( get_post_meta($post->ID, \'dsq_thread_id\', true) ) : ?>
  disqus_identifier = \'<?php echo get_post_meta($post->ID, \'dsq_identifier\', true); ?>\';
<?php endif; ?>
因为我只想在我们的主页上显示评论,主页上有一个名为dsq_identifier, 我修改了我的自定义模板(有几个页面使用)。下面是代码:

<?php if ( get_post_meta($post->ID, \'dsq_identifier\', true) ) : ?>
  <?php comments_template(); ?> 
<?php endif; ?>
巴阿姆!第一次工作。

如果您对如何在不更改Disqs插件代码库的情况下实现这一点有任何想法,那将非常棒。我需要后退一步,在新网站几天后发布后,认真考虑一下这一点。

结束

相关推荐

Why are my comments closed?

我有一个简单的site 有几页加上blog. 出于某种原因,博客帖子声明comments are closed 我不知道为什么。我想打开所有博客帖子上的评论(而不是在页面上提供评论)。在“编辑帖子”屏幕中,“评论”部分仅表示“还没有评论”但并没有提供任何打开它们的方法。在“设置”>“讨论”中,我有以下内容:评论时,作者必须填写姓名和电子邮件。评论时,用户必须注册并登录。评论时,关闭对超过(14)天的文章的评论。自动关闭评论。启用线程化(嵌套)评论级别(5)深度。将评论分成每页有(50)条顶级评论的页