concretecms/composer

一个功能齐全的由composer管理的Concrete站点的骨架

安装量: 7,127

依赖项: 0

建议者: 0

安全性: 0

星标: 34

关注者: 13

分支: 23

开放问题: 1

类型:项目

v1.4.0 2024-03-05 19:56 UTC

README

Latest Version on Packagist Software License Build Status Total Downloads

创建新项目

首先为您的项目选择一个名称。在这个例子中,我们的项目名为 "the_oregon_trail"

$ composer create-project -n concretecms/composer the_oregon_trail

现在您拥有了最新的Concrete版本,您已经准备好安装了!

注意:这是一个骨架项目。因此,一旦您创建了一个项目,您就可以安装自己的版本控制系统,并更改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 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的热重载,您需要使用mixmixAsset辅助函数来包装您的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/