concrete5 / composer
v1.4.0
2024-03-05 19:56 UTC
Requires
- composer/installers: ^2.2
- concrete5/core: ^9.2
- concretecms/dependency-patches: ^1.7
- symfony/dotenv: ^5|^6|^7
Requires (Dev)
- mockery/mockery: ^1
- pestphp/pest: ^1.23
README
创建新项目
首先为您的项目选择一个名称。在这个示例中,我们的项目名为 "the_oregon_trail"。
$ composer create-project -n concretecms/composer the_oregon_trail
现在您已经有了最新的Concrete版本,可以开始安装了!
注意:这是一个骨架项目。因此,一旦您创建了一个项目,您就可以安装自己的VCS并更改README及其它内容。
从Concrete最新开发版本开始
首先创建一个新的项目
$ composer create-project -n concretecms/composer the_oregon_trail
然后进入该项目并要求dev-develop
版本的concretecms/core
$ cd the_oregon_trail
$ composer require concretecms/core:dev-develop
安装Concrete
进入您的新Concrete项目
$ cd the_oregon_trail
并使用随Concrete CLI工具提供的交互式安装命令
$ ./vendor/bin/concrete c5:install -i
按照指示操作,您的网站将开始安装!
注意:您也可以直接使用PHP运行CLI工具
$ ./public/concrete/bin/concrete
使用composer安装Concrete包
在 packagist.org 上找到您想要安装的包(在这个例子中是 concretecms/sample_composer_package
)
注意:您还可以使用composer的存储库功能来管理使用composer的私有包
$ composer require concretecms/sample_composer_package $ ./vendor/bin/concrete c5:package-install sample_composer_package
编译JS / CSS资源
这个库使用 Laravel Mix。请参阅 webpack.mix.js。要构建资源
npm install npm run dev # Build for development npm run hot # Build with hot reloading enabled (See hot reloading section) npm run watch # Build with a watcher that rebuilds when files change npm run prod # Build for production
热模块替换
热模块替换(热重载)允许您编写代码并在浏览器中立即看到更改,而无需重新加载页面。为了使用Concrete的热重载,您需要使用mix
和mixAsset
辅助函数来包装您的js和css URL。这些函数确保您的资源自动检测热重载模式并输出适当的URL,它们在生产环境中是安全的
在页面主题中
<?php use function Concrete5\Composer\mixAsset; ... class PageTheme extends Theme { public function registerAssets() { $this->requireAsset(mixAsset('/path/to/file.js')); } }
<?php use function Concrete5\Composer\mixAsset; ... class Controller extends BlockController { public function registerViewAssets() { $this->requireAsset(mixAsset('/path/to/js/file.js')); $this->requireAsset(mixAsset('/path/to/css/file.css')); } }
或主题模板中
<?php use function Concrete5\Composer\mix; ?> <script src='<?= mix('/path/to/your/asset.js') ?>'></script> <link href='<?= mix('/path/to/your/asset.css') ?>' />
免费市场插件
您想安装一个在Concrete市场中免费但在packagist.org上不免费的插件吗?请访问 https://composer.concretecms.org/。