【问题标题】:Facebook Sharing Debugger scraping main page URL instead of given URL in Angular 6Facebook共享调试器抓取主页URL而不是Angular 6中的给定URL
【发布时间】:2020-02-10 14:33:16
【问题描述】:

Facebook 分享调试器工具正在抓取错误的页面。

我提供了一个完整的 URL,其中包含 slug(指向我网站上的单个页面),我希望它通过 facebook 分享按钮分享。它不是抓取我想要的页面,而是抓取我网站的主页。

我想让它刮https://example.com/slug
相反,它会抓取 https://example.com

我已经使用下面的代码更新了 og:url 的元标记

this.meta.updateTag({
      property: 'og:url',
      content: 'https://example.com/'+this.slug
    });

它工作正常(通过检查当前页面)。但 facebook 开放图正在抓取我网站的主页,而不是更新 og:url

【问题讨论】:

  • 这能回答你的问题吗? Dynamic Facebook Open Graph tags possible?
  • 不,它不能回答我的问题。类似的事情适用于我的主网站,但当涉及到子域时它不起作用。
  • 重点是:您正在尝试设置动态og标签,无论顶级域还是子域都不起作用。 og 标记必须在初始页面源中可用。你可以使用 SSR 或类似 prerender.io 的东西。你有我们的测试网址吗?
  • 我们只使用 SSR。这是请求的 URL:它正在抓取的 URL:iages.therightdoctors.com,我们要抓取的 URL:iages.therightdoctors.com/the-last-word/…

标签: angular facebook-opengraph facebook-share


【解决方案1】:

您将 Shorturl 用作 og:url,它指向主 URL。请改用正确的永久链接:

<meta property="og:url" content="https://iages.therightdoctors.com/the-last-word/iages-2020-dr-ramananda-saikia-laparoscopic-cbd-exploration-using-bronchoscopy">

重要提示:Facebook 忽略 JavaScript,因此您无法在客户端设置/更新标签。

【讨论】:

  • 但是这个 'og:url' 需要为每个其他页面更新,然后永久链接也会不断变化。所以这就是为什么我们编写 meta.updateTag() 来更新 'og:url ' .但 Facebook 并没有抓取更新后的 URL,而是抓取索引文件的 url
  • 我在回答中添加了一些关于此的内容,以使其非常清楚。
  • 那我们应该怎么做呢?我们有这么多 slug,这是 index.html 中的元标记。我们应该如何为不同的网址设置永久链接。
  • 永久链接必须在页面的源代码中。 SSR 是一种解决方案,prerender.io 是另一种解决方案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-12-06
相关资源
最近更新 更多