lekoala/silverstripe-starter-theme

SilverStripe 的起始主题

安装: 4

依赖者: 0

建议者: 0

安全性: 0

星标: 1

关注者: 3

分支: 0

开放问题: 0

语言:CSS

类型:silverstripe-theme

dev-master 2022-09-30 16:27 UTC

This package is auto-updated.

Last update: 2024-08-29 06:07:16 UTC


README

  • 将主题复制到你的 SilverStripe 项目的 themes/ 目录。如果命名正确,应该有一个名为 themes/[your-theme]/templates 的目录。
  • 将以下内容添加到你的 app/config/theme.yml 文件中。
SilverStripe\View\SSViewer:
    themes:
        - "$public"
        - "[your-theme]"
        - "$default"
  • 更新 composer.json 以适应你的新主题名称。
  • 如果需要,运行 composer vendor-expose
  • 祝您愉快地开发!

此主题不打算单独使用!它只是您自己开发的一个起点。

主题助手

一些功能已作为 trait 在 src/StarterTheme.php 下提供,以便方便使用。

<?php

require_once BASE_PATH . '/themes/starter/src/StarterTheme.php';

use SilverStripe\View\Requirements;
use LeKoala\DeferBackend\DeferBackend;
use SilverStripe\CMS\Controllers\ContentController;

class PageController extends ContentController
{
    use StarterTheme;
    ...

功能

此主题基本上是基于这篇文章中提出的建议构建的:[https://www.matuzo.at/blog/html-boilerplate/](https://www.matuzo.at/blog/html-boilerplate/),这是一篇关于现代脚手架的精彩介绍。

它捆绑了 bootstrap 5,但您可以自由使用任何您喜欢的。Scss 文件使用 dart sass 编译,并使用 autoprefixer 前缀。

favicon

favicon 需要在 /images 文件夹中设置。使用图标生成器

如果可能,请使用 svg 图标!

提供的图标是用 https://www.blobmaker.app/ 制作的。

字体

请使用 字体助手 创建您 google 字体的本地版本或使用您自己的。请仅使用 woff2 字体以获得最佳效果。

字体需要预先加载以获得最佳效果,请参阅如何预先加载 StarterTheme trait 中的字体。

搜索表单

默认情况下,搜索表单在所有页面上工作。但这会导致很多问题。一般来说,我更愿意使用自定义搜索控制器来显示结果。这应该通过 $SearchControllerLink 提供。

您可以使用 simple search 启用此功能。

Javascript

默认情况下,此主题不需要 JavaScript。这是因为我强烈建议您从控制器中管理事物。

以下是一个您可以在 PageController::init 中包含的示例代码片段。

protected function init()
{
    parent::init();
    DeferBackend::replaceBackend();
    Requirements::themedJavascript("javascript/all.min.js", ['type' => 'module']);
}

JavaScript 使用现代标准,并使用 esbuild 编译。

请注意,我们在此处使用 JavaScript 模块,因为它允许安全地使用现代 JavaScript 并默认延迟加载 JavaScript。您需要使用我的模块 defer backend,并将 enable_js_modules 设置为 true 才能使此功能生效。