Search the Products Store

Search the Book Store

Webmaster Book Store Index

Home







Webmaster Book Store > Webmaster books beginning with M

More details of book titled: Mastering TypoScript: TYPO3 Website, Template, and Extension Development: A complete guide to understanding and using TypoScript, TYPO3's powerful configuration language.

Mastering TypoScript: TYPO3 Website, Template, and Extension Development: A complete guide to understanding and using TypoScript, TYPO3's powerful configuration language.

Author: Daniel Koch
Published: 2006-12-22
List price: $49.99
Our price: $49.99
Usually ships in 24 hours
As of: January 08th, 2009 07:56:11 AM
Customer comments on this selection.

Webmaster Still intimidated by Typo3
I purchased this book knowing that there is a steep learning curve for Typo3. I was hoping to develop a church web site, and I truly believe that Typo3 is the way to go.

However, even after spending time with this book, I'm still quite overwhelmed by all that Typo3 involves. The book, in my opinion, is not well edited. Often, it tries to walk you through some kind of step-by-step tutorial, but there are so many inconsistencies between what's in the book and what's on my screen that I get really frustrated.

I'll keep trudging through it, but I really wish I could find a well written Typo3 tutorial or book.


Webmaster Breadth + Depth
Few systems, retail or open source, are as powerful as TYPO3. More than just a typical CMS, it is a complete web application framework. Part of what makes it so popular is the extensibility, allowing developers to create additional functionality. However, TYPO3 is not without its drawbacks. It has a notoriously difficult learning curve, and the admin area leaves quite a bit to be desired as far as usability. TYPO3 has taken off in Europe, winning multiple awards. In the USA though, it has yet to gain a foot-hold.

That is, except for the Web Empowered Church, which uses TYPO3 as the CMS and framework of choice for building church websites. My two latest freelance clients have been two churches with thousands of attendees each week. Each of them makes use of the WEC extensions written for TYPO3, via TypoScript.

So, now that we have a background on what TypoScript is exactly, let's talk about the book Mastering TypoScript. It was written by Daniel Koch, then translated from the original German version to English by Wolfgang Spegg. It presupposes familiarity with TYPO3 and PHP, delving right away into the guts of the system. Here's what I gleaned from the book...
Syntax

The first chapter begins with an introduction of TypoScript which, true to the similarity in name, is somewhat reminiscent of JavaScript. The way that variables and properties are defined looks a bit like JS dot notation and object literal declaration. By way of comparison, here is how JavaScript and TypoScript might look if constructing an object named mustang.

JavaScript - dot notation:

// Create empty object: "mustang"
// and then add properties to it.

var mustang = {};
mustang.manufacturer = 'Ford';
mustang.build = 'American';
mustang.category = 'sport';
mustang.doors = 2;
mustang.passengers = 4;

JavaScript - object literal:

var mustang = {
'manufacturer' = 'Ford';
'build' = 'American';
'category' = 'sport';
'doors' = 2;
'passengers' = 4;
};

TypoScript - dot notation:

mustang = CAR
mustang.manufacturer = TEXT
mustang.manufacturer.value = Ford
mustang.build = TEXT
mustang.build.value = American
mustang.category = TEXT
mustang.category.value = sport
mustang.model = TEXT
mustang.doors = 2
mustang.passengers = 4

TypoScript - object literal:

mustang = CAR
mustang {
manufacturer = TEXT
manufacturer.value = Ford
build = TEXT
build.value = American
category = TEXT
category.value = sport
model = TEXT
doors = 2
passengers = 4
}

As you can see from the above examples, while the syntax is similar, TypoScript is a bit more verbose. It requires specifically describing a values as either TEXT or HTML in order for TYPO3 to handle the values correctly. Values not declared as any type will default to being treated as a number.

With JavaScript, simply enclosing a value in single or double quotes is enough. Numbers which are not contained in quotes are considered numeric values in JavaScript. Additionally, performing math on a number stored as a text will convert it to a number, such as multiplying it by 1.
Rich Text Editor

TYPO3 allows you to control a number of HTML related properties, which arguably should never be handled in markup anyways. These include:

* bgcolor
* bold
* italics
* center
* font size
* font style
* font family
* indentation
* strikethrough
* text color
* underline

This list of discrepancies simply points to aspects of TYPO3 which arose in its formative stages, and remain for legacy support. Any self-respecting web developer knows that purely presentation aspects like those should be left to CSS alone, and should never be embedded in HTML.

Luckily, you can also restrict tools which can be used by content writers. Doing so simply requires specifying an allowTags array. You can conveniently omit deprecated presentational tags, to keep them from being used at all. This way, you pare down some of TYPO3's power, lest it be wielded haphazardly.
Templating

Another interesting thing about TYPO3 is the concept of markers. These are a bit like variables which allow you to plant dynamic content within the skeleton of an HTML document. For instance, if I wanted to have the top-level heading on a page change, I would denote it in the design template like so...

###TITLE_OF_NEWS_STORY###



There is also another method of templating on the horizon, called TemplaVoilà. It makes it possible for TypoScript developers to integrate templates using a visual interface, never having to touch any PHP. I am usually leery of GUI tools because the code the create typically isn't what I'm trying to accomplish on a granular level. However, from what I've heard from TYPO3 gurus, this is not actually creating HTML for you, simply allowing you to map dynamic content to areas of your static page skeleton. See the TYPO3 wiki for more on that.
Graphics

