1.不显示 只需要 修改一处即可
/system/module/page/control.php 的index方法
将
$pages = $this->loadModel('article')->getList('page', 0, $orderBy = null);
改为
$pages = $this->loadModel('article')->getList('page', 0, $orderBy = 'editedDate'); 即可 不显示是因为sql错误,orderby为空
2. 权限问题出在这里
/system/module/common/model.php的 if(!commonModel::hasPriv($module, $method)) $this->deny($module, $method);
进入 hasPriv()方法 发现是这一句在搞怪 if(!commonModel::isAvailable($module)) return false;
进入isAvailable()方法后发现问题出来依赖模块上代码如下
/* Check whether dependence modules is available. */
if(!empty($config->dependence->$module) )
{
var_dump($config->dependence->$module); // $module is page dump is
contribution
foreach($config->dependence->$module as $dependModule)
{
var_dump($config->site->modules);//dump is
article,product,message,search,stat
if(!sset($config->site->modules) or strpos($config->site->modules, $dependModule) === false) return false;
}
}
这里的判断 strpos($config->site->modules, $dependModule) === false 在module 为page时 恒为true 所以 返回错误 就到值deny()方法被执行了。
我的处理方法噶、
这里我稍微变动了下 将 if(!sset($config->site->modules) or strpos($config->site->modules, $dependModule) === false) return false 改为
if(!sset($config->site->modules) and strpos($config->site->modules, $dependModule) === false) return false; 改动为 or >>> and
这个时候page页面正常显示 (url: http://your domainname/page/)
贴出来希望 蝉知的开发人员看看是否会出现其他问题
本修改基于蝉知 5.1 官方 zip包,未做任何改动
这个输出是在系统后台/admin.php?m=site&f=setbasic 进行设置的 所以可能与默认值不同
我办公室机器的数据与家里电脑数据没有同步,所以无法给你截图我办公室的配置
但是基本上是确定通过这里进行设置的
var_dump($config->site->modules);//dump is article,product,message,search,stat
这个输出结果不对,应该有page的看看有没有分类的别名设置成page了
我们也再检查下代码。