EDUSOHO踩坑笔记之八:主题开发之添加页面

69 篇文章 0 订阅
59 篇文章 6 订阅

EDUSOHO踩坑笔记之八:主题开发之添加页面

一、页面模板路径寻址原理

        EduSoho 在查找页面的模板时,会优先查找主题下对应的同名文件是否存在,如存在就返回主题下的模板文件,来实现主题定制页面的功能。系统的页面模板目录位于app/Resources/views下,主题的模板目录位于web/themes/{当前主题名}/views。以查找首页的模板文件default/index.html.twig为例:

  1. 查找当前主题的模板目录web/themes/{当前主题名}/veiws/default/index.html.twig,如找到则返回该文件,并结束查找;
  2. 查找系统模板目录app/Resources/views/default/index.html.twig,如找到则返回该文件,并结束查找;否则报错;

     由此,主题定制某个页面,只要找到该页面在系统中的模板路径,在主题目录下创建同路径的文件,然后定制自己想要的页面即可。

二、常见页面模板路径

模板路径页面名称页面地址
default/index.html.twig首页/
course-set/explore.html.twig课程分类页/course/explore
classroom/explore.html.twig班级分类页/classroom/explore
open-course/explore.html.twig公开课分类/open/course/explore
user/course-sets.html.twig个人首页/user/{id}

以上页面模板文件,可在系统页面模板目录下app/Resources/views找到。

三、查找页面模板路径

上面我们讲了页面模板路径寻址原理,以及常见页面模板路径。如果需要定制某页面,可按以下方法,找到对应的模板页面路径。下面,以个人首页为例做讲解。

获取路由信息

点击页面顶部导航行的"我的头像"下拉菜单中的"个人主页",进入个人主页。在页面最下方的开发者工具条,我们可以获取到当前页面的路由信息。具体如下:

个人主页路由信息

由图所示,当前页面由AppBundle\Controller\UserController这个类的showAction这个方法来实现。

 看不到开发者工具栏?

开发者工具条,只有在开发模式下可见,请参考相关的资料。

获取页面模板路径

我们可以在src/AppBundle/Controller/UserController.php这个文件中找到public function showAction(...) 这个函数,代码如下:

public function showAction(Request $request, $id)
{
    // ...

    return $this->render('user/course-sets.html.twig', array(
        // ...
    ));
}

函数最后一行调用的render函数的第一个参数user/course-sets.html.twig即当前页面的模板路径。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jyl_sh

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值