TYPO3 can also handle graphics processing on the server. This requires two PHP libraries to be installed. The first is GDLib, typically enabled in most PHP configurations. The second is ImageMagick, which is great for scaling images to create photo thumbnails. These yield a dizzing array of possible visual effects: adjusting image tone, crop, rotate, invert colors, emboss, scale, shadow, outline - to name a few. These should of course be used sparingly.
Forms

TYPO3 also has a form builder, allowing the admin to create complete forms without necessarily having to know HTML. Mandatory fields can be set for things like sign-up forms, where the user must enter a minimum amount of personal information in order to register for an event. You can also create login forms for certain sections of a site. This would be good for a personnel directory, which you'd not want publicly viewable due to email spam and telemarketers.
Extensions

Chapter 11 covers extensions. There are a few examples given, such as a chat room extension and newsletter extension. It then goes on to explain how you would go about writing your own extension, if you needed additional functionality not covered by existing options.
i18n

Chapter 13 is all about how to use TYPO3 in a multilingual environment. Entire sites can be configured to be auto-translated into different languages. While I'm sure these site versions aren't 100% accurate (nothing automated is), it would certainly go a long way to appealing to a broader audience. It supports an impressive number of languages, with the current count at over 30.
Summary

TYPO3 has tremendous breadth and depth, but is not exactly the most user friendly CMS. The fact that there is an entire configuration language dedicated to it makes the learning curve a bit intimidating for newcomers. Additionally, the drabness of the administrative interface is a bit of a turn-off.

However, for the amount of power in customization that it offers, you'd be hard pressed to find another option that runs on PHP. Django is similar in complexity and flexibility, but it's written in Python. Bottom line, if you find yourself working with TYPO3, I'd highly recommend Mastering TypoScript.


Webmaster Understand TYPO3 and TypoScript
TYPO3 is a free, open-source template-based content management system which has a user-friendly workspace for editing and authoring content. The TYPO3 template engine can be used as is or you can add more functionality and customization to the system with the TypoScript language. This book by Daniel Koch will help you understand TYPO3 and TypoScript and how to customize your TYPO3 site layout in several ways including generating dynamic menus and graphics.

Koch begins with an introduction to both TYPO3 and TypoScript. He discusses the building blocks of TypoScript such as objects, properties, operators and data types. Next he introduces a few helpful tools including the Ultra Edit text editor as well as the Constant Editor which is used for editing the standard TYPO3 templates. These design templates are what control the layout of the TYPO3 site. However, these templates are different from the HTML templates you may have encountered. Koch explains these differences and how to use markers, subparts and placeholders to control dynamic content.

Koch then moves on to dynamic menu and image generation. He discusses how you can do a lot of graphic processing with TypoScript from embedding and modifying the size of your images to using GIFBUILDER to generate dynamic images. He also covers how TYPO3 can add shadows and embossing effects. Finally, he covers how to use TypoScript for image caching.

Without a navigation menu, your site visitors will not be able to go beyond the homepage. Koch discusses the creation and customization of dynamic text, graphical and JavaScript based menus with TypoScript. Then he covers using the HMENU object for hierarchical menus. Frames are also used to control the layout of a website and Koch covers TYPO3's IFRAME and IFRAME2 extensions.

Part of your site will require a membership area and login authentication. TYPO3 supports forms, such as a login form, and Koch shows you how to create forms for your site with the Forms Wizard. He discusses how to set up forms with required fields and how to add CSS style. Next, he shows how to use TypoScript and the Front End User Admin and MailformPlus extensions. If you have a large, dynamic driven website you will need database functionality. Koch covers how to program SQL queries within TYPO3.

You may want to add other extensions or create your own extensions. Koch covers both of these topics. He shows how to use the Extension Manager to install and manage several TYPO3 extensions which include a news, chat, newsletter and calendar extensions. Next, he covers how to make your own extensions with Kickstarter.

Once you have your site layout and extensions in place, Koch covers how to use TypoScript to optimize your site, add a multiple language option, and generate PDF pages of your site. Finally, Koch covers the steps needed to make a TYPO3 site search engine friendly.

Daniel Koch is an author and developer specializing in open source applications and content management systems.


Similar Listings

Book cover of Building Websites with TYPO3: A practical guide to getting your TYPO3 website up and running fast.Building Websites with TYPO3: A practical guide to getting your TYPO3 website up and running fast
Book cover of TYPO3: Enterprise Content Management: The Official TYPO3 Book, written and endorsed by the core TYPO3 Team.TYPO3: Enterprise Content Management: The Official TYPO3 Book, written and endorsed by the core TYPO3 Team
Book cover of Pro Drupal Development.Pro Drupal Development
Book cover of Beginning PHP and MySQL: From Novice to Professional, Third Edition (Beginning from Novice to Professional).Beginning PHP and MySQL: From Novice to Professional, Third Edition (Beginning from Novice to Professional)
Book cover of AJAX and PHP: Building Responsive Web Applications.AJAX and PHP: Building Responsive Web Applications
Our Webmaster book picks:


Search the Webmaster Products Store
Keywords:   


LCS Amazon Store 2.5 © 2009