Giter VIP home page Giter VIP logo

wn-blocks-theme's Introduction

Winter CMS - Blocks Theme

Winter CMS theme that demonstrates the use of "repeater groups" in custom page fields to assemble static pages with customizable building sections and blocks. Each section, depending on his type, can have one or more blocks.

Installation

(let assume you're in the root of your winter installation)

Using composer

Just run this command

composer require hounddd/wn-blocks-theme

Cloning repo

Clone this repo into your winter themes folder.

cd themes
git clone https://github.com/Hounddd/wn-blocks-theme blocks

Usage

NOTE: the name blocks is important, if you change the themes name you have to alter some files to match the path.

  • the groups attribute in the layouts/default.htm repeater.
  • the groups attribute in the meta/sections.yaml repeater.

In your backend, check for the static pages plugin to be installed. If you go to the "Pages" and edit home page, you now have a blocks tab where you can add different sections/blocks, enter data and even rearrange their order. Custom page fields add custom fields to the page editor form, called Syntax Fields

static pages example

Adjust to your needs

See Winter CMS backend forms documentation to see how setting new field definitions.

Adding sections

To add more section types, edit meta/sections.yaml file.

In your field definition simply add

my-section-type:
    name: My awesome section
    description: display a section
    icon: icon-table
    content:
        type: repeater
        prompt: Add new block
        style: accordion
        groups: themes/blocks/meta/blocks.yaml

Important: Each section definition has a corresponding partial file named partials/blocks/{section_name}.htm. The form data is passed as 'data'.

static pages example

Adding blocks

To add more block types, edit meta/blocks.yaml file.

In your field definition simply add

text:
    name: Simple text
    description: simple text without html tags
    icon: icon-file-text-o
    fields:
        content:
            label: Content
            span: left
            type: textarea
            size: small

Important: Each block definition has a corresponding partial file named partials/blocks/content/{block_name}.htm. The form data is passed as 'content'.

Make awesome sites with Winter!


This theme is inspired by Liip/Blocks Theme.

wn-blocks-theme's People

Contributors

damsfx avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.