diff --git a/README.md b/README.md index c4fbf55..3b25dbd 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,8 @@ Sage is a WordPress starter theme with a modern development workflow. * ES6 for JavaScript * [Webpack](https://webpack.github.io/) for compiling assets, optimizing images, and concatenating and minifying files * [Browsersync](http://www.browsersync.io/) for synchronized browser testing -* [Laravel's Blade](https://laravel.com/docs/5.3/blade) as a templating engine +* [Laravel Blade](https://laravel.com/docs/5.3/blade) as a templating engine +* [Controller](https://github.com/soberwp/controller) for passing data to Blade templates * CSS framework options: * [Bootstrap 4](http://getbootstrap.com/) * [Foundation](http://foundation.zurb.com/) @@ -22,10 +23,6 @@ Sage is a WordPress starter theme with a modern development workflow. See a working example at [roots-example-project.com](https://roots-example-project.com/). -### Recommended extensions - -* [Controller](https://github.com/soberwp/controller) — WordPress plugin to enable a basic controller when using Blade with Sage 9 - ## Requirements Make sure all dependencies have been installed before moving on: @@ -75,6 +72,7 @@ themes/your-theme-name/ # → Root of your Sage based theme │ │ ├── images/ # → Theme images │ │ ├── scripts/ # → Theme JS │ │ └── styles/ # → Theme stylesheets +│ ├── controllers/ # → Controller files │ ├── functions.php # → Composer autoloader, theme includes │ ├── index.php # → Never manually edit │ ├── screenshot.png # → Theme screenshot for WP admin @@ -108,6 +106,8 @@ Sage 8 documentation is available at [https://roots.io/sage/docs/](https://roots Sage 9 documentation is currently in progress and can be viewed at [https://github.com/roots/docs/tree/sage-9/sage](https://github.com/roots/docs/tree/sage-9/sage). +Controller documentation is available at [https://github.com/soberwp/controller#usage](https://github.com/soberwp/controller#usage). + ## Contributing Contributions are welcome from everyone. We have [contributing guidelines](https://github.com/roots/guidelines/blob/master/CONTRIBUTING.md) to help you get started. diff --git a/composer.json b/composer.json index 0eccc7e..6b11784 100644 --- a/composer.json +++ b/composer.json @@ -32,7 +32,8 @@ "php": ">=5.6.4", "composer/installers": "~1.0", "illuminate/view": "~5.4.0", - "illuminate/config": "~5.4.0" + "illuminate/config": "~5.4.0", + "soberwp/controller": "9.0.0-beta.3" }, "require-dev": { "squizlabs/php_codesniffer": "^2.8.0" diff --git a/composer.lock b/composer.lock index 97a25cb..f3c4ed3 100644 --- a/composer.lock +++ b/composer.lock @@ -4,8 +4,64 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", "This file is @generated automatically" ], - "content-hash": "ea9fa1afa3655447aadf2168ebe1d9b4", + "content-hash": "e1b60e480a0c3c964418f9f47cb49faf", "packages": [ + { + "name": "brain/hierarchy", + "version": "2.3.0", + "source": { + "type": "git", + "url": "https://github.com/Brain-WP/Hierarchy.git", + "reference": "adb52da233e586051a577ef5eabe2c537df785d5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/Brain-WP/Hierarchy/zipball/adb52da233e586051a577ef5eabe2c537df785d5", + "reference": "adb52da233e586051a577ef5eabe2c537df785d5", + "shasum": "" + }, + "require": { + "php": ">=5.5" + }, + "require-dev": { + "antecedent/patchwork": "~1.3.0", + "brain/monkey": "~1.2", + "gmazzap/andrew": "~1.0", + "mockery/mockery": "0.9.3", + "phpunit/phpunit": "~4.8", + "symfony/finder": "~2.7.0" + }, + "suggest": { + "symfony/finder": "Allows loading of templates using Symfony finder component." + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.2.x-dev", + "dev-dev": "2.0.x-dev" + } + }, + "autoload": { + "psr-4": { + "Brain\\Hierarchy\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Giuseppe Mazzapica", + "email": "giuseppe.mazzapica@gmail.com" + } + ], + "description": "No-dependencies package that embodies WordPress template hierarchy", + "keywords": [ + "wordpress" + ], + "time": "2016-09-15T13:33:53+00:00" + }, { "name": "composer/installers", "version": "v1.2.0", @@ -180,6 +236,63 @@ ], "time": "2015-11-06T14:35:42+00:00" }, + { + "name": "hassankhan/config", + "version": "0.10.0", + "source": { + "type": "git", + "url": "https://github.com/hassankhan/config.git", + "reference": "06ac500348af033f1a2e44dc357ca86282626d4a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/hassankhan/config/zipball/06ac500348af033f1a2e44dc357ca86282626d4a", + "reference": "06ac500348af033f1a2e44dc357ca86282626d4a", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "require-dev": { + "phpunit/phpunit": "~4.0", + "scrutinizer/ocular": "~1.1", + "squizlabs/php_codesniffer": "~2.2" + }, + "suggest": { + "symfony/yaml": "~2.5" + }, + "type": "library", + "autoload": { + "psr-4": { + "Noodlehaus\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Hassan Khan", + "homepage": "http://hassankhan.me/", + "role": "Developer" + } + ], + "description": "Lightweight configuration file loader that supports PHP, INI, XML, JSON, and YAML files", + "homepage": "http://hassankhan.me/config/", + "keywords": [ + "config", + "configuration", + "ini", + "json", + "microphp", + "unframework", + "xml", + "yaml", + "yml" + ], + "time": "2016-02-11T16:21:17+00:00" + }, { "name": "illuminate/config", "version": "v5.4.17", @@ -604,6 +717,58 @@ ], "time": "2016-10-10T12:19:37+00:00" }, + { + "name": "soberwp/controller", + "version": "9.0.0-beta.3", + "source": { + "type": "git", + "url": "https://github.com/soberwp/controller.git", + "reference": "54cfd29e8695960421d9dda1b177a04c9e76aa9f" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/soberwp/controller/zipball/54cfd29e8695960421d9dda1b177a04c9e76aa9f", + "reference": "54cfd29e8695960421d9dda1b177a04c9e76aa9f", + "shasum": "" + }, + "require": { + "brain/hierarchy": "^2.3", + "composer/installers": "~1.0", + "hassankhan/config": "^0.10.0", + "php": ">=5.6.0", + "symfony/yaml": "^3.2" + }, + "require-dev": { + "squizlabs/php_codesniffer": "2.*" + }, + "type": "package", + "autoload": { + "psr-4": { + "Sober\\Controller\\": "src/", + "Sober\\Controller\\Module\\": "src/Module/" + }, + "files": [ + "controller.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Darren Jacoby", + "email": "darren@jacoby.co.za", + "homepage": "https://github.com/darrenjacoby" + } + ], + "description": "WordPress package to enable a basic controller when using Blade with Sage 9", + "homepage": "https://github.com/soberwp", + "keywords": [ + "wordpress" + ], + "time": "2017-06-03T21:30:54+00:00" + }, { "name": "symfony/debug", "version": "v3.2.7", @@ -709,6 +874,61 @@ "description": "Symfony Finder Component", "homepage": "https://symfony.com", "time": "2017-03-20T09:32:19+00:00" + }, + { + "name": "symfony/yaml", + "version": "v3.3.2", + "source": { + "type": "git", + "url": "https://github.com/symfony/yaml.git", + "reference": "9752a30000a8ca9f4b34b5227d15d0101b96b063" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/yaml/zipball/9752a30000a8ca9f4b34b5227d15d0101b96b063", + "reference": "9752a30000a8ca9f4b34b5227d15d0101b96b063", + "shasum": "" + }, + "require": { + "php": ">=5.5.9" + }, + "require-dev": { + "symfony/console": "~2.8|~3.0" + }, + "suggest": { + "symfony/console": "For validating YAML files using the lint command" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.3-dev" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Component\\Yaml\\": "" + }, + "exclude-from-classmap": [ + "/Tests/" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fabien Potencier", + "email": "fabien@symfony.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony Yaml Component", + "homepage": "https://symfony.com", + "time": "2017-06-02T22:05:06+00:00" } ], "packages-dev": [ @@ -793,7 +1013,9 @@ ], "aliases": [], "minimum-stability": "stable", - "stability-flags": [], + "stability-flags": { + "soberwp/controller": 10 + }, "prefer-stable": false, "prefer-lowest": false, "platform": { diff --git a/resources/controllers/.gitkeep b/resources/controllers/.gitkeep new file mode 100644 index 0000000..e69de29