phpcms v9二级栏目生成到根目录后三级栏目无法访问的解决办法
这个栏目问题折腾了我一天多,可怜我这个美工又不会程序!!!
我的问题是:
我的栏目设置如下:
一级栏目[生成到根目录(是)]> 二级栏目[生成到根目录(是)] > 三级栏目[生成到根目录(否)]
这样出现的问题是:
页面文件生成的路径是mysite/一级栏目/二级栏目/三级栏目/index.html;
但实际上页面生成的url地址是mysite/二级栏目/三级栏目/index.html;
2个地址不一致,导致我的三级栏目不能访问。
首先我看到数据库里面arrparentid和url路径前面居然不一样,难怪打不开了。

然后我就到处找生成parentdir和url字段的方法。
可怜我不会程序啊,几乎花了我一天的时间找,昨天晚上终于被我找着了。
分别是在\phpcms\modules\admin\category.php中的get_parentdir方法
和\phpcms\modules\content\classes\url.class.php中的get_categorydir方法。
经比较这2段程序明显不一样,明显是2个程序员写的。
写category.php页面的程序员我就不多评价了……唉,只能说考虑不周吧。
我从数据库里面看到url字段里的路径都是对的,而parentdir里的路径是错误的。
我就参照url.class.php里面的写法把category.php里的get_parentdir方法改了下。
这个改也花了我今天一天的时间唉,中间我向这个问,那个问,都无果。
只好自己慢慢磨了,程序里面判断都好懂,就是被数组啊,和程序里面的这个this那个this搞的头都晕了,还好以前有点asp的基础。
后来倒是被我琢磨出来了,顺利生成页面,搞定。
这是我改过的地方,给遇到同样问题的人参考参考,改后暂时没发现什么问题。

