分类归档

网站开发

FWQ
网站开发
Zen-cart改变运输地址和改变账单地址流程BUG
改变运输地址 和 改变账单地址 1 2 main_page=checkout_shipping_address             main_page=checkout_payment_address 这种情况都会加载地址薄表单 和 地址簿列表: 这个流程展示文件是如何包含的。 tpl_modules_checkout_address_book.php模板中,对应默认地址的选中: 1 <?php echo zen_draw_radio_field(‘address’, $addresses->fields[‘address_book_id’], ($addresses->fields[‘address_book_id’] == $_SESSION[‘sendto’]), ‘id=”name-‘ . $addresses->fields[‘address_book_id’] . ‘”‘); ?> 单选框是否被选中,完全依赖当前的$_SESSION[‘sendto’],从上面的示例图可以看到tpl_modules_checkout_address_book.php模板会被两个控制器(checkout_shipping_address 和…
2025-04-26 阅读全文 →
FWQ
网站开发
ZenCart给顾客发送的订单(更新)确认邮件内容把中
 由于语言问题,我们喜欢把zencart的后台改为中文,这样使用起来就比较亲切。但是大家开始可能没有发现,因为你没有测试,订单状态发生改变后,客户收到的是中文邮件不是英文,那样可不好,老外看不懂。那我们需要修改。有两个办法: 第一,前后台都英文。这个办法我们是不希望使用的。 第二,需要修改几个文件。以下提到的schinese文件各位看好了,是原先在安装中文英文转化时候的,非现在的,因为现在的你也找不到。 1、把 \admin\includes\languages\english\email_extras.php 复制到 \admin\includes\languages\schinese\email_extras.php 2、在\admin\includes\languages\schinese\orders.php文件中,下面代码改为英文即可 define(‘EMAIL_SEPARATOR’, ‘——————————————————‘); define(‘EMAIL_TEXT_SUBJECT’, ‘订单更新’); define(‘EMAIL_TEXT_ORDER_NUMBER’, ‘订单号码:’); define(‘EMAIL_TEXT_INVOICE_URL’, ‘详细发票:’); define(‘EMAIL_TEXT_DATE_ORDERED’, ‘订单日期:’); define(‘EMAIL_TEXT_COMMENTS_UPDATE’, ‘<em>您订单的备注为: </em>’); define(‘EMAIL_TEXT_STATUS_UPDATED’, ‘您的订单状态更新为:’ . “\n”); define(‘EMAIL_TEXT_STATUS_LABEL’, ‘<strong>新状态:</strong> %s’…
2025-04-26 阅读全文 →
FWQ
网站开发
zencart HTMLarea在某些小语种中不能使用
刚刚发现在zen cart网站后台启用了HTMLarea编辑器后,有的网站在产品编辑页面看不到编辑器的工具栏,有的会提示js错误。比如在danish,swedish两个语种的网站后台,这个HTMLarea编辑器就不能使用。 借助firefox浏览器的web developers和firebug插件,我发现有提示js错误,比如danish网站的错误提示是在htmlarea.js文件中出错(错误提示1),而swedish的网站则根本没加载到htmlarea/lang/sv.js文件(错误提示2),里面的内容是一些html而不是js代码。 firebug控制台的错误提示如下: (错误提示1) this._doc is undefined http://www.truereligiondanmark.eu/editors/htmlarea/htmlarea.js Line 1739 HTMLArea.I18N.msg is undefined http://www.truereligiondanmark.eu/editors/htmlarea/htmlarea.js Line 609   (错误提示2) HTMLArea.I18N is undefined  var plugin_lang = dir +…
2025-04-26 阅读全文 →
FWQ
网站开发
彻底征服zencart的默认page页面
zencart安装后默认会有page_2、page_3、page_4这3个没有啥用处的页面,现在我们拿其中的任意一个修改成about us页面,通过这样的修改你就会知道自己添加页面需要怎么处理了。 我们以默认的classic模版为例来介绍下具体步骤: 1、打开/includes/filenames.php,挨着contact_us(非必须挨着)添加下面两句后保存: define('FILENAME_DEFINE_ABOUT_US', 'define_about_us'); define('FILENAME_ABOUT_US', 'about_us'); 2、打开/includes/modules/pages,该文件夹下有page_2、page_3、page_4这3个文件夹,假设我们要拿page 2开刀,就将page_2的文件夹名称改为about_us,改完后打开about_us,打开里面的header_php.php,修改里面的 FILENAME_DEFINE_PAGE_2 为FILENAME_DEFINE_ABOUT_US 并保存; 3、打开/includes/languages/english.php,修改里面的define(‘BOX_INFORMATION_PAGE_2’, ‘Page 2’); 为define(‘BOX_INFORMATION_ABOUT_US’, ‘About Us’); 并保存; 4、打开/includes/languages/english/,将里面的 page_2.php 更名为 about_us.php ,打开about_us.php,修改里面的 Page 2 为 About Us 并保存; 5、打开/includes/languages/english/html_includes/classic/,将里面的define_page_2.php 更名为 define_about_us.php,上面目录classic为默认模版名,最好将/includes/languages/english/html_includes下的define_page_2.php一并更名为define_about_us.php。 6、打开/includes/templates/template_default/templates/,将里面的tpl_page_2_default.php 更名为 tpl_about_us_default.php,然后打开tpl_about_us_default.php,修改 DEFINE_PAGE_2_STATUS 为 DEFINE_ABOUT_US_STATUS,并保存。 到这一步基本上已经大功告成,但是打开 yourdomain.com/index.php?main_page=about_us 除了显示about us的标题外并不显示内容,问题出在第6步 tpl_about_us_default.php 文件里的15行一个判断: <?php if…
2025-04-26 阅读全文 →
FWQ
网站开发
zencart新增configuration商店全局变量sql
zencart新增configuration商店全局变量sql,将下面代码中的 ‘新增商店变量1’, ‘ADDS_NAME_1’, ‘新增商店变量1的值’, ‘新增商店变量1描述’换成你需要新增的内容即可。 INSERT INTO `configuration` (`configuration_id`, `configuration_title`, `configuration_key`, `configuration_value`, `configuration_description`, `configuration_group_id`, `sort_order`, `last_modified`, `date_added`, `use_function`, `set_function`) VALUES ('', '新增商店变量1', 'ADDS_NAME_1', '新增商店变量1的值', '新增商店变量1描述', 1, 1, '2011-01-01…
2025-04-26 阅读全文 →
FWQ
网站开发
如何批量设置zen cart 商品属性
 请按照下面的步骤设置zencart商品选项名称和内容: 1. 新建一个选项名称: 颜色 [商品管理]-[选项名称],输入[选项名称、排序值、类型],点击“增加”按钮 2. 设置选项内容,例如30种不同的颜色 [商品管理]-[选项内容],[选项名称]下拉菜单中选择刚建好的选项,输入[选项内容、排序],点击“增加”按钮 3. 添加一个颜色属性到一个商品 [商品管理]-[属性控制],选择商品,点击“显示”按钮。在“增加属性”窗口中,先选“选项名称”,再选相应的“选项内容”,例如白色。 在“价格和重量”栏下,输入价格,例如白色的产品要加10元,那么在 + 号右边一个格子中输入 10点击“增加” 按钮。(设置属性时还有一些其它的可选项,具体说明看本栏目下的属性定价贴子中的说明) 重复以上步骤添加属性,或者用下面的方法批量添加: 4. 在 商品管理 -> 选项名称 -> 选择全局选项中的第二个:”添加该选项的所有选项内容到一个商品” ,选项名称选择“颜色”,点击“更新”,将所有颜色复制到该商品。现在你有一个商品,拥有30种颜色属性。 5. 在商品管理 ->…
2025-04-26 阅读全文 →
FWQ
网站开发
屏蔽ZenCart目录logs日志文件
在ZenCart根目录下的logs文件夹中,经常生成一些错误文件类似myDEBUGxxxxx.log这样的错误文件(而且这样的错误文件由来并非网站出现什么严重不可挽救的错误,大部分是一些未定义变量这样的不起眼的小错误),在调试网站的时候,这会是个很好的提示助自己改正错误。可是在网站正常运行中,顾客的访问次数增加,网站会不断生成错误文件,导致内存被占满,那么就得不偿失了,必要时,还是得去修改它。 1,屏蔽前台错误日志文件生成:找到includes/extra_configures/enable_error_logging.php文件,搜索@ini_set(‘log_errors’, 1);          将1改为0 即可。 2,屏蔽后台错误日志文件的生成:找到admin/includes/extra_configures/enable_error_logging.php文件,搜索@ini_set(‘log_errors’, 1);      将1改为0即可。   这样设置之后,ZenCart网站不会再生成日志文件。如果哪一天出现什么大问题而你又发现不了,到时候再打开,帮助调试。
2025-04-26 阅读全文 →
FWQ
网站开发
zen cart根据购物车产品数量或订单总额进行折扣
zen cart关于折扣的插件不少,但大部分是基于产品的,比如买多少个产品时,价格打多少折,或者是买多少个产品送多少。今天要探讨的是基于订单总金额或整个购物车产品的数量来打折。如, 当订单金额超过$500时,优惠$26 当订单金额超过$1000时,给%8的折扣 当订单中产品总数量超过5个时,给予整个订单总额%5的折扣 当订单中产品数量超过20个时,整个订单打9折 等等… … 经过对zen cart相关代码的分析,我发现实施上面的这睦规则其实很容易。只是zen cart本身并没有非常好的模块和数据分离机制,所以我就先把简单实施的方法写出,待以后有空再整理形成模块发布。 几乎所有的zen cart模板通常只会有两到三个地方会显示订单的汇总信息,一个是在购物车页面shopping_cart,再一个是订单信息确认页面checkout_confirmation,最后还有可能显示的则是相关的sidebox.当然某些zen cart模板可能会有更多的页面有显示这个内容。不过总结下来,不外乎这两个页面的修改。所以,实现这个打折功能的主要工作就是修改这两个页面和生成订单的类。事实上经过代码分析我发现shopping_cart页面的订单统计采用的方法和checkout_confirmation页面的不一样,前者是调用shopping_cart类,而后者是调用order类。 先看下shopping_cart页面的模板includes/templates/[模板名称]/templates/tpl_shopping_cart_default.php: 原先购物车只显示订单总金额,现在要显示三项,分别是打折前总金额,优惠的金额,折扣后的总金额,模板要修改成   那么就需要在shopping_cart对应的header_php.php文件中定义初始化这三个变量includes/modules/pages/shopping_cart/header_php.php: $flagHasCartContents = ($_SESSION[‘cart’]->count_contents() > 0); $cartShowTotal = $currencies->format($_SESSION[‘cart’]->show_total()); //added by…
2025-04-26 阅读全文 →
FWQ
网站开发
ZenCart新增加静态化页面
ZenCart新增加静态化页面有两种方法,推荐使用第二种方法: 一、使用简易简易页面     优点:方便         缺点:url无法控制 二、新建php文件实现   优点:可自己设定URL   缺点:要改好几个地方       方法一:只需要到zencart后台    英文:tools-EZ-Pages—>new file按提示填写相应信息   中文: 工具–>简易页面编辑 链接形式如:index.php?main_page=page&id=2使用最新ultimate_seo_urls插件seo伪静态插件后  faq-ezp-2.html   方法二:新建php文件实现 1.在includes\languages\english\html_includes目录中新建文件define_faq.php 2.在includes\languages\english目录中新建文件faq.php,内容  <?php  define(‘NAVBAR_TITLE’, ‘FAQ’);…
2025-04-26 阅读全文 →
FWQ
网站开发
解决ZenCart后台订单不显示电话号码
登录zencart后台查找订单,在几个已经支付的订单中,偶然间发现存在一个相同的问题:订单没有显示客户的电话号码。这可真是个问题(想象一下,在国内填快递单的时候电话号码都是必填的) 按照zencart购物流程走,一步步的点击,偶然间发现注册页面存在一个bug:明明已经填写的了电话号码,可是一直提示电话号码没有填写:Your Telephone Number must contain a minimum of 5 characters. 我一直在想为什么会出现这个限制呢?我去后台最小值那里将电话号码改为了0,去前台再注册,的确不会再出现要你填写电话号码了。可是去后台的新注册的客户资料里面看看,还是没有电话号码的显示,然后再去数据中customer表中发现的确没有客户的电话号码,可以判断这是在注册的时候没有插入电话号码字段了。 纠结了几天,明白了是网站装了fast and esay checkout(快速支付)插件导致的,然后去zen-cart.com搜寻相关的帖子,以及去numinix.com找到这个插件的相关技术支持,初步判断了是由于在后台新插入字段telephone number字段导致无法注册的。   解决方法: 1,打开数据用sql语句查找telephone字段:select * from configuration where configuration_key=’ACCOUNT_TELEPHONE’;  查找出来后将这个选项删除。 2,打开includes/templates/你的模板名字/templates/tpl_modules_create_account.php   找到 if…
2025-04-26 阅读全文 →