jjzjj

url - opencart:主页和类别之后的产品网址

coder 2024-02-29 原文

我正在使用 opencart 1.5.6。

主页上的产品(或其他地方然后是类别)链接到/product,而当从类别页面点击它时,它会转到/category/product。

这意味着 google 认为有重复的内容,我不喜欢这样,所以我该如何解决这个问题(所以 url 总是/categorie(/subcat)/product?

我希望所有其他页面也有一个干净的 seo url 但是当我安装以下扩展时没有任何反应:

www.opencart.com/index.php?route=extension/extension/info&extension_id=15557&filter_search=seo%20url&filter_license=0&sort=e.downloaded&order=DESC&page=3 www.opencart.com/index.php?route=extension/extension/info&extension_id=15516

网站网址: http://publiekgeheim.com

最佳答案

您不必担心重复的内容。正如我所看到的,您在 <head> 中有“规范”链接标签你的产品所以你没事。这个标签告诉搜索引擎哪个 url 是“正确的”,其他的只是由插件、分类等产生的。所以没有重复的内容。

在 opencart 中,除非您想编码和制作场景并更改您的工作流程,否则生成规范标签的最佳方式就是现在所做的。即 www.example.com/product .原因是opencart生成url的方式如http://publiekgeheim.com/lingerie/Esprit/Esprit-Feel-Sexy-String ,其中包含类别路径,确实不可靠。例如,以下网址 http://publiekgeheim.com/stackoverflow/Goerge/wtf/Esprit-Feel-Sexy-String will also lead you to the product page !

如果您仍想按照自己的方式进行操作,则必须更改 catalog/product/product.php 中的这一行:

$this->document->addLink($this->url->link('product/product', 'product_id=' . $this->request->get['product_id']), 'canonical');

这就是痛苦的开始。您可以使用 getCategories catalog/model/catalog/product.php 中的方法并获取产品所属的类别。但是你想展示哪一个?如果您只为产品分配一个类别,那您就很幸运了。但如果不是呢?在我的一家商店中,我什至经常将产品分配到 2 个类别中,这些类别本质上相同但属于不同的父类别,以帮助用户更轻松地找到产品(因为 opencart 不允许将链接(到类别)作为菜单顶部菜单中的项目)。如果我想遵循您的方法,我将需要使用一些允许我在顶部菜单中放置链接但在我的站点地图中创建空的重复类别的扩展,或者使用一些将完全替换默认顶部菜单的大型菜单。然后会出现新的问题。因此,您会发现它变得越来越复杂,具体取决于您的用例。

即使您设法解决了这个问题(例如,通过选择一个随机的或返回的第一个类别,或者从现在开始只将一个产品分配给一个类别),您将如何找到父类别为了在 url 中显示完整路径? opencart 中没有这样的方法,编码真的很难看,并且会向产品页面添加至少 3 个数据库查询(我试图计算需要多少数据库查询才能生成默认的 opencart 页面,我至少计算了10).

因此,总而言之,为了避免出现棘手的情况,请坚持使用默认的规范,除非您对如何上传和显示产品以及一些聪明的代码提出严格的政策。

这些扩展应该可以工作。检查您的 vqmod 错误和兼容性。

关于url - opencart:主页和类别之后的产品网址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23915806/

有关url - opencart:主页和类别之后的产品网址的更多相关文章

  1. ruby-on-rails - rails : save file from URL and save it to Amazon S3 - 2

    从给定URL下载文件并立即将其上传到AmazonS3的更直接的方法是什么(+将有关文件的一些信息保存到数据库中,例如名称、大小等)?现在,我既不使用Paperclip,也不使用Carrierwave。谢谢 最佳答案 简单明了:require'open-uri'require's3'amazon=S3::Service.new(access_key_id:'KEY',secret_access_key:'KEY')bucket=amazon.buckets.find('image_storage')url='http://www.ex

  2. ruby - 如何使用 Ruby aws/s3 Gem 生成安全 URL 以从 s3 下载文件 - 2

    我正在编写一个小脚本来定位aws存储桶中的特定文件,并创建一个临时验证的url以发送给同事。(理想情况下,这将创建类似于在控制台上右键单击存储桶中的文件并复制链接地址的结果)。我研究过回形针,它似乎不符合这个标准,但我可能只是不知道它的全部功能。我尝试了以下方法:defauthenticated_url(file_name,bucket)AWS::S3::S3Object.url_for(file_name,bucket,:secure=>true,:expires=>20*60)end产生这种类型的结果:...-1.amazonaws.com/file_path/file.zip.A

  3. ruby-on-rails - Ruby url 到 html 链接转换 - 2

    我正在使用Rails构建一个简单的聊天应用程序。当用户输入url时,我希望将其输出为html链接(即“url”)。我想知道在Ruby中是否有任何库或众所周知的方法可以做到这一点。如果没有,我有一些不错的正则表达式示例代码可以使用... 最佳答案 查看auto_linkRails提供的辅助方法。这会将所有URL和电子邮件地址变成可点击的链接(htmlanchor标记)。这是文档中的代码示例。auto_link("Gotohttp://www.rubyonrails.organdsayhellotodavid@loudthinking.

  4. ruby-on-rails - 如何生成传递一些自定义参数的 `link_to` URL? - 2

    我正在使用RubyonRails3.0.9,我想生成一个传递一些自定义参数的link_toURL。也就是说,有一个articles_path(www.my_web_site_name.com/articles)我想生成如下内容:link_to'Samplelinktitle',...#HereIshouldimplementthecode#=>'http://www.my_web_site_name.com/articles?param1=value1¶m2=value2&...我如何编写link_to语句“alàRubyonRailsWay”以实现该目的?如果我想通过传递一些

  5. ruby - Rack:如何将 URL 存储为变量? - 2

    我正在编写一个简单的静态Rack应用程序。查看下面的config.ru代码:useRack::Static,:urls=>["/elements","/img","/pages","/users","/css","/js"],:root=>"archive"map'/'dorunProc.new{|env|[200,{'Content-Type'=>'text/html','Cache-Control'=>'public,max-age=6400'},File.open('archive/splash.html',File::RDONLY)]}endmap'/pages/search.

  6. ruby-on-rails - Rails - 使用/自定义 URL : '/dashboard' 指定根路径 - 2

    如何使此根路径转到:“/dashboard”而不仅仅是http://example.com?root:to=>'dashboard#index',:constraints=>lambda{|req|!req.session[:user_id].blank?} 最佳答案 您可以通过以下方式实现:root:to=>redirect('/dashboard')match'/dashboard',:to=>"dashboard#index",:constraints=>lambda{|req|!req.session[:user_id].b

  7. 神州数码无线产品(AC+AP)配置 - 2

    注意:本文主要掌握DCN自研无线产品的基本配置方法和注意事项,能够进行一般的项目实施、调试与运维AP基本配置命令AP登录用户名和密码均为:adminAP默认IP地址为:192.168.1.10AP默认情况下DHCP开启AP静态地址配置:setmanagementstatic-ip192.168.10.1AP开启/关闭DHCP功能:setmanagementdhcp-statusup/downAP设置默认网关:setstatic-ip-routegeteway192.168.10.254查看AP基本信息:getsystemgetmanagementgetmanaged-apgetrouteAP配

  8. 阿里云RDS——产品系列概述 - 2

    基础版云数据库RDS的产品系列包括基础版、高可用版、集群版、三节点企业版,本文介绍基础版实例的相关信息。RDS基础版实例也称为单机版实例,只有单个数据库节点,计算与存储分离,性价比超高。说明RDS基础版实例只有一个数据库节点,没有备节点作为热备份,因此当该节点意外宕机或者执行重启实例、变更配置、版本升级等任务时,会出现较长时间的不可用。如果业务对数据库的可用性要求较高,不建议使用基础版实例,可选择其他系列(如高可用版),部分基础版实例也支持升级为高可用版。基础版与高可用版的对比拓扑图如下所示。优势 性能由于不提供备节点,主节点不会因为实时的数据库复制而产生额外的性能开销,因此基础版的性能相对于

  9. ruby-on-rails - 使用 Dragonfly 从 URL 分配图像 - 2

    我正在使用Dragonfly在Rails3.1应用程序上处理图像。我正在努力通过url将图像分配给模型。我有一个很好的表格:{:multipart=>true}do|f|%>RemovePicture?Dragonfly的文档指出:Dragonfly提供了一个直接从url分配的访问器:@album.cover_image_url='http://some.url/file.jpg'但是当我在控制台中尝试时:=>#ruby-1.9.2-p290>picture.image_url="http://i.imgur.com/QQiMz.jpg"=>"http://i.imgur.com/QQ

  10. ruby - 变量赋值后的 if 语句 - 有多常见? - 2

    我最近与一位同事讨论了以下Ruby语法:value=ifa==0"foo"elsifa>42"bar"else"fizz"end我个人并没有看到太多这种逻辑,但我的同事指出,这实际上是一种相当普遍的Rubyism。我试着用谷歌搜索这个主题,但没有找到任何文章、页面或SO问题来讨论它,这让我相信这可能是一种非常实际的技术。然而,另一位同事发现语法令人困惑,而是将上面的逻辑写成这样:ifa==0value="foo"elsifa>42value="bar"elsevalue="fizz"end缺点是value=的重复声明和隐式elsenil的丢失,如果我们想使用它的话。这也感觉它与Ruby

随机推荐