承接 andrewandante/silverstripe-async-publisher 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

andrewandante/silverstripe-async-publisher

最新稳定版本:v2.1.0

Composer 安装命令:

composer require andrewandante/silverstripe-async-publisher

包简介

An asynchronous publishing hook for large datasets.

README 文档

README

CircleCI

Pushes writing and publishing to a Queued Job to avoid in-browser timeouts

Installation

composer require andrewandante/silverstripe-async-publisher

Once the module is installed, simply apply AndrewAndante\SilverStripe\AsyncPublisher\Extension\AsyncPublisherExtension to any classes that you wish to enable Queued Publishing for:

---
name: async-publisher-config
---
My\SuperSlow\Page:
  extensions:
      - AndrewAndante\SilverStripe\AsyncPublisher\Extension\AsyncPublisherExtension

This will apply it by default to all instances of that class. You can make this a little more configurable using the shouldPreferAsync() method in an extension; for example, you might attach the below to UserDefinedForm:

<?php

namespace My\App\Extensions;

use SilverStripe\Core\Extension;

class ShouldPreferAsyncExtension extends Extension
{
    public function shouldPreferAsync()
    {
        return $this->owner->Fields()->count() >= 20;
    }
}

Which will default to Queueing if there are 20 or more fields on the User Defined form, but otherwise simply add the queueing actions to the "more options" menu

Features

  • replaces the "Save" and "Publish" buttons with "Queue Save" and "Queue Publish"
  • adds "Save immediately" and "Publish immediately" to the "More Options" menu (in case of emergency)
  • prevents editing while jobs are in the queue to prevent weird race conditions

Screenshots

CMS Actions

Pending Jobs Warning

TODOS

  • test better with Unpublish and Archive
  • make it more configurable/extensible in general

Maintainers

统计信息

  • 总下载量: 243
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 2
  • 点击次数: 3
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 2
  • Watchers: 2
  • Forks: 3
  • 开发语言: PHP

其他信息

  • 授权协议: BSD-3-Clause
  • 更新时间: 2022-07-29

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固