【问题标题】:Opencart: How to disable seo for particular pages?Opencart:如何禁用特定页面的 seo?
【发布时间】:2023-03-15 09:10:02
【问题描述】:

我正在为我们的网站使用 opencart 版本 1.5.5.1。网站中启用了 SEO url。对于某些要求,我们修改了某些类别/产品页面的页眉、页脚、产品文件。因此我们创建了新的控制器和模板文件,例如:categorynew.php、categorynew.tpl、productnew.php 等。

问题是,一旦启用了 seo,http://domain.com/index.php?route=product/product&path=59_72&product_id=63http://domain.com/index.php?route=product/productnew&path=59_72&product_id=63 都会变成 http://domain.com/products/categoryname?product_id=63

是否可以通过在我的控制器文件中添加一些代码来禁用我的新页面中的 seo?

请帮助我。提前致谢!

【问题讨论】:

  • 虽然技术上罗宾的方法似乎有效,但我不确定它是否如您所愿。您是否尝试在这些页面上完全禁用 SEO URL,或者只是阻止新的控制器路由生成产品/类别 URL 以进行重写?您应该注意到 Robin 的回答您将禁用新页面上的每个 SEO URL,而不仅仅是这些控制器的产品/类别 URL
  • 由于新页面用于 iframe,禁用整个页面的 seo 不会有问题。

标签: php seo opencart shopping-cart


【解决方案1】:

我认为很难给出绝对的答案,因为您没有提及这些 URL 的生成位置。我不可能在本地测试它,所以你必须对它持保留态度。

查看 catalog/controller/common/seo_url.php 中的代码(第 60 行):

if ($this->config->get('config_seo_url')) {

如果您想为路径 product/productnew 中生成的所有 URL 禁用 SEO,您可以执行以下操作:

if ($this->config->get('config_seo_url') &&
   !strpos($this->request->get['route'], 'product/productnew') === 0) {

简单编辑:

!strpos($this->request->get['route'], 'product/productnew')

到您要为其禁用 SEO 的路线。

我希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-01-25
    • 1970-01-01
    • 1970-01-01
    • 2017-09-20
    • 1970-01-01
    • 2012-03-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多