如何加载CSS和JavaScript文件在Zend框架1的模块?(how to load css a

2019-10-17 19:47发布

我有休耕结构

/app
    application/
        configs/
        modules/
             default/
                   controllers/
                   layouts/
                   views/
                   forms/
             profile/
                   controllers/
                   layouts/
                   views/
                   forms/
                   assets/
                       css/
                       js/
                       images/
    library/
    public/
        css/
        js/
        images/
        uploads/

我如何可以加载JS和CSS文件

/application/modules/profile/assets/...

并使用类似的东西

$this->view->headLink()->appendStylesheet('path/to/file');

在这个问题上的任何想法?

Answer 1:

该HeadLink视图助手只设法这是在你的HTML页面的部分呈现CSS文件的引用。 这些样式应该始终有一个公共的URL,这意味着他们将不得不在“公共”文件夹中的某个位置。

一个解决方案是只移动CSS文件存在。 另一个解决方案是有机会上某种PHP脚本从“公共”文件夹以外的位置读取CSS文件,然后打印出它的内容。 Zend框架并没有对此有一个标准组件的,所以我会建议重新组织项目,所以所有的CSS可以在“公共”文件夹中的某个位置。



Answer 2:

虽然,我与P44T同意样式表应始终保持公共文件夹内有一些情况下,您可能需要为你从你的模块添加一些额外的造型。 这样做的一个例子是,如果你想发布你的模块从应用程序分开,你不希望从添加模块单独添加样式表。

下面是一个例子,说明你可以从任何观点:

<?php $this->headStyle()->captureStart() ?>
    // add plain css or include a file like this:
    <?php include APPLICATION_PATH . 'modules/[modulename]/assets/css/style.css'; ?>
<?php $this->headStyle()->captureEnd() ?>

希望这可以帮助 :)



文章来源: how to load css and javascript files from a module in Zend Framework 1?