【问题标题】:Echo PHP inside BigCommerce HTML href (self-referencing hreflang tags)在 BigCommerce HTML href 中回显 PHP(自引用 hreflang 标签)
【发布时间】:2020-10-07 18:42:02
【问题描述】:

我正在尝试使用 PHP 将当前页面的完整 URL 回显为 href 值。

我阅读了几篇不同的帖子并想出了以下代码,但它不起作用:

<link rel="alternate" href="<?php echo 'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; ?>" hreflang="en-us" />

我在模板中 > 布局 > base.html 文件

【问题讨论】:

  • 它对我有用。这段代码以什么方式失败?结果输出是什么?
  • 也许换个方式试试,在 php echo 中回显 标签?
  • hmm... 可能是因为我在 BigCommerce 上使用它,并且它将 PHP 代码作为文本输出。我第一次使用 BigCommerce。我也尝试了相反的方法,但没有运气。
  • 我认为 Big Commerce 是这个问题的一个重点,可能应该添加。 :-)
  • 你是对的,谢谢。将其添加到问题中

标签: php html bigcommerce hreflang


【解决方案1】:

由于 BigCommerce 是一个闭源 SaaS 平台,您无法在后端运行自己的任意 PHP。自定义必须由平台提供的模板助手或使用公共 API 完成。以下是一些可能有帮助的链接:

https://developer.bigcommerce.com/stencil-docs/reference-docs/global-objects-and-properties

https://developer.bigcommerce.com/stencil-docs/reference-docs/handlebars-helpers-reference

那么对于您的用例,这可能如下所示:

<link rel="alternate" href="{{settings.secure_base_url}}{{settings.request.absolute_path}}" hreflang="en-us" />

【讨论】:

  • 谢谢。所以看起来没有一个变量可以从所有页面类型中获取 url。他们似乎是用 head.meta_tags 中的规范来做的,但我也无法访问它
  • 如果只是想获取页面当前的URL,可以考虑{{settings.request.host}}或者{{setings.secure_base_url}}+{{settings.request.absolute_path}}
  • 您可以只使用 JS 并使用 window.location 获取完全限定的 URL - 根据需要以编程方式应用。
【解决方案2】:

这对我有用:

    <link rel="alternate" href="https://{{settings.request.host}}{{settings.request.absolute_path}}?setCurrencyId=1" hreflang="en-gb" />

【讨论】:

    猜你喜欢
    • 2019-02-06
    • 2011-04-25
    • 1970-01-01
    • 2011-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多