windfallinc/woodpecker

This is a package for things and stuff


License
MIT

Documentation

alt text

Woodpecker

Content Management System for Windfall laravel applications.

Automatically creates admin panel, databases, form logic (with invisible captcha), and page logic.

Installation

Require this package with composer:

composer require windfallinc/woodpecker

Package auto discovers.

Publish woodpecker assets, and migrate databases:

php artisan vendor:publish --tag=woodpecker --force

php artisan migrate

If you have migration issues, see https://laravel-news.com/laravel-5-4-key-too-long-error.

Boom! Good to go!

Example templates included in views/examples. Optional Helper functions to include in composer.json:

"autoload": {
"files": [
            "app/Http/Controllers/jaunt-helpers.php"
        ],

If you are using Orca and Woodpecker, ensure your laravel mix file looks similar to:

const mix = require('laravel-mix');

/*
 |--------------------------------------------------------------------------
 | Mix Asset Management
 |--------------------------------------------------------------------------
 |
 | Mix provides a clean, fluent API for defining some Webpack build steps
 | for your Laravel application. By default, we are compiling the Sass
 | file for the application as well as bundling up all the JS files.
 |
 */

mix.js('resources/js/app.js', 'public/js')
   .less('resources/assets/less/app.less', 'public/css')
   .less('resources/assets/less//woodpecker/admin.less', 'public/css/woodpecker');

Setup .env captcha to enable forms

NOCAPTCHA_SECRET=<Your Secret Key>
NOCAPTCHA_SITEKEY=<Your Site Key>

Customization

Creating a new template

Create template in views/templates/example-slug.blade.php

Add the newly created template to the database table 'templates'

The template will now appear in the backend, becoming available for any datatypes to use.

Featured Image

$page->featimg()

Title

$page->title

Content

@include('dashboard.includes.body')

Any Custom Fields

$page->get_the('field name')

Meta Desc

$page->metadesc

Meta Keywords

$page->keywords

Creating a new component

Views->components house all front end component code.

Views->dashboard->components house all backend component code.

Within the database, add a new 'component' and set its 'type' to template.

Edit Woodpeckers admin.less file to include your component css. For example: @import "../components/homepage-slider.less";

Custom Routes

Any route in the web.php file can override Woodpeckers routes. Ensure they are named and lead to your own custom controller

Route::get('/anything', 'WebsiteController@index')->name('anything');

Updating

After your composer update, to finalize your upgrade

php artisan vendor:publish --tag=update --force

Supports

Laravel 5.5 and up.