All Projects → carlcs → craft-maintenance

carlcs / craft-maintenance

Licence: other
Maintenance plugin for Craft CMS

Programming Languages

PHP
23972 projects - #3 most used programming language
HTML
75241 projects
javascript
184084 projects - #8 most used programming language
CSS
56736 projects

Projects that are alternatives of or similar to craft-maintenance

contact-form-honeypot
Add a honeypot captcha to your Craft CMS contact form.
Stars: ✭ 24 (-65.22%)
Mutual labels:  craftcms, craft-plugin
craft-webperf
Webperf helps you build & maintain high quality websites through Real User Measurement of your website's performance
Stars: ✭ 24 (-65.22%)
Mutual labels:  craftcms, craft-plugin
craft-json-snippets
Helps make CraftCMS models in .json
Stars: ✭ 17 (-75.36%)
Mutual labels:  craftcms, craft-plugin
anchors
Add anchor links to headings in your Craft CMS website content.
Stars: ✭ 47 (-31.88%)
Mutual labels:  craftcms, craft-plugin
craft-routemap
Returns a list of Craft/Vue/React route rules and element URLs for ServiceWorkers from Craft entries
Stars: ✭ 30 (-56.52%)
Mutual labels:  craftcms, craft-plugin
craft-entry-instructions
A simple fieldtype to add instructions.
Stars: ✭ 16 (-76.81%)
Mutual labels:  craftcms, craft-plugin
craft-connect
Allows you to connect to external databases and perform db queries
Stars: ✭ 16 (-76.81%)
Mutual labels:  craftcms, craft-plugin
overflow.craft-plugin
A plain text Craft field type, with a soft or hard character limit.
Stars: ✭ 13 (-81.16%)
Mutual labels:  craftcms, craft-plugin
craft-guide
A CMS Guide for Craft CMS.
Stars: ✭ 62 (-10.14%)
Mutual labels:  craftcms, craft-plugin
snipcart-craft-plugin
Craft e-commerce in a day.
Stars: ✭ 20 (-71.01%)
Mutual labels:  craftcms, craft-plugin
craft-plugin-patrol
Patrol for Craft 3
Stars: ✭ 28 (-59.42%)
Mutual labels:  craftcms, craft-plugin
disclosedassets
DEPRECATED Allow your clients to find asset sub-folders by disclosing them by default
Stars: ✭ 13 (-81.16%)
Mutual labels:  craftcms, craft-plugin
craft-recaptcha
Integrate Google’s reCAPTCHA into your web forms.
Stars: ✭ 16 (-76.81%)
Mutual labels:  craftcms, craft-plugin
query
Run SQL queries as an admin from the Craft CMS control panel.
Stars: ✭ 14 (-79.71%)
Mutual labels:  craftcms, craft-plugin
PowerNap
Sample Task plugin
Stars: ✭ 15 (-78.26%)
Mutual labels:  craftcms, craft-plugin
seomate
SEO, mate! It's important. That's why SEOMate provides the tools you need to craft all the meta tags, sitemaps and JSON-LD microdata you need - in one highly configurable, open and friendly package - with a super-light footprint.
Stars: ✭ 31 (-55.07%)
Mutual labels:  craftcms, craft-plugin
craft-grid
A field that lets you content manage CSS Grid in Craft CMS.
Stars: ✭ 18 (-73.91%)
Mutual labels:  craftcms, craft-plugin
craft-youtubeliveembed
This plugin allows you to embed a YouTube live stream and/or live chat on your webpage
Stars: ✭ 14 (-79.71%)
Mutual labels:  craftcms, craft-plugin
SecureAssetDownload
Craft CMS plugin for secure asset download URLs
Stars: ✭ 22 (-68.12%)
Mutual labels:  craftcms, craft-plugin
fastcgicachebust
DEPRECATED Bust the Nginx FastCGI Cache when entries are saved or created.
Stars: ✭ 20 (-71.01%)
Mutual labels:  craftcms, craft-plugin

Maintenance plugin for Craft CMS

screenshot

The plugin provides tools to help you do maintenance on your Craft CMS website:

Installation

The plugin is available on Packagist and can be installed using Composer. You can also download the latest release and copy the files into craft/plugins/maintenance/.

$ composer require carlcs/craft-maintenance

Maintenance Announcements

Set up maintenance announcements or messages from the plugin’s settings page. You can use markdown to add links, or to format the message. To configure scheduled maintenance you have to set a start date in the announcement’s settings and enable “Backend Maintenance” and/or “Frontend Maintenance”.

Create a new “Maintenance Announcements” widget to display all notifications on the users’ Dashboards. Upcoming maintenance will also be announced with a banner notification.

Maintenance Modes

When backend maintenance mode is active, users navigating the Control Panel will be shown a full screen “Maintenance in progress” overlay. It informs them about the undergoing maintenance, in order to prevent from useless data entry.

The frontend maintenance mode redirects all (frontend) requests to /503, your “service unavailable” page. You can exclude URLs from being redirected and whitelist visitor IP addresses in the plugin settings.

Note: the plugin doesn’t do “content freeze” in a way, that it actually prevents data from being saved or changed in the database. That being said, there are template variables and plugins API provided.

Settings

The plugin can be configured from a craft/config/maintenance.php config file or from Settings/Maintenance.

In Settings/Users you can assign user permissions to configure the “Maintenance in progress” overlay or to grant access for individual user groups while frontend maintenance is carried out.

Template Variables

The plugin provides template variables to get the active announcement model, or to check whether the site is currently undergoing maintenance.

isCpMaintenance

Returns whether the Control Panel is currently undergoing maintenance.

{{ isCpMaintenance ? 'Shop closed' : '<a href="https://github.com/shop">Shop</a>' }}

isSiteMaintenance

Returns whether the site is currently undergoing maintenance.

{% set reason = isSiteMaintenance ? 'scheduled' : 'unscheduled' %}

getAnnouncement( timeInAdvance )

Returns the latest, either currently active or soon to be activated maintenance announcement.

{% set announcement = craft.maintenance.getAnnouncement('2 hours') %}

{% if announcement and announcement.blockSite %}
    <span>{{ announcement.message }}</span>
{% endif %}

Planned features

  • Quick set up maintenance via environment variable
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].