GitPedia
quickapps

quickapps/cms

Modular CMS powered by CakePHP

2 Releases
Latest: 11y ago
QuickAppsCMS 2.0.0-beta2 released2.0.0-beta2LatestPre-release
quickappsquickapps·11y ago·May 27, 2015
GitHub

New Backend Theme

  • A new and gorgeous backend theme has been introduced based on [AdminLTE 2](https://almsaeedstudio.com/). Fully responsive and multiple colors schema available.
  • <p align="center">
  • <img src="https://cloud.githubusercontent.com/assets/1129842/7554983/886d4a46-f73c-11e4-90ce-6343f3c736e8.gif" />
  • </p>

📦 What is AOP?

  • > - Manuel Lemos
  • <p align="center">
  • <img src="https://cloud.githubusercontent.com/assets/1129842/7449536/d1b74ad4-f238-11e4-9c63-9b7f89410e44.jpg" />
  • </p>
  • Check GO! AOP documentation for further details: http://go.aopphp.com/docs/introduction/

📦 Content Types Permissions

  • <p align="center">
  • <img src="https://cloud.githubusercontent.com/assets/1129842/7528804/6758d984-f52e-11e4-8a61-6fa234372466.PNG" />
  • </p>

📦 Customized Content Extension

  • ``` php
  • define('CONTENT_EXTENSION', '/');
  • ```
  • Now every content's URL will look as: `/article/my-first-article/`

📦 Improved Field API

  • In the other hand, both EAV and Field API has been optimized for reducing the number SQl queries required to render each Field ("virtual columns" for EAV).
QuickAppsCMS 2.0.0-beta1 released2.0.0-beta1Pre-release
quickappsquickapps·11y ago·April 20, 2015
GitHub

📦 CakePHP 3.0

  • QuickAppsCMS has been rebuilt from scratch based on the brand new CakePHP v3.0. We
  • have taken advantage of the new CakePHP features such as ORM, Event System, etc. to
  • incorporate them into QuickAppsCMS.
  • The new version of QuickAppsCMS has been designed to work as a standalone
  • application that can be installed using Composer. However you can "extend" its
  • functionalities by creating and installing new plugins or themes. QuickAppsCMS
  • introduces almost zero conventions in addition to CakePHP's, so creating new plugins
  • for both platforms is exactly the same.

📦 Composer Compliant

  • QuickAppCMS 2.0 is fully compliant with Composer's packages and CakePHP's community
  • plugins. Plugins can be installed using an interactive Web UI. Although package
  • dependencies are fully supported, QuickAppsCMS will not install those dependencies
  • as Composer does.

📦 Plugins & Themes

  • As introduced in CakePHP 3.0, plugins and themes are now the same. Nonetheless, in
  • QuickAppsCMS any plugin suffixed with the `Theme` word will be automatically
  • considered a QuickAppsCMS Theme.
  • The old `<PluginName>.yaml` configuration file has been replaced by `composer.json`.
  • Now building plugins/themes either for QuickAppsCMS or CakePHP is exactly the same.
  • Check Composer installation instructions available at [this link](https://github.com/quickapps/website#installation).

📦 jQuery & Bootstrap

  • Twitter Bootstrap & jQuery libraries are now included, by default, on every
  • QuickAppsCMS installation. Furthermore, all the templates or any HTML code generated
  • automatically by QuickAppsCMS will follow Bootstrap conventions (CSS class names,
  • Grid system, etc). Likewise, every JS script automatically generated by QuickAppsCMS
  • is created with jQuery in mind.
  • Two new plugins have been included (`Bootstrap` & `jQuery`) for dealing with such
  • libraries, providing a few generic helpers to assist you.

New Hook System

  • A more flexible and consistent Hook System has been built on CakePHP's Events
  • System. Triggering or creating events has never been easier. Attach the new
  • `HookAwareTrait` trait to your classes and your are ready to go:
  • ``` php
  • $this->trigger('MyEventName', $arg1, $arg2, ..., $argn);
  • ```
  • This trait is by default attached to Controller, Helper and View classes. Check the [documentation](http://api.quickappscms.org/book/developers/events-system.html) for more details.

📦 Shortcodes

  • Shortcodes system has been rebuilt as well, changing the way they work and how they look:
  • ```
  • {my_shortcode color=red} Content of my hook tag {/my_shortcode}
  • ```
  • Shortcodes are now globally parsed before content is presented to users, this allows you to use shortcodes absolutely anywhere you wish; in yout contents, in your template files, etc.
  • Check the [Shortcode API](http://api.quickappscms.org/book/developers/shortcode-api.html).

📦 EAV & Field APIs

  • QuickAppsCMS's flexibility comes mainly from its Field API (a.k.a. Drupal's CCK),
  • which allows to create and define virtually any content type. Although this API
  • worked just fine in early version of QuickAppsCMS, its complexity was its major
  • weakness; creating new Fields was a complex task.
  • In v2.0 a new `EAV API` has been introduced, which provides a generic implementation
  • for EAV data model. The Field API has been rebuilt on top of this new API in
  • combination with the new Hook System. Furthermore, several utility classes has been
  • introduced to assist you when creating new Fields.
  • + 1 more

📦 User Notification API

  • A new Notification API has been introduced in QuickAppsCMS 2.0 to better deal with
  • mailing users. This API provides a very simple mechanism for defining and sending
  • email messages to any registered user in the system, for example:
  • ``` php
  • $user = $this->Users->get($id);
  • $result = NotificationManager::welcome($user)->send();
  • ```
  • Check [Notification API documentation](http://api.quickappscms.org/book/developers/notifications-api.html).

📦 Search API

  • The new Search API allows entities to be search-able through an auto-generated index
  • of words. It also provides searching methods for filtering Entities using human-
  • readble criteria, for instance:
  • ``` php
  • $criteria = '"this phrase" OR -"not this one" AND this';
  • $nodes = $this->Nodes->search($criteria);
  • ```

📦 Search Operators

  • An Operator is a search-criteria command which allows you to perform very specific
  • filter conditions in your SQL queries. An operator is composed of two parts: a name
  • and its argument, both parts must be separated using the `:` symbol, e.g.:
  • ```
  • // operator name is: "created"
  • // operator argument is: "2013..2016"
  • created:2013..2016
  • ```
  • + 6 more

📦 Block & Region APIs

  • The Block API has been rebuilt. It is now more flexible and robust, allowing to
  • create `Widget` blocks in a simple way. Also, the way blocks are rendered in your
  • themes has changed:
  • ``` php
  • echo $this->region('left-sidebar');
  • ```
  • The new Region API allows to do nifty things such as combine two or more regions, or
  • limiting the number of blocks it can hold:
  • + 6 more

📦 What's Next

  • This beta release will be the first of two Beta releases, meaning there will be one
  • more Beta version and at least one RC version before releasing the final and stable
  • version of QuickAppsCMS v2.0. Although most of the initially planned features have
  • already been implemented in this release, the feedback received will help us
  • determine if more features will be included in the future.
  • Future releases will focus on:
  • API stabilization
  • Bug fixes
  • + 4 more