unisharp/laravel-pagerender
Provide functions to render regular pages with parent-child relationships.
87
4
| Install | |
|---|---|
composer require unisharp/laravel-pagerender |
|
| Latest Version: | 1.0.0 |
| PHP: | >=5.5.0 |
| License: | MIT |
| Last Updated: | Oct 27, 2015 |
| Links: | GitHub · Packagist |
Maintainer: FreedomKnight
Page Render Package for Laravel
- Find your page by alias(aboutus, service, and so on), forget about id.
- Support page with parent-child structure.
- Support custom view for different pages.
- Support breadcrumb(with ancestors function).
Installation
-
install package
composer require unisharp/laravel-pagerender -
use the trait in your model
use \Unisharp\Pagerender\PageRenderTrait; private $default_view = 'page.show'; -
make sure your table has these columns :
parent_id,alias,custom_viewpublic function up() { Schema::create('models', function(Blueprint $table) { // ... $table->string('alias'); $table->integer('parent_id')->unsigned()->nullable(); $table->string('custom_view', 128)->nullable(); // ..
Usage
$page = new Page();
$page->render();
// Generates the default view(or custom view if the column is not empty).
$page->summary('content', 7);
// Shorten words of a column, ex: The PHP...
$page->getByAlias('aboutus');
// Get the about us page.
$page->hasByAlias('aboutus');
// Check if the about us page exists.
$page->allWithAlias();
// Get pages that have alias.
$page->subs;
// Get children pages.
$page->hasSubs();
// Check if children pages exist.
$page->parent;
// Get parent page.
$page->hasParent();
// Check if parent page exists.
$page->roots();
// Get all pages at top level.
$page->isRoot();
// Check if this page is at top level.
$page->getLevel();
// Get level count(top level as 0).
$page->ancestors();
// Get all parent pages of the current page.
Todo
$page->tree();
// Get all pages with parent-child structure.