Download the PHP package lewiscom/presto without Composer

On this page you can find all versions of the php package lewiscom/presto. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package presto

Presto

Presto is a static file extension for the native Craft cache. It works alongside standard Twig {% cache %} tag pairs and includes cache-busting features. Just like standard caching, Presto is automatic. Simply install, update your layouts, and then the cache will bust automatically as you create, update, or delete content.

Requirements

This plugin requires Craft CMS 3.0.0 or later.

Installation

To install the plugin, follow these instructions.

  1. Open your terminal and go to your Craft project:

    cd /path/to/project
  2. Then tell Composer to load the plugin:

    composer require lewiscom/presto
  3. In the Control Panel, go to Settings → Plugins and click the “Install” button for Presto.

Setup Guide

Step 1 - Turn off element query caching

Turn off element query caching in your general config file. This will stop the DeleteStaleTemplateCaches task from running in the admin. Since Presto busts the entire cache when a new element is saved, element query caching is not necessary.

Step 2 - Add cache tags

Presto lets Craft do the heavy lifting of calculating the elements within the template. As a result, all you need to do in your templates is pass the cache key returned from craft.presto.cache to the native cache tag pair. Presto will return a cache key that includes the host, group (if one is set), and path.

Note that the entirety of your template logic must be wrapped by the cache tags. In addition, it is recommended that you add the globally tag so that Craft does not overload the cache (i.e. query string requests).

Parameters

Parameter Type Description
group string When set, the requested page will write into a sub-folder within the top-level cache directory. This is useful for pjax implementations where you load a separate template.
static boolean Setting to false will disable static caching for the request and fall back to native caching logic. The cache key will still be returned, but a static file won't be written.

Step 3 - Configure your server

Your host needs to check for matching static files before Craft handles the request. If the file exists, it's served statically. This block should typically be set immediately preceding the primary Craft "index.php" rewrite. Use these examples as a general guideline, your implementation may vary.

Apache

If you add a cache group, you'll need to add additional configuration. Below is an example of a pjax implementation:

Nginx

Disable Caching

Multi-enviroment

If you use a multi-environment config, set an arbitrary cache variable in your general config. Override this variable on environments where you don't want static caching (e.g. local development).

General Config Variable

Cache Tag

Individual Templates

When using Presto the for, until, if, and unless parameters won't be respected on each request once the static html file is created. To disable the cache on individual templates, set a variable on the main cache tag. Override that variable on each template where you don't want static caching.

Cache Tag

Cache Template Override

Directory Structure

Presto resolves subdomain hosts automatically. Static html files are created inside a directory named after the requested host (i.e. coolwebsite.com, sub.coolwebsite.com). An additional directory called "presto" is created inside each host directory to avoid .htaccess filename conflicts. See below for an example cache file directory structure:

Purging the Cache

To purge the cache, navigate to the Presto plugin settings page (Settings > Presto) and click "Purge Cache" (cron).

Note: The Cron purge method does not clear the template cache. Remember to purge the template cache before you schedule a purge.

Purge Method

Presto provides two purge methods: immediate and cron.

Immediate Purge

By default, Presto will purge the static cache and all related Craft template caches immediately. This only occurs in the server instance where the cache was cleared.

Cron Purge

If you run Presto in an environment that spins up multiple server instances, set the purgeMethod config to "cron". Set up a cron job on each server instance that runs the presto/default/check console command. The following example will run it every 10 minutes.

Disabled/Archived Entries

If an entry exists in the CMS but is not displayed on the site (e.g. status is disabled, entry is archived, etc.), enabling the entry will not clear any caches. Presto only clears related entries that are displayed on the site. In order to display your newly enabled entry, purge the entire cache.

Events

Presto comes with a couple of events should you need them.

The following events will emit a CacheEvent event handler with the following properties

The following events will emit a PurgeEVent event with the following parameters:

Note: the purge all events will not pass through the cache keys

Roadmap

License

Copyright 2017 Lewis Communications, LLC. Licensed under the Apache License, Version 2.0.

Brought to you by Lewis Communications


All versions of presto with dependencies

PHP Build Version
Package Version
Requires craftcms/cms Version ^3.0.0-RC1
alc/sitemap-crawler Version ^1.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package lewiscom/presto contains the following files

Loading the files please wait ....