转:http://www.ratuo.com/websitezt/experience/30582.html
栏目设置成三级栏目,二级设置为生成到根目录后三级生成html路径错误的解决方法:
将phpcms/models/admin/category.php的get_parentdir方法中
if (strpos($url, '://')===false) {
if ($setting['creat_to_html_root']) {
return '';
} else {
$arrparentid = explode(',', $arrparentid);
$arrcatdir = array();
foreach($arrparentid as $id) {
if($id==0) continue;
$arrcatdir[] = $this->categorys[$id]['catdir'];
}
return implode('/', $arrcatdir).'/';
}
}
替换成:
if (strpos($url, '://')===false) {
if ($setting['creat_to_html_root']) {
return '';
} else {
$arrparentid = explode(',', $arrparentid);
$arrcatdir = array();
foreach($arrparentid as $id) {
if($id==0) continue;
if($this->categorys[$id]['sethtml']==0 && $this->categorys[$id]['type']!=1) continue;
$arrcatdir[] = $this->categorys[$id]['catdir'];
}
if($arrcatdir)
{
return implode('/', $arrcatdir).'/';
}else{
return '';
}
}
}
转:http://bbs.phpcms.cn/thread-271429-2-1.html
phpcms v9二级栏目生成到根目录后三级栏目无法访问的解决办法的更多相关文章
- VMware虚拟机中的CentOS7安装Nginx后本机无法访问的解决办法
VMware虚拟机中的CentOS7安装Nginx后本机无法访问的解决办法 在linux上安装nginx 请参考:Linux Centos7 安装 nginx 在虚拟机centos7上安装nginx之 ...
- 搭建windows server 2008 r2 FTP 后 开启防火墙无法访问的解决办法
转自http://kkworms.blog.51cto.com/540865/558477 今天在windows server 2008 R2上安装了FTP,安装过程如下,然后添加内置防火墙设置,设置 ...
- phpcms V9二级目录下分页路径不正确问题的彻底解决方法
在用phpcms V9做二次开发的时候,我们有时候会把一个栏目生成到根目录下,而且这个栏目又有子栏目,我们生成静态的时候分页会出现问题,就是分页的路径的地址错误.有一种解决方法就是,把这个栏目生成动态 ...
- 修改计算机名或IP后Oracle10g无法启动服务的解决办法
修改计算机名或IP后Oracle10g无法启动服务的解决办法 遇到的问题,问题产生原因不详.症状为,windows服务中有一项oracle服务启动不了,报出如下错误. Windows 不能在 本地计算 ...
- 分享:Windows2008重启后提示系统恢复选项的解决办法
如题:WINdows2008服务器. 重启后提示系统恢复选项的解决办法 使用windows 2008后,不能启动的问题,重启后出现 修复系统选项 采用下面帖子中的部分命令搞定之. 我自己是直接使用:选 ...
- Android Studio安装后提示No JVM installation found解决办法
Android Studio安装后提示No JVM installation found解决办法 问题描述:Android Studio安装完毕,打开时出现提示"No JVM install ...
- IOS7.1-7.1.1越狱后无法读取越狱文件的解决办法
IOS7.1-7.1.1越狱后无法读取越狱文件的解决办法 申明: 下面安装PP源的方法已经失效,请不用按照下面的方法操作. 更新最新的方法,在cydia中搜索源 apple fil ...
- NGUI发布后UI层看不见的解决办法
NGUI发布后UI层看不见的解决办法 提示信息:You can'tplace widgets on a layer different than the UIPanel that manages th ...
- # vmware异常关机后,虚拟系统无法启动的解决办法
vmware异常关机后,虚拟系统无法启动的解决办法 先使用everything搜索所有后缀为.lck的文件,这些文件全部删除,如果不确定是否可以删除,先把这些文件转移到桌面,等能启动虚拟系统之后再删除 ...
随机推荐
- mysql权限及用户
一:Flush table tables_name MySQL的FLUSH句法(清除或者重新加载内部缓存) FLUSH flush_option [,flush_option],如果你想要清除一些My ...
- ( 转转)Android初级开发第九讲--Intent最全用法(打开文件跳转页面等)
大家好,今天跟大家谈谈Intent的用法. Intent在安卓中主要用于打开另外一个页面,这个页面可能是一个activity也可能是一个应用,也可能是 其它…… 且看下面介绍,总结摘抄网友一些 ...
- Android XML文件布局各个属性详解
第一常用类:属性值为true或false android:layout_centerHrizontal 水平居中 android:layout_centerVertical 垂直居中 android: ...
- ConcurrentHashMap 源码解析 -- Java 容器
ConcurrentHashMap的整个结构是一个Segment数组,每个数组由单独的一个锁组成,Segment继承了ReentrantLock. 然后每个Segment中的结构又是类似于HashTa ...
- cocos2d-x混合BlendFunc的使用
1.什么是混合模式 “混合”是指两种颜色的叠加方式.在新图片将要渲染画到屏幕上的时候,将用在新图片中的红.绿.蓝和透明度信息,与屏幕上已经存在的图片颜色信息相融合. 说的具体一点,就是把某一像素位置上 ...
- 24小时学通Linux内核之有关Linux文件系统实现的问题
有时间睡懒觉了,却还是五点多醒了,不过一直躺倒九点多才算起来,昨晚一直在弄飞凌的嵌入式开发板,有些问题没解决,自己电脑系统的问题,虽然Win10发布了,,但我还是好喜欢XP呀,好想回家用用家里的XP来 ...
- Windows 8.1 归档 —— Step 3 软件的选择与安装
这里我将列举出一些 Windows 8.1 下实用的软件 --运行库-- 用精简版系统或者绿色版软件时,使用软件经常遇见的情况是“由于应用程序配置不正确,应用程序未能启动”,提示缺少dll文件等.大部 ...
- Ehcache(2.9.x) - Configuration Guide, Configuring Cache
About Ehcache Configuration Ehcache supports declarative configuration via an XML configuration file ...
- Nginx - Additional Modules, Website Access and Logging
The following set of modules allows you to configure how visitors access your website and the way yo ...
- SQL Server 2008 错误15023:当前数据库中已存在用户或角色
解决SQL Server 2008 错误15023:当前数据库中已存在用户或角色,SQLServer2008,错误15023,在使用SQL Server 2008时,我们经常会遇到一个情况:需要把一台 ...