Download the PHP package hansschouten/phpagebuilder without Composer

On this page you can find all versions of the php package hansschouten/phpagebuilder. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package phpagebuilder

PHPagebuilder

PHPagebuilder

PHPagebuilder is a drag and drop pagebuilder to manage pages in any PHP project.

PHPagebuilder can be used as an ultra lightweight CMS to quickly spin up new websites, or can be integrated into existing projects or your favorite frameworks (such as this version for Laravel). The server-side code does not depend on any other libraries and is blazing fast. It includes an optional website manager with a Bootstrap UI and integrates the most popular open source drag and drop pagebuilder: GrapesJS. This package is made with customization in mind, allowing you to configure, disable or replace any of its modules.

Table of Contents

How does it help me?

Whether you are a novice or an experienced web developer, PHPagebuilder can make your life easier if you find yourself in any of the following:

Features

Page Builder

PHPagebuilder features a page builder built on GrapesJS. PageBuilder

Website Manager

A basic website manager is included with a Bootstrap UI. This website manager offers basic functionality to add or remove pages and to edit page settings like page title or URL. Clicking the edit button will open the page builder. Website Manager

You don't want to use the website manager? No worries, it is included for people who want to use PHPagebuilder directly out of the box. Read here how to disable or replace the website manager.

Installation

To install PHPagebuilder you either follow the quick start path, for quickly spinning up a new website, or you integrate it in your own framework or favorite project structure.

Requirements

Quick start :rocket:

If you want to quickly start a new project with drag and drop page management functionality, you can download the boilerplate project structure and follow the steps over there.

Integrate into existing project or framework

Add code with Composer

If you are using Composer for managing PHP dependencies, you can simply run:

Next, the PHPagebuilder can be initialised using the following PHP code:

config.php should contain a copy of config/config.example.php, filled with your settings.

Add code without Composer

Are you not using Composer? No worries, this project is written in plain PHP without any dependencies, so it can be directly included in any PHP project!

Just download the latest release into a separate folder inside your project (we named the folder: phpagebuilder).

Next, you simply include the following code in the PHP file that should launch the page builder:

config.php should contain a copy of config/config.example.php, filled with your settings.

Configure a database

If you use PHPagebuilder out of the box, it requires a database for storing your pages. Just create a database and run the queries from config/create-tables.sql. Next, add the database credentials to your config file.

Create a theme

The config.php contains a config key theme in which a themes_folder and active_theme are specified. To create a new theme, add a new folder to the configured themes folder. The name of this folder will be the identifier of the theme, which can be used to select the theme in the theme > active_theme configuration.

A theme should have the following folder structure:

Blocks inside blocks

Include a block into a block or layout file

A shortcode can be used to include a block inside another block or into a layout file. For instance, adding the shortcode: [block slug="header"] to layouts/master/view.php includes the block: blocks/header/view.php inside each page that uses the master layout.

Nested blocks in the page builder

To allow dropping blocks into a block in the page builder, a blocks container should be added. To add a blocks container, simply add [blocks-container] at the desired location in a block view file. The following html syntax allows dropping blocks inside a bootstrap container element:

An alternative method is adding the phpb-blocks-container attribute to a html element, as shown in this example:

Extending PHPageBuilder

PHPageBuilder allows you to create new blocks and layouts for your theme very easily. This is great for building specific websites & templates, however if you use PHPageBuilder in a CMS environment, you probably want to provide Plugins / Modules the ability to create their own blocks without modifying your theme's pre-existing components.

PHPageBuilder allows you to register blocks, layouts and assets (CSS, JS) from Plugins, Composer Packages or through any other environment.

Adding a New Block

Adding a New Layout

Adding Assets (CSS & JS)

Blocks & Layouts are created in the same manner as described in Create A Theme, but they aren't limited to any theme directory.

Customize PHPageBuilder

PHPagebuilder is build with customization in mind. It comes with an extensive example config file in wich you can easily adapt the pagebuilder to your needs.

PHPagebuilder consists of four modules (Auth, Website Manager, Pagebuilder, Routing) each of which you can disable or replace with your own implementation. To replace a module with your own implementation, implement the corresponding Contract and replace the default class by your own class in the config file.

Customize the Website Manager

Disable the module

Do you already have admin login functionality in your project? Then you can disable the website manager module by setting use_website_manager to false in your config. Next, you use or implement the page create/edit/remove functionality in your project and then directly launch the pagebuilder. You can render the pagebuilder from your project by using the PHPageBuilder\Modules\GrapesJS\PageBuilder class.

Replace the module

If you want to use the CMS routing functionality of PHPagebuilder, but you want to have a different website manager, you can replace the website manager for your own implementation. Make sure leave use_website_manager to true in your config, implement the WebsiteManagerContract and add your own class to your config file.


All versions of phpagebuilder with dependencies

PHP Build Version
Package Version
Requires php Version >=7.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package hansschouten/phpagebuilder contains the following files

Loading the files please wait ....