confluxgroup/craft-level-entry-types

允许开发者限制结构部分每个级别可用的入口类型。

1.0.5 2022-02-24 17:01 UTC

This package is auto-updated.

Last update: 2024-09-24 22:27:56 UTC


README

plugin icon logo

Craft CMS 3.x 的级别入口类型插件

overview gif

允许开发者限制结构部分每个级别可用的入口类型。

要求

此插件需要 Craft CMS 3.4.0 或更高版本。

安装

您可以通过 Craft 控制面板的插件商店安装 Level Entry Types

要手动安装插件,请按照以下说明操作。

  1. 打开您的终端并转到您的 Craft 项目

     cd /path/to/project
    
  2. 然后告诉 Composer 加载插件

     composer require confluxgroup/craft-level-entry-types
    
  3. 在控制面板中,转到设置 → 插件,并点击“安装”按钮安装 Level Entry Types。

Level Entry Types 概述

此插件允许您根据入口的当前结构级别指定用户可用的入口类型。

例如,如果您有一个由着陆页和标签页组成的结构,您可以确保标签页只能作为着陆页的后代。

此插件将允许用户从筛选后的入口类型列表中选择,或者如果用户配置了结构层次结构错误,则显示错误消息。

配置 Level Entry Types

此插件没有控制面板设置。

Level Entry Types 支持标准的多环境友好型配置插件设置文件。只需将 level-entry-types.php 文件从 vendor/confluxgroup/craft-level-entry-types 目录复制到您的 Craft config 目录,并按需配置设置。

示例 level-entry-types.php 配置文件

<?php

return [
	'structures' => [
		// list your structure section handles		
		'sectionOneHandle' => [
			// add each level you want to limit
			1 => [
				// add each entry type that's allowed at this level
				'entryTypeHandle',
				'entryTypeTwoHandle
			],
			2 => [
				'entryTypeThreeHandle'
			]
		], // don't forget a comma if you're defining multiple structures
	]
];
  1. 在结构数组中,添加您想要管理的入口类型的部分句柄(必须是结构)。
  2. 为结构中的每个级别创建一个可接受入口类型的数组。每个级别可以包含所需数量的入口类型。 如果级别留空或根本未定义,则将应用 Craft 的本地行为,允许在该级别使用任何入口类型。
  3. 在 Craft 控制面板中,对于使用此插件的每个结构,请向元素索引视图添加一个新的“入口类型”列。这是从元素索引页面向最终用户显示错误所必需的。

当保存入口时,此插件不会更改 Craft 的本地行为。如果某个入口位于它不应该的位置,此插件将提供错误 UI 和闪存警报来指示这种情况。功能上,我们并没有阻止或更改本地 Craft 行为。

使用 Level Entry Types

一旦配置文件就绪并且已将列添加到控制面板元素索引页面,您就可以开始了。

请考虑以下示例

您有一个 结构,其中包含 公司。顶级入口应该是 公司 名称。第二级应该是公司的各种 部门。第三级是 部门 页上的各种标签,可以是 新闻团队自定义标签 类型。

使用此插件,将发生以下情况

  1. 在创建新条目时,“入口类型”字段旁边的下拉选项将根据您的配置启用/禁用。
  2. 在创建新条目时,选择或更改父条目将自动更新可用的入口类型列表。
  3. 如果结构调整为无效配置,结构列表页面和编辑条目页面将显示错误通知,提示更改父条目或条目类型。

致谢

Conflux GroupCotter Interactive 提供