Symfony 3.4 LiipThemeBundle 为手机加载桌面模板

问题描述

我已经在我的 Symfony 3.4.47 项目中安装了 Liip Theme Bundle。它的目录结构包含应为移动设备加载的移动模板(Resources/themes/phone/)和 Symfony 认桌面版本(Resources/views/)。

上述目录结构适用于 Symfony 2.1,但在 Symfony 3.4 中无法正常工作。但是我发现它根据显示大小识别要加载的主题,但它显示桌面和移动显示认桌面版本 (Resources/views/) 而不是显示 (Resources/themes/phone/) 明确用于移动设备。我该如何解决这个问题?下图是Liip Theme Bundle安装相关文件的目录结构和内容

Symfony 目录结构

src/
    AppBundle/
        Resources/
            views/
                Home/
                    index.html.twig
                layout.html.twig
            themes/
                phone/
                    Home/
                       index.html.twig
                    layout.html.twig

app/AppKernel.PHP

public function registerBundles() {
    $bundles = [
        ...
        new Liip\ThemeBundle\LiipThemeBundle(),...
    ];

app/config/config.yml

liip_theme:
    themes: ['web','phone']
    autodetect_theme: true
    load_controllers: true
    cookie:
        name: LoadEVTheme
        lifetime: 3600
        path: /
        domain: ~
        secure: false
        http_only: false
    

Resources/views/Home/index.html.twig 和 Resources/views/themes/phone/Home/index.html.twig

{% extends '@App//layout.html.twig' %}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)