如何更改页面的URL而不使Facebook喜欢/对象关系无效?

如何更改页面的URL而不使Facebook喜欢/对象关系无效?,facebook,permalinks,Facebook,Permalinks,这就是我们要做的 我们使用WordPress 我们在永久链接中使用类别名称。下面是一个不起作用的示例: mydomainname.com/旧类别/my post slug 我们有类似的按钮,我们正在使用评论小部件。两者都引用此永久链接是为了唯一标识Facebook的此URL。我的理解是,评论和类似计数都是通过这个URL绑定的 现在,考虑一下这个例子。我们想将“旧类别”重命名为“新类别”。这样做会影响URL中的以下更改: mydomainname.com/新类别/my post slug 这是一个

这就是我们要做的

我们使用WordPress

我们在永久链接中使用类别名称。下面是一个不起作用的示例:

mydomainname.com/旧类别/my post slug

我们有类似的按钮,我们正在使用评论小部件。两者都引用此永久链接是为了唯一标识Facebook的此URL。我的理解是,评论和类似计数都是通过这个URL绑定的

现在,考虑一下这个例子。我们想将“旧类别”重命名为“新类别”。这样做会影响URL中的以下更改:

mydomainname.com/新类别/my post slug

这是一个问题,因为现在绑定到原始URL的计数和注释都消失了

我能想到的最佳解决方案不是使用页面的实际URL,而是使用比永久链接更持久的内容,例如,帖子的唯一ID:

mydomainname.com/?p=12345

有人告诉我,这个问题是,实际的URL有SEO值,因为它包含类别名称和文章标题。出于这个原因,也因为我们有成千上万的帖子已经有了与他们的实际URL相关联的喜欢和评论,将我们所有的URL切换到其他一些新的、没有SEO价值的URL不是一个选项

我能想到的下一个最佳解决方案是将初始永久链接存储在标准数据库字段之外的某个位置。通过使用自定义覆盖,我们可以使用这个永久版本的permalink将页面与喜欢和评论关联起来。我们假设,如果我们改变了页面的URL,如上所述,我们可以继续使用旧的永久链接和评论,并愉快地继续

但显然我们在这方面也错了

当我使用Facebook调试器Lint我的URL时,我得到以下错误:

循环重定向:检测到循环重定向路径(有关详细信息,请参阅重定向路径部分)

删除重定向时出错:错误响应代码(重定向)

错误内容如下:

原件:mydomainname.com/new-category/my-post-slug

og:url:mydomainname.com/old-category/my-post-slug

301:mydomainname.com/new-category/my-post-slug

虽然我理解Facebook为什么要这样做(试图确保发布的URL与新闻故事和Facebook其他地方的URL内容相匹配),但这是一个我们无法绕过的路障

有没有办法使这项工作,或是我唯一的选择,放弃现有的计数和评论?看起来是个很糟糕的选择


更新:现在我突然想到,我上面提出的“最佳”选项也行不通。因为WordPress总是重定向http://mydomainname.com/?p=12345到永久链接(例如,http://mydomainname.com/new-category/my-post-slug),使用?p=12345URL将使我们处于与解决方案#2:循环重定向到og:URL完全相同的境地,但与页面的实际URL不匹配。Grrr…

我认为规范URL可能是您正在寻找的。

可能是