我的Facebook共享解决方案(以及我的google plus共享解决方案)发生了什么?

时间:2014-05-29 20:37:15

标签: javascript html facebook

请先阅读以下免责声明:在过去一小时左右的时间里,我已尽力解决此问题。 Google,尝试,搜索stackoverflow等等。我一直无法解决这个问题。它可能被视为"重复"对某些人或许多人来说,但我希望我的努力能够明确,以便任何指责这一点都是重复的,希望至少是公平的。谢谢。

我正在以下临时网址上的网站上工作:

http://jrltest.host-ed.me/index.html

我使用每个社交媒体"手册"为共享按钮(右上角)开发了一个JS解决方案。或" custom"共享解决方案也就是说,这个解决方案允许我在"共享"中键入我想要分享的URL。链接。我的网站正在使用SSI,共享按钮是其中一个"包含"文件,因此甚至不是手动输入URL的可能解决方案,因为每个社交媒体平台只有一个共享按钮。然而,即使每个页面上都有共享按钮,它仍然不是一个可行的解决方案。我把以下js文件放在一起:

http://jrltest.host-ed.me/_js/share.js

这只是将一个变量分配给document.URL和document.title,然后我可以根据需要将这些变量插入到自定义URL中。

然而,我遇到了一些奇怪的事情,我无法用FB和Google Plus分享按钮搞清楚。 twitter按钮是唯一一个表现完全符合预期的按钮。我将在数字上概述下面的问题。

1:Facebook问题。访问以下URL:http://jrltest.host-ed.me/index.html并单击FB共享按钮时,将打开一个弹出框,显示标题为" James River Laser&设备首页"。但是,我目前的主页标题是,"詹姆斯河激光和设备之家"。标题为USED," James River Laser&然而,设备主页",Twitter网址使用'&'用于分隔参数的符号,它会在''之后切断所有内容。然而,我不知道从哪里获得该标题,因为它已被更改。如果您访问"关于"但是,FB分享按钮显示," Untitled Document"作为要共享的页面的标题。我确实在关于页面上指定了正确的标题。

2:Facebook问题。以下问题与问题编号1有关,但是,它是尝试修复第一个问题的结果。我想通过(感谢我发现的一个stackoverflow问题)除了自定义URL之外我还可以传递自定义标题。所以我将我的FB共享URL修改为以下内容:

https://www.facebook.com/sharer.php?u=&#34 + + CURRENTURL"ΔT=&#34 + currentTitle

当我使用此网址时,主页会显示" document.title"作为标题,但关于页面显示,"关于我们公司"作为标题。我甚至不能开始猜测它为什么在关于页面工作,而不是为主页工作。他们都有一个合适的标题,如果我打开控制台并输入," document.title"它返回了预期的,詹姆斯河激光和设备之家" ......但它仍然显示" document.title"在FB弹出框中。

3:Google Plus问题。当访问以下URL:http://jrltest.host-ed.me/index.html并点击GPlus共享按钮时,会打开一个弹出框,显示标题为" James River Laser&设备HomeHeader分享我们的PageFooter"。这很不寻常,也有点令人困惑。今天早些时候,以前,我的SSI页面是HTML文档,包括头标记,标题标记,正文标记,一切。我给那些页面标题与他们的内容相关。 "头"是我的菜单标题的标题,"分享我们的页面"是我的社交分享部分的标题," Footer"是底部页脚的标题。但是,我已经删除了除内容和内容标签(div和li等)之外的所有内容的文档,但是Google plus仍然是STILL,显示了这样的描述。但是,更奇怪的是,如果您访问以下网址的主页:http://jrltest.host-ed.me并单击GPlus共享按钮,它现在只显示," James River Laser&设备首页"作为标题。哪个更好,但我仍然不知道从哪里得到这个,因为页面标题是,"詹姆斯河激光和设备之家"。

我意识到我使用的Facebook分享者已经过折旧,但我还没有弄清楚Facebook提供的任何替代解决方案。他们一直在谈论应用程序(即使我点击在网络上使用),对于那些我的技能有限的人来说,没有什么能够得到很好的解释。

我仍在调查这个问题,试图像往常一样自己弄清楚,但我不觉得我能够独自完成这个任务。所以我希望那里的某个人知道发生了什么,并且可以让我失望。

非常感谢!

1 个答案:

答案 0 :(得分:3)

所以,回顾一下:

传递除了要在Facebook上分享的页面的URL之外的其他任何东西都不可能 - 它是在不久前,但他们删除了,现在标题,描述,图像等从文档本身拉出。
最好是通过Open Graph元素(http://ogp.me/https://developers.facebook.com/docs/plugins/checklist/)来设置它们,但是如果找不到它们,Facebook将直接从HTML中获取信息 - 通过查看{{1} } element,a(不是Open Graph特定的)描述元元素,嵌入式图像等。

缓存可能是测试此问题和更改值的问题 - 但是通过使用他们的debug tool,您可以看到Facebook当前在您的页面上看到了哪些信息,可能存在哪些“错误”Open Graph-wise ...它也将清除文档的缓存。

除了缓存问题之外,您在测试过程中遇到的问题似乎来自文档中的错误信息(title导致<meta property="og:title" content=document.title />显示为文档标题),以及对错误的影响。传递给对话框的document.title参数(如上所述不再有效)。


如果您仍然遇到G +共享问题,他们也会有一个测试工具:http://www.google.com/webmasters/tools/richsnippets

相关问题