innoweb / silverstripe-default-home

一个简单的模块,可以为每个网站或MultiSites站点创建一个主页。

安装次数: 790

依赖者: 0

建议者: 0

安全性: 0

星星: 0

关注者: 4

分支: 2

公开问题: 0

类型:silverstripe-vendormodule

3.1.1 2024-02-26 23:37 UTC

This package is auto-updated.

Last update: 2024-08-27 00:40:31 UTC


README

Version License

概述

此模块确保通过在 SilverStripe\CMS\Controllers\RootURLController::default_homepage_link 中配置的URL段(通常是 'home')始终可以通过网站的主页访问。该模块还确保主页存在,无法取消发布或删除。它还隐藏主页在菜单中(ShowInMenus=false)。

此模块支持单个站点以及 多站点配置多站点 设置。

要求

  • SilverStripe CMS 5.x

注意:此版本与Silverstripe 5兼容。对于Silverstripe 4,请参阅 2版本分支

安装

使用composer安装模块

composer require innoweb/silverstripe-default-home dev-master

然后运行dev/build。

配置

为了使此模块正常工作,您需要在项目中创建一个主页类,并将其与该模块的HomePageExtension关联

<?php

namespace Your\NameSpace;

use Innoweb\DefaultHome\Extensions\HomePageExtension;
use Page;

class HomePage extends Page
{
    private static $table_name = 'HomePage';

    private static $singular_name = "Home Page";
    private static $plural_name = "Home Pages";
    private static $description = 'Site home page';

    private static $hide_ancestor = HomePage::class;

    private static $extensions = [
        HomePageExtension::class
    ];

    ...
	
}

然后,需要设置以下配置值

SilverStripe\CMS\Controllers\RootURLController:
  default_homepage_class: Your\NameSpace\Homepage

许可证

BSD 3-Clause许可证,请参阅 许可证