gbrock/laravel-pages

259 11
Install
composer require gbrock/laravel-pages
Latest Version:0.1.1
Last Updated:Aug 20, 2015
Links: GitHub  ·  Packagist
Maintainer: gbrock

Pages Build Status

A Laravel 5.1 package designed to add pages to your Laravel application. A page is just content defined by specific URL, or slug. A page may or may not be published.

Installation

  1. Run composer require gbrock/laravel-pages from your project directory.

  2. Add the service provider to the providers array in config/app.php:
    Gbrock\Pages\Providers\PageServiceProvider::class,

  3. Publish the migrations, views, and config file:
    php artisan vendor:publish --provider="Gbrock\Pages\Providers\ContactableServiceProvider"

  4. Run the migrations:
    php artisan migrate

Usage

Creating a Public Page

Create a Page model:

\Gbrock\Pages\Models\Page::create([
    'title' => 'Hello, World',
    'content' => '<p>Hi everybody</p>',
    'public' => true,
]);

...which is now accessible by browsing to /hello-world!

Making a Domain

A domain is a set of pages which are always under a specific slug. For example, you might make a "BlogPage" model whose members are always accessible under blog/{slug}:

<?php

namespace App;

use Gbrock\Pages\Models\Page;
use Gbrock\Pages\Traits\Domainable;

class BlogPage extends Page {

    use Domainable;

    protected static $domain = 'blog';

}

Then you can query that model for only that domain of pages. Please note that, by default, domained pages will be included in queries when using the above Page model. In order to ignore domained pages, extend the included Page model and add ignorable domains to the $subdomains property:

<?php

namespace App;

use Gbrock\Pages\Models\Page as BasePage;

class Page extends BasePage
{
    protected static $subdomains = ['blog'];
}

Related Packages

doctrine/dbal

Powerful PHP database abstraction layer (DBAL) with many features for database s...

644,549,754 9,698
laravel/framework

The Laravel Framework.

598,760,099 34,966
laravel/tinker

Powerful REPL for the Laravel framework.

507,193,856 7,441
laravel/serializable-closure

Laravel Serializable Closure provides an easy and secure way to serialize closur...

423,477,751 607
nunomaduro/collision

Cli error handling for console/command-line PHP applications.

403,217,078 4,664

Version History

Version Released License
0.1.1
0.1.0