如何在SilverStripe的主题文件夹中创建公用文件夹

问题描述 投票:1回答:1

我正在从事旧版SilverStripe项目。我正在尝试在主题文件夹中创建一个名为“文件”的公用文件夹。该文件夹中的所有文件都可以通过浏览器访问。

我创建了一个文件夹,并在其中创建了一个文件。

enter image description here

[当我从URL访问文件夹中的文件时,它给我404错误。但是,当我从其他文件夹(如css,字体,img等)访问文件时,它可以正常工作。它不适用于我刚刚创建的“文件”文件夹。我需要配置一些东西吗?

silverstripe silverstripe-4
1个回答
0
投票

您需要“暴露”项目composer.json中的文件夹,因此运行composer vendor-expose将符号链接或将文件复制到公共资源文件夹。

您的composer.json将如下所示:

{
    "name": "app/myproject",
    "type": "silverstripe-project",
    "require": {
        "silverstripe/recipe-cms": "4.4.x-dev"
    },
    "extra": {
        "resources-dir": "_resources",
        "expose": [
            "themes/mytheme/dist",
            "themes/mytheme/files"
        ]
    }
}

[在所有名为“ dist”的文件夹中收集所有生成的可公开文件(js,css)的好习惯,这样您就不必分别公开它们。

您可以手动调用composer vendor-expose(例如,在每次文件更改后在Windows上导致符号链接在Windows下都不起作用,并且在您每次运行composer installcomposer update时都会自动调用它。

See docs

© www.soinside.com 2019 - 2024. All rights reserved.