ShopNC二次开发研究日记12:导航菜单伪静态及二级目录制作SEO优化

虫曰:

ShopNC二次开发研究日记》系列由ChinaBUG企划,根据研究ShopNC的二次开发过程而写,其中的案例大多来源于QQ群或者爱好者的提问。


话说,很久没有来写ShopNC开发的内容了,正好刚忙完推广部同事的一个需求就拿来分享一下开发的过程及如何解决的吧。
同事的需求是:
ShopNC每个分类都是以ID的形式存在,如/index.php?act=search&cate_id=621这样子的形式,这样子对SEO不友好^_^想要友好一点的方式,比如可以让人访问/sxgr/sg/pg这样的形式来访问分类“生鲜果蔬\水果\苹果”。
简单吧,一看感觉好简单,其实好费时,忙了我好几天才折腾完毕。
闲话不说了,就分享一下我怎么解决这个需求的吧,还是老规矩废话一点,慢慢分析我的解决思路噢。
正文
要想实现这样子的方式,不用说肯定是需要伪静态支持的,然后需要写相关的重写规则来处理了,除了写规则之外就是需要修改程序,让程序输出我们需要的格式了。
……

ShopEX二次开发DIY日记18之挂件goods_show的商品自定义排序

虫曰:

二次开发DIY日记》系列由ChinaBUG企划,根据开发过程中客户需求做的修改而延伸出来的开发要点,将有很多的需求点可能在实际应用中并不会需要到,在本系列之中我们将会有所考虑的给予分析解答,主要目的只为了更好的说明如何根据不同的需求点来DIY我们的程序。

虫曰: 《二次开发DIY日记》系列由ChinaBUG企划,根据开发过程[…]

ShopNC二次开发研究日记9:2.4版本内的商品地区怎么修改与开发

今天乘清明假期回来,腰有点疼就来说说怎么修改ShopNC2.4版本的商品地区数据,让它按照你自己的需求来变换噢。
注意:请安装火狐的firebug插件,然后开启。
1、商品列表右边“所在地”修改
2、所在地区列表的常用地区及省份的增加删除
3、改完布局,我们还能修改什么呢?对~前台,商品发布有所在地选项怎么修改噢?
4、前台所在地区只有二级(省市),怎样扩展为三级(省市区)?

ShopEX-主页除页头页尾之外系统内容区域空白的解决方案

昨天,同事修改了一下商城的广告,然后首页就再也不能显示出内容了,表现的情况是:页头,页尾的内容正常显示,但是中间的内容部分却一点也不显示。
但是,其他页面的内容却是正常的,也就是只有主页的内容是错误的。
看到这个现象第一个感觉就是page控制器出现问题了,因为ShopEX的主页其实就是一个单页面,然后点开其他的单页面发现都是正常显示。
经过排查,让同事小王同学发现了问题所在了,在调用模板输出的时候,主页不知道为啥,调用错误的模板文件!
SQL:select template_name from sdb_template_relation where source_id=”PAGE:index” and template_type =”page”
正常的时候这个执行应该是获取正确的页面模板才对,结果,这个指向模板包内的一个空文件内(其实该模板文件是以前设置的单页模板,暂时里面只有{main}标签)。结果~自然就是没内容了。

资源网址导航

专业网站推荐

人人都是产品经理 | 产品经理、产品爱好者学习交流平台

设计资源下载

http://dribbble.com/

http://www.designshock.com/

http://99designs.com/designer-blog/

http://www.uehtml.com/

【淘宝素材下载】http://ued.taobao.com/material/?spm=0.0.0.0.6EHpDc

【设计师网址导航】http://hao.uisdc.com/

专业技能教程

【很棒的一个脚本效果教程网站】http://tympanus.net/codrops/category/tutorials/

参考文献

【Android中文Wiki】http://wikidroid.sinaapp.com/%E9%A6%96%E9%A1%B5

专业聚居地

【淘宝】http://ued.taobao.org/blog/

【百度无线】http://mux.baidu.com/

理论图示

【理论知识】http://huaban.com/boards/2752275/

【PS礼仪白皮书】http://hao.uisdc.com/ps/

伟大开源帝国

【微信公共平台SDK】https://github.com/netputer/wechat-php-sdk

ShopNC-错误信息列表及解决方案

1、Db Error: Unknown database ‘shopnc’
2、Access denied for user ‘root’@’localhost’ (using password: YES)
3、Db Error: Table ‘shopnc_activity’ doesn’t exist
4、Fatal error: Incompatible file format: The encoded file has format major ID 65540, whereas the Optimizer expects 2 in E:\PHPnow\127.0.0.4_ShopNC\index.php on line 0
5、Zend Guard Run-time support missing!
6、Db Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘Microsoft YaHei’, ‘Lucida Grande’, ‘Lucida Sans Unicode’, Tahoma, Helvetica, Ari’ at line 1
7、Db Error: Duplicate entry ‘1’ for key 1
8、Db Error: Unknown column ‘w’ in ‘field list’
9、Fatal error: This file has expired. in D:\APMServer5.2.6\www.htcdocs\index.php on line 0
10、Db Error: database connect failed

