Opencart 开启静态化后,产品、分类、信息等页面的静态化地址SEO Keyword还是需要手动填写,否则前台就不会使用静态化的地址,如果产品很多,那么这样的工作也是非常繁琐的。而一旦不设置,URL和搜索引擎收录来说又不友好。
那么,我们应该如何设置呢?其实很简单,甚至不需要修改 Opencart 本身源代码,只是需要自己做一个插件即可,步骤也很少,如下。
新建一个 UTF-8 编码的XML文件,文件名为:admin_auto_seo_field.ocmod.xml,内容为:
admin-auto-seo-field
http://joaomello.com.br
$(document).ready(function(){ var keyword = $("input[name=keyword]"); if(!keyword.val()) { $("input[name^='product_description']").keyup(function() { var SEOlink = $("input[name^='product_description']").val(); // var SEOlink = $(this).val(); SEOlink = SEOlink.replace(/^\s+|\s+$/g, ''); // trim SEOlink = SEOlink.toLowerCase(); // remove accents, swap, etc SEOlink = SEOlink.replace(/[^a-z0-9( -]/g, '') // remove invalid chars .replace(/\(/g,"-") // replace ( .replace(/\s+/g, '-') // collapse whitespace and replace by - .replace(/-+/g, '-'); // collapse dashes SEOlink += ".html"; keyword.val(SEOlink); }); } }); ]]>
然后通过后台“Extensions”> “Extension Installer”上传这个XML文件。上传完成后,再点击“Extensions”>“Modifications”右上角的“Refresh”按钮。这样返回添加产品的时候,输入产品名称 SEO Keyword就自动补上了,比如输入产品名称为“camera”,那么SEO Keyword就是:camera.htm,如下:
以上程序基于Opencart免费插件 Admin Auto SEO Field 修改而来,原插件支持产品页、分类页、信息页的SEO Keyword自动补充,需要的也可以下载原插件。
Opencart的使用SEO的URL开启静态化后,静态化地址SEO Keyword还是需要手动填写,否则前台就不会使用静态化的地址,而一旦不设置,URL和搜索引擎收录来说又不友好。
那么,我们应该如何设置呢?其实很简单,按照以下步骤操作就可以:
第一步:启动使用SEO URLs到系统商店设置中选中Use SEO URL’s
第二步,将网站根目录中的文件.htaccess.txt 改名为 .htaccess
第三步:在你的产品,分类,品牌,文章中加入seo keyword关键词。注意关键词不要重复,也不要留有空格。
此时刷新你的网站前台,应该起作用了。
如果你的opencart系统安装在了子目录下,比如http://www.yourdomain.com/opencart/,那么你应该修改此目录下的.htaccess文件。
# SEO URL Settings
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)\?*$ index.php?_route_=$1 [L,QSA]
将:RewriteBase /改为RewriteBase /opencart/
编辑后应该为:# SEO URL Settings
RewriteEngine On
RewriteBase /opencart/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)\?*$ index.php?_route_=$1 [L,QSA]
有的朋友使用的服务器是windows的,我们无法提供相关rewrite的相关帮助,请自己谷歌或百度相关答案,或者更换成为适合opencart运行的服务器空间。