请选择 进入手机版 | 继续访问电脑版

SpeedPHP框架

 找回密码
 注册成为新用户

QQ登录

只需一步,快速开始

查看: 3994|回复: 11

CMS系统示例-疑难问答

[复制链接]
发表于 2017-12-29 09:19:33 | 显示全部楼层 |阅读模式
新版speedphp框架CMS例子发布,有完整的CMS功能,包括HTML生成,可视化编辑器,权限及角色组,图片上传,模板在线修改等功能。
围观地址https://github.com/SpeedPHP/example-cms
本贴是关于此CMS系统示例的疑难问答,欢迎留言!

首先,要注意:

  • 每个Part里面,material目录是原始页面,和数据库SQL文件。
  • 每个Part里面,src目录是现成源码,也是HTTP服务器指向的根目录。
  • 导入数据库SQL。
  • 最好下载最新版本的speed.php文件,替换src/protected/lib目录的speed.php文件以保证最新特性能够支持。

记得要完成这几步,才能看到效果。

源码中四个Part 的关系:

由于理解的需要,这里是逐步递进的四个包。比如说 Part2 包含了 Part1 全部功能,以此类推;方便大家看到如何一步步实现CMS。

也可以直接看Part4,那是有全部功能的例子

Part 1
前台页面显示主页、分类页、文章页。
后台管理页。
后台管理可管理分类和文章。
可视化文章编辑器xheditor。

Part 2
包含Part 1的全部功能,新增加
全局HTML生成
发布和编辑文章时,会重新生成HTML

Part 3
包含Part 1 和 Part 2的全部功能,新增加
权限和权限组
用户登录权限控制及用户管理

Part 4
包含Part 1 和 Part 2 和 Part 3的全部功能,新增加
图片上传
模板在线修改





各Part要注意的问题:

每个Part的表结构会稍有不同,如果觉得麻烦,可以直接用Part 4的SQL。

Part 1,src/protected/config.php配置文件中,user 字段是管理员登录配置。


Part 2,配置中,htmlmakeup字段如果设置成false,那么就不会启动HTML生成功能。要开启HTML生成功能,要把htmlmakeup字段设成一个随机字符串,如 'htmlmakeup' => 'test' 。


Part 3,记得要先导数据,不然登录不了。初试用户名是:admin,密码是:123456

Part 3,有了权限系统,而配置中user字段改名manager字段,里面是用户名(没有密码),表示这些用户是最高管理员,不可删除和被其他管理员修改密码。

Part 3,/src/protected/controller/admin/BaseController.php 的第9行,可以先注释掉。然后添加各种权限,角色和设置好用户,不然是进不去的。

Part 4,以下两个目录需要写入文件,请设置成可写入:

/src/upload
/src/protected/view/template




发表于 2017-12-30 13:13:29 | 显示全部楼层
支持支持,很喜欢speedPhp
发表于 2018-3-19 17:13:11 | 显示全部楼层
果断赞一个!!!
发表于 2018-3-27 09:41:15 | 显示全部楼层
先赞一下,如出一个祥细的讲解就更好了,如出一个开发的祥实的开发过程,如出一本书就更好了
发表于 2018-5-30 10:50:17 | 显示全部楼层
Part 4 伪静态在config.php里面要怎么设置呢?

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="已导入的规则 1" stopProcessing="true">
                    <match url="^index\.php$" ignoreCase="false" />
                    <action type="None" />
                </rule>
                <rule name="已导入的规则 2" stopProcessing="true">
                    <match url="." ignoreCase="false" />
                    <conditions logicalGrouping="MatchAll">
                        <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
                        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
                    </conditions>
                    <action type="Rewrite" url="index.php" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>
 楼主| 发表于 2018-5-30 12:15:53 | 显示全部楼层
liquan 发表于 2018-5-30 10:50
Part 4 伪静态在config.php里面要怎么设置呢?

请看手册
发表于 2018-6-20 10:23:17 | 显示全部楼层
非常感谢作者的辛勤付出和热心共享,我下载part4在本机搭载平台测试时,点击后台文章管理的“模板”链接,发现目标打开出错,模板编辑工能用不到,为什么呢?出错提示如下:
Parse error: syntax error, unexpected '.', expecting ',' or ';' in E:\iclass\protected\controller\admin\TemplateController.php on line 4
1.jpg
 楼主| 发表于 2018-6-20 14:33:21 | 显示全部楼层
sandi 发表于 2018-6-20 10:23
非常感谢作者的辛勤付出和热心共享,我下载part4在本机搭载平台测试时,点击后台文章管理的“模板”链接, ...

那个文件第4行,只有
private $template_dir = APP_DIR.DS.'protected'.DS.'view'.DS;
这样子的。
按照你的错误提示,有两个可能性:

1. 改过了源码,恢复就行。
2. 直接进入了这个文件,所以没有定义过那些常量。所以必须通过url函数生成的链接来进入。

或者可以先看看入门教材,有了解较多了一般这类问题都容易解决。
发表于 2018-6-20 15:00:38 | 显示全部楼层
jake 发表于 2018-6-20 14:33
那个文件第4行,只有
private $template_dir = APP_DIR.DS.'protected'.DS.'view'.DS;
这样子的。

我把这一行注释掉后就可以了。
您需要登录后才可以回帖 登录 | 注册成为新用户

本版积分规则

手机浏览|简版|中文PHP框架|开源协议|SpeedPHP.com ( 粤ICP备08008671号

GMT+8, 2020-2-23 15:15

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表