MySQL-枚举类型ENUM的用法及为什么值是错误的却能查询到数据

是数据类型的问题!
然后查找了一下枚举类型ENUM的用法之后,没有对这个问题做直接解答,但是从字里行间可以感觉,真的是数据类型的问题啦。
因为枚举类型ENUM是字符串类型的,所以访问什么的都是需要引号的噢。
那么为什么会出现上面的“奇迹”呢?
主要原因在于枚举类型如果值是在指定的范围内的,则自动获取填写,而且这个值是忽略大小写的!那么如果值不在指定的范围内怎么办呢?MySQL会自动默认选择第一项的值!
我们回到之前SQL上来看,如果将phonecheck=1修改为phonecheck=2的话会怎样?
结果是:我们获得了phonecheck的值为1的记录!那么phonecheck=0为什么没有数据呢?原因可能在于枚举类型的值的序号从1开始,所以默认找不到这个需要的值了。
从这个案例我们得出如下结论:
在写SQL语句时,请严格按照数据类型来写SQL语句,如一般的会员ID是数字型的,是不用加引号的,但是在MySQL里面这个可加可不加,获取的数据是一致的。

PHP-17个非常有用的PHP类和库

在我们日常程序开发当中,使用一个好的而且成熟的PHP类,可以减少很多手工编码,通过这些通用API的使用,可以大大减轻我们的开发工作。今天,我们将重点介绍了一些很少见却又非常实用的PHP类、库和组件,这将有助于您提高程序功能,更重要是减少应用程序的开发时间。

XAMP-mod_rewrite规则的使用与规则修正符与.htaccess RewriteRule详解

一、mod_rewrite 规则的使用
二、mod_rewrite 规则修正符
三、附录:一些问题的处理方案
2013.04.10 处理ShopEX开启伪静态造成中文乱码、搜索编码错误导致搜索不到商品信息
打开.htaccess文件,找到如下内容(没有的话就自己在ShopEX开启伪静态,让ShopEX自动生成一个吧)
RewriteRule ^(.*)$ index.php?$1 [L]
然后修改为下面的内容:
RewriteRule ^(.*)$ index.php?$1 [QSA,NU,PT,L]

ShopEX-Shopex4.8.5.55324-55328的捆绑商品缺陷:捆绑商品库存不足

最近新建了4个捆绑商品,库存数量都蛮大的,可是其中两个捆绑商品前台下订单时一直提示“捆绑商品库存不足”,但是另外两个商品却没有这个问题。
一看就不正常,不可能是一般程序的问题,所以从底层代码看起来,找呀找呀~
终于找到原因了!
下面是偶的研究心得哈~~自己看,看不懂我也不知道了。
1.新建捆绑商品时,只在goods表内添加商品信息,并在package_product表中做链接。
2.在products表中没有商品信息。

PHP-Can’t connect to MySQL server on ‘localhost’ (10061)(ShopEX登陆超时)

Can’t connect to MySQL server on ‘localhost’ (10061)解决方法
遇上这个提示是很悲剧的问题。因为网上没有特别有效的解决办法。偶也是遇上这个问题,经过层层的分析终于解决问题了。可是,也仅仅是靠猜测得出造成这个原因的缘故。
这边说说偶的简单的思考吧。
根据这个Can’t connect to MySQL server on ‘localhost’提醒,我们第一反应肯定是mysql服务器没有提供服务。确实!遇上这个提示一定是你的服务器暂停服务了。

ShopEX-Fatal error: Call to undefined function register_shutdown_function_once()

Fatal error: Call to undefined function register_shutdown_function_once() in D:\PHPnow\htdocs\core\include_v5\AloneDB.php on line 192
最近为了设计定时调价的功能,对底层的操作做了好多的修改于研究,在办公环境没什么问题,但是今天,平安夜,靠,一点也不平安,拷贝回家的代码尽然不能使用,出现上面显示的提示了。
经过查找register_shutdown_function_once() 所在的文件func_ext.php与kernel.php文件中,不应该在AloneDB.php会出现错误噢,因为在AloneDB.php里面192行压根就没看到调用这个方法的地方,相应的在231行有在调用。
怎么还是会出现这个问题呢?
不知道,那就替换吧,把原版的代码覆盖,问题解决。
后面经过查找,才发觉一个问题所在,我把一段代码调用提前了,就出现这个情况了噢。