DEPRECATION WARNING

This documentation is not using the current rendering mechanism and is probably outdated. The extension maintainer should switch to the new system. Details on how to use the rendering mechanism can be found here.

Flexible Content Elements

Created:2010-02-18T17:33:18
Changed by:Benjamin Schulte
Changed:2011-12-09T14:03:35
Classification:bs_fce
Keywords:content, flexible, extbase, fluid
Author:Benjamin Schulte
Email:benj@minschulte.de
Info 4:
Language:en

img-1 img-2 Flexible Content Elements - bs_fce

Flexible Content Elements

Extension Key: bs_fce

Language: en

Keywords: content, flexible, extbase, fluid

Copyright 2000-2011, Benjamin Schulte, <benj@minschulte.de>

This document is published under the Open Content License

available from http://www.opencontent.org/opl.shtml

The content of this document is related to TYPO3

- a GNU/GPL CMS/Framework available from www.typo3.org

Introduction

What does it do?

Provides a fully flexible content element support for TYPO3. Allows to create a custom content type which can be easily used to display news, workshops, events, teams or whatever you want.

Features for administrators

  • Custom content types without writing one line of code.
  • Restrict access to the newly created content types using default TYPO3 features.
  • Creates own database tables for each content-type which allows to create simple statistics or backups.

Features for developers

  • Based on Extbase and Fluid
  • Access custom content types from your Extbase extensions with simple- to-use repositories
  • Create Fluid templates to display your content types in the front end.
  • Can also be accessed with pibase extensions using t3lib_db

Features for editors

  • Simple to use
  • Fully integrates with TYPO3. Editors do not need to learn new ways of editing content

What are flexible content types?

A content element is simply a content-type you can add using the “List” module to a page or SysFolder. This extension provides flexible content elements, which mean, that you can define fully custom content types without writing one line of code. Examples for custom content types could be:

  • News, having a subject, a text and a category
  • Team members, having a name, a description, gender and a photo
  • Guestbook entry, having a name, email address, homepage, text and an icon
  • Article for a café, having a name, a description, a photo and a price
  • Link to another page
  • and whatever you want

Screenshots

img-3 Image 1: List of content element configurations

img-4 Image 2: New record creation for configured content types

img-5 Image 3: Create new “Team member” record

img-6 Image 4: Plugin used to display any flexible content type

Sponsoring & Bugfixing

This version of “flexible content elements” is still in development. For this reason this extension still might have some bugs and many of missing features. If you found a bug or a missing feature, please share it on http://forge.typo3.org .

Help, especially including patches, is of course always welcome!

Further help

Further help can be found in the wiki of the project on http://forge.typo3.org

I will try to post tutorials and examples very soon. You're also welcome to share something in the wiki. Simply add it to the issue tracker or send it per e-mail to me.

Users manual

Installation

The extension needs to be installed as any other extension of TYPO3.

Simply download the extension from the TER and install it using the Extension Manager.

Please don't forget to add the static template to the template if you're going to use the frontend plugin!

Create custom content-types

Only administrators are allowed to create custom content-types. Read more about it in the “administration” section of this manual.

Create a record of a custom content-types

Custom content types can be simply created using the default “List” module of TYPO3. If you're allowed to create content types, you can select the SysFolder (or page, if the content type is allowed for pages) you want to create the record to and click on “Create new record”. Select the content type and fill the record form as you are used to by the default TYPO3 content types.

Display records in the frontend

To list content records on any page, you can use the plugin with comes with this extension. The plugin configuration in separated in three parts:

  • Input : Defines which records should be displayed
  • Process : Configures the way the records should be displayed
  • Output : Defines the Fluid template used for rendering

Administration

Create custom content types

As administrator you are allowed to create or modify content types. Please be careful when modifying existing content types. You should always create a database backup before.

To create a custom content type, go to the “List” module and select the root-page. Create a new “Content element type” record.

Tab “General”
Name

Property

Name

View

All

Description

The name of the content element

Key

Table name

Property

Table name

View

(More options...)

Description

The name used for the model, repository and the table within the database. You should not modify this value if its created once or all records of this table will be lost.

Key

Description

Property

Description

View

All

Description

A description for this content type

Key

Icon

Property

Icon

View

All

Description

The icon for the list view (Not working, yet)

Key

Tab “Advanced”
Allowed on standard-pages

Property

Allowed on standard-pages

View

All

Description

If this is checked, the content types can also be on default pages and not only on SysFolders.

Key

Tab “Fields”

To create fields you have to create a field group before. A field group has a title and a description. Each field group is rendered as custom tab in a record-edit view.

In each field group you can create as many fields as you like.

Name

Property

Name

View

All

Description

The name of the field

Key

Field name

Property

Field name

View

(More options..)

Description

The name used to access the field in templates, in the database table or in the model.

Key

Description

Property

Description

View

All

Description

A short description of the field

Key

Type

Property

Type

View

All

Description

The field type. Depending on the field type the possible options will vary.

Key

Create templates for the plugin

To learn about how to create templates for the plugin take a look at the Fluid manual. You can access the record fields using the “field name” of the field.

Access flexbile content elements from Extbase

You can access models and repositories of your flexible content elements from any extbase extension you create. You can access them using the class names:

Tx_BsFce_Domain_Model_Content_ UpperCamelCasedTableName

Tx_BsFce_Domain_Repository_Content_ UpperCamelCasedTableName Repository

To-Do list

  • Extend the manual with more tutorials and examples
  • Create more field types
  • Allow M to M relations to be accessed from models.

ChangeLog

An automatic Changelog and roadmap is generated by forge at http://forge.typo3.org/

img-2 9