如何去除zencart模板的TESTING MODE提示

如何去除ZenCart产品地址伪静态中的产品ID的方法 | 无忧主机
Simple SEO URL模块,是一个的一个优化网站URL的插件。所谓URL优化就是优化网站的URL,比如有些网站的URL上有很多参数而且很长,那就不利于搜索引擎的抓取,最好能生成静态或者伪静态。你可以利用那个插件设置一下你网站的URL,使其符合搜索引擎蜘蛛的喜好。美中不足的地方就是默认simple seo url模块伪静态后URL地址看上去不是复合站长的“口味”,本节无忧主机小编将给大家分享一下如何优化一下simple seo url模块伪静态的URL,另外希望大家多支持一下无忧主机php。
simple seo url模块默认URL地址格式:
http://www.xxx.com/产品名-p-101.html
优化后simple seo url模块默认URL地址:
http://www.xxx.com/产品名/
优化后simple seo url模块默认URL地址操作步骤如下:
1、文本编辑器(editplus)打开文件目录:
includes/modules/pages/product_info/header_php.php(头部添加如下代码)
if(zen_not_null($_GET['products_name'])){
$products_id_query=$db-&Execute(&select products_id from &.TABLE_PRODUCTS_DESCRIPTION.' where products_name=&'.str_replace
(&-&,& &,$_GET['products_name']).'&');
if($products_id_query-&RecordCount()&0)
$_GET['products_id']=$products_id_query-&fields['products_id'];
2、文本编辑器(editplus)打开文件目录:
includes/classes/seo.url.php
$url = $this-&make_url($page, $this-&get_product_name($p2[1]), $p2[0], $p2[1], '.html', $separator);
$url = $this-&make_url($page, $this-&get_product_name($p2[1]),'', '', '/', $separator);
3、文本编辑器(editplus)打开文件目录:根目录下.htaccess
RewriteRule ^(.*)-p-(.*).html$ index\.php?main_page=product_info&products_id=$2&%{QUERY_STRING} [L]
RewriteRule ^(.*)\/$ index\.php?main_page=product_info&products_name=$1&%{QUERY_STRING} [L]
注意事项:
1.产品名中不能出现- 可用空格来表示
2.产品名不能重复
无忧主机相关文章推荐阅读:
本文地址:http://www.51php.com/zencart/20230.html
喜欢本文或觉得本文对您有帮助,请分享给您的朋友 ^_^
无忧主机资质:(十四年旗舰品牌)
相关技术帮助文档
技术帮助文档分类zencart 邮箱设置错误的解决方法_懒人程序
支付宝赞助帐号:
zencart 邮箱设置错误的解决方法
zencart 邮箱设置错误的解决方法
创建设文件testport.php(来自老外的论坛)
if(!function_exists('fsockopen')) {
echo '&span style=&color:red&&fsockopen is not enabled&/span&';
$tests = array(25 =& 'smtp.sendgrid.com',2525 =& 'smtp.sendgrid.com',587 =& 'smtp.sendgrid.com',465 =& 'ssl://smtp.sendgrid.com');
foreach($tests as $port =& $server){
$fp = @fsockopen($server,$port,$errno,$errstr,5);
echo '&br/&&span style=&color:green& &Port '.$port.' opened on your server&/span&';
fclose($fp);
echo '&br/&&span style=&color:red& &Port '.$port.' NOT opened on your server&/span&';
echo & errornum: &.$errno.' : '.$
fsockopen is not enabled 如果出现这个错误(我只碰到这个,端口都没问题)
修改php.ini文件
disable_functions 这个变量中去掉&fsockopen 在最后面
allow_url_fopen = on
extension=php_openssl.dll 去掉前面分号(gmail 用的端口协议是ssl的,所以服务器得有openssl服务,若没有度娘之)
附带zencart zen_email函数未例
$html_msg=array();
$html_msg['EMAIL_MTCN'] = 'mtcn';
$html_msg['EMAIL_ELSE'] = 'it is test';
$name='first';
$email_address='';
$subject='Test Email ?';
$email_text='there is test text'.&\n\n&;
$store_name='My Shop';
$from_email_address='';
zen_mail($name, $email_address, $subject, $email_text, $store_name, $from_email_address, $html_msg, 'western_union');
支持键盘 ← →他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)Zen Cart的安装、设置、升级讨论和使用技巧交流
& 分页: 1 / 1
ZenCart支付模块增加某些国家不显示项众所周知像越南,印度利西亚等国家是出来名的喜欢拒付,为了避免我们的损失我先直接让是这些国家邮件地址的不显示信用卡支付通道,只显示西联以日付支付模块为例为大家讲解首先要知道支付模块的核心文件放在includes\modules\payment下,我们打开日付支付模块的核心文件rppay.php第一步查找remove方法,来确定rppay支付模块使用的常量前缀代码: & & function remove()& & {& & & & //卸载RPPAY支付模块& & & & global $& & & & $db-&Execute(&delete from & . TABLE_CONFIGURATION . & where configuration_key like 'MODULE_PAYMENT_RPPAY_%'&);& & & & //$db-&Execute(&delete from & . TABLE_ORDERS_STATUS . & where orders_status_name in ('rpapproved', 'rpdeclined', 'rprefund', 'rpunpaid', 'rppending', 'rperror', 'rptestapprove', 'rpcanceled', 'rpchargeback', 'rpfraud')&);& & }我们定义禁止国家的常量为DISABLE_COUNTRIES, 从上面可以看到日付常量前缀为MODULE_PAYMENT_RPPAY_,合起来禁止国家的常量为MODULE_PAYMENT_RPPAY_DISABLE_COUNTRIES第三步确定了禁止国家的常量后,将这个值加入key方法return数组中代码: & & function keys()& & {& & & & return array(& & & & & & 'MODULE_PAYMENT_RPPAY_STATUS', & & & & & & 'MODULE_PAYMENT_RPPAY_ZONE', & & & & & & 'MODULE_PAYMENT_RPPAY_ORDER_STATUS_ID',& & & & & & 'MODULE_PAYMENT_RPPAY_SORT_ORDER',& & & & & & 'MODULE_PAYMENT_RPPAY_SITEID',& & & & & & 'MODULE_PAYMENT_RPPAY_PRIVATE_KEY',& & & & & && & & & & & 'MODULE_PAYMENT_RPPAY_ACTION_URL',& & & & & & 'MODULE_PAYMENT_RPPAY_ORDER_PREFIX',& && && &'MODULE_PAYMENT_RPPAY_DISABLE_COUNTRIES'& & & & );& & }第三步我们还要讲禁止国家的常量值加入安装方法中,在上面的key方法中随便找一个其他常量来定位,如MODULE_PAYMENT_RPPAY_STATUS, 在install方法查找这个值代码: & & & & $db-&Execute(&insert into & . TABLE_CONFIGURATION . & (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Enable RPPAY Module', 'MODULE_PAYMENT_RPPAY_STATUS', 'True', 'Do you want to accept RPPAY payments?', '6', '1', 'zen_cfg_select_option(array(\'True\', \'False\'), ', now())&);我们依葫芦画瓢,将MODULE_PAYMENT_RPPAY_DISABLE_COUNTRIES也增加上代码: & && &$db-&Execute(&insert into & . TABLE_CONFIGURATION . & (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Disable Payment Countries', 'MODULE_PAYMENT_RPPAY_DISABLE_COUNTRIES', '', 'Please Enter Country code (like US,GB)', '6', '3', 'zen_cfg_textarea( ', now())&);将上面的代码插入install方法的合适位置注意上面的configuration_group_id对应的6,我们自己写的也要为6,sort_order排序的话 看你自己的爱好第四步查找update_status方法,在这个方法后面增加代码: & &//disable countries& &function disable_countries(){& && &global $order,$& && & if ( $this-&enabled == true && MODULE_PAYMENT_RPPAY_DISABLE_COUNTRIES!='' ){& && && && &$disable_countries_array=explode(',',str_replace(' ','',MODULE_PAYMENT_RPPAY_DISABLE_COUNTRIES));& && && && &$check_country=$db-&Execute(&SELECT countries_iso_code_2 FROM &.TABLE_COUNTRIES.& WHERE countries_id=&.$order-&delivery['country']['id']);& && && && &if(in_array($check_country-&fields['countries_iso_code_2'],$disable_countries_array)){& && && && && &$this-&enabled =& && && && &}& && & }& &}注意:如果你是其他的支付模块,记得将禁止国家的常量MODULE_PAYMENT_RPPAY_DISABLE_COUNTRIES改为对应的第五步在update_status方法末尾添加代码: $this-&disable_countries();第六步到后台卸载日付模块,然后重装后回多出一个选项Disable Payment Countries,这里填写你不想这个模块显示的国家二位码,多个用逗号隔开,如你要禁止美国和英国的邮寄地址使用日付插件,就填写US,GB
rp.jpg (24.19 KiB) 被浏览 1369 次
转载:链接:
帖子: 140注册:
9:56地址: http://www.ezencart.com zencart技术博客
搞复杂了吧, 不适合菜鸟的, 一般的支付模块可以在后台直接设置哪些国家不允许使用此支付方式的: 输入ISO国家代码
帖子: 544注册:
li-he-qi 写道:搞复杂了吧, 不适合菜鸟的, 一般的支付模块可以在后台直接设置哪些国家不允许使用此支付方式的: 输入ISO国家代码一般支付模块是只允许指定地区使用某支付方式你后台什么地方可以直接设置哪些国家不允许使用此支付方式
帖子: 140注册:
9:56地址: http://www.ezencart.com zencart技术博客
不好意思, 是记错了, 只能设置自己定义的地区, 不能直接设国家, 要走多一步
帖子: 544注册:
显示帖子 : 全部帖子1天7天2周1个月3个月6个月1年
排序 作者发表时间文章标题 升序降序
& 分页: 1 / 1
正在浏览此版面的用户:没有注册用户 和 2 位游客}

我要回帖

更多关于 初级zencart程序员 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信