zirak/sitetree-walk

此包已被废弃,不再维护。作者建议使用 g4b0/sitetree-walk 包。

遍历 SiteTree,并通过实现 SiteTreeWalkListener 接口的钩子,让它们在每一页上执行操作。

安装: 10

依赖: 0

建议者: 0

安全: 0

星标: 2

关注者: 2

分支: 1

开放问题: 2

类型:silverstripe-vendormodule

2.0.0 2018-05-10 12:34 UTC

This package is not auto-updated.

Last update: 2022-02-01 12:41:19 UTC


README

实现遍历整个 SiteTree 以在页面上执行操作的烦人任务。

介绍

此模块本身不执行任何操作,它只是递归遍历 SiteTree,并为每个实现 SiteTreeWalkListener 接口的实现者设置钩子,让他们在每一页上执行操作。

要求

  • SilverStripe >= 4.1 < 5.0

对于 3.x 安装,请参阅 1.x 版本

安装

通过 composer 安装模块

composer require --no-update g4b0/sitetree-walk
composer update --no-dev g4b0/sitetree-walk

运行任务。

在运行任务之前,您需要实现您的逻辑,扩展 SiteTreeWalkListener 接口。提供了一个示例,即 SiteTreeWalkPrint,它简单地打印出页面标题。要启用它,将它的成员变量 SiteTreeWalkPrint::$enabled 设置为 true。 SiteTreeWalkListener 实现者的 run() 方法应返回 true 表示已处理的页面,返回 false 表示已排除的页面。以下是根据示例输出的内容:

#sake dev/tasks/SiteTreeWalk "flush=all"
Running Task SiteTreeWalk

Following SiteTreeWalkListener Implementors will be executed: 
	* SiteTreeWalkPrint

Continue? [y|n]y

Home 
Test 
	Test 2 
	Test 3 
Chi siamo 
Contattaci 
Pagina non trovata  *** Excluded from processing
Errore server  *** Excluded from processing
My Page 

################################################
Traversed Pages: 9

Processed Pages: 
	SiteTreeWalkPrint: 9
################################################