Facebook评论不接受永久链接

时间:2012-04-11 16:14:22

标签: wordpress facebook-comments permalinks

我已经在我的wordpress博客上手动安装了Facebook评论,但在评论框下面不断收到错误消息:

警告:http://invalid.invalid/?php%20echo%20get_permalink();%20?>无法到达。

我把它放在我的标题中:

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:og="http://ogp.me/ns#" xmlns:fb="http://www.facebook.com/2008/fbml">

和:

<meta property="og:title" content="<?php echo get_the_title(); ?> "/>
<meta property="og:url" content="<?php echo get_permalink(); ?>"/>
<meta property="og:image" content="xxxxxxxxx"/>
<meta property="og:description" content="<?php
    while(have_posts()):the_post();
    $out_excerpt = str_replace(array("\r\n", "\r", "\n"), "", get_the_excerpt());
    echo apply_filters('the_excerpt_rss', $out_excerpt);
    endwhile;   ?>"/>
<meta property="fb:app_id" content="xxxxx">
<meta property="fb:admins" content="xxxxx"/>

在我的single.php文件中,我添加了这个:

 <?php if (in_category('randomposts')) {
     echo '<div></div>';
} else {
 echo '<div class="fb-comments" data-href="<?php echo get_permalink(); ?>" data-num-posts="5" data-width="640"></div>';
}

?>

我在facebook调试器/ linter中检查了我的网站,没有出现任何问题。评论框显示在我的页面上,但该警告正在困扰我。您可以分享到Facebook,但它会显示http://invalid.invalid作为网址。 我发现问题是我的single.php文件中的'echo get_permalink'。 当我输入我的主页网址时,没有任何警告,一切都按预期运行,除了它共享我的主页网址而不是帖子网址。

以下是一个例子:

http://www.itrainmymind.com/this-is-a-tespost/

2 个答案:

答案 0 :(得分:2)

你有两个echo。你想要的是

echo '<div class="fb-comments" data-href="', get_permalink() ,'" data-num-posts="5" data-width="640"></div>';

答案 1 :(得分:0)

使用facebook,您必须在wordpress single.php页面

中使用此超链接
<?php $url="http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']; echo $url;?>

只使用默认代码

<?php echo get_permalink(); ?>

无效