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.

EXT: TIMTAB Weblog

Author:Kasper Skårhøj
Created:2002-11-01T00:32:00
Changed by:Ingo Renner
Changed:2006-06-02T01:32:57
Author:Ingo Renner
Email:typo3@ingo-renner.com
Info 3:
Info 4:

EXT: TIMTAB Weblog

Extension Key: timtab Copyright 2005-2006,Ingo Renner, < typo3 @ingo-renner.com >

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.com

Table of Contents

EXT: TIMTAB Weblog 1

Introduction 1

What does it do? 1

Requirements 1

Screenshots 1

Credits 2

Sponsors 2

Donate 2

Users manual 2

An example page tree 2

Setting up a blog using the included template “Kubrick” 2

Setting up a blog in general without using the themes 4

Creating a blog post 4

Trackbacks 4

Blogging with external tools 4

FAQ 5

Adminstration 5

Installation 5

Activation of Webservice – XML-RPC Interface 5

Trackback SPAM protection 5

FAQ 5

Configuration 5

Reference 6

New template markers 7

Known problems 8

To-Do list 8

Changelog 8

Introduction

What does it do?

- timtab is mainly a framework extension which connects other extensions, namely tt_news, ve_guestbook (modern guestbook) and realurl to use TYPO3 for blogging. You will use tt_news to post, your visitors can comment these posts with ve_guestbook and realurl delivers nice URLs. There will be 'optimal' default configurationsf or these extensions so you can start blogging (nearly) right away. Further this extension ships with the beautiful wordpress default template 'Kubrick'. With this template it is possible to set up a blog within a few clicks.

Requirements

TYPO3 3.8.0css_styled_contenttt_news 2.2.0ve_guestbook 1.7.5not required but recommended: realurl

Screenshots

img-1

Included template “Kubrick”

img-2 additional fields for a blog post in a tt_news record

Credits

Thanks to Kasper Skårhøj for TYPO3!

Thanks to Rupert Germann for the awesome work on tt_news.

Valery Romanchev who provided the first patch for modern guestbook to use it as commenting system for tt_news.

Udo von Eynern as author of modern guestbook who integrated some hooks and patches in modern guestbook we are using.

Thanks to Micheal Stucki for all his help and support so far.

Last but not least a thanks goes to Ingo Schommer for the initial implementation of the metaweblog API.

Sponsors

Thanks to Gerald Fränkl, Michael Janssen and Jens Schaller for the books and cds!

Users manual

An example page tree

All of the following examples and explainations will be based on this example tree:

img-3

Setting up a blog using the included template “Kubrick”

Go to our homepage [1] and create a main template record on the same page. Here you select from the right box “Include static (from extension)” the templates like shown in the screenshot below and in that order.

img-4

Next step is to insert two instances of Modern Guestbook on page [2]. One for the comments listing and one for the form. As Modern Guestbook can not be inserted via TS you have to do it manualy:

img-5

The last thing left is to set some options in the constants editor. To do this go to Template [1] --> page where you want to store the settings [2] --> Constants Editor [3] --> PLUGIN.TX_TIMTAB [4].

img-6 In our example we would set the following options:

required settings (timtab)

pid to store posts in: 6 pid to store comments in: 7 Blog pid: 2 Home pid: 1 Blog homepage: http://www.example.com

required settings (tt_news)

backPid: 1 pid_list: 6 catSelectorTargetPid: 1

required settings (ve_guestbook)

templateFile = {$page.file.template_ve_guestbook}

recommended settings (timtab)

Title, Tagline

recommended settings (ve_guestbook)

limit = 1000

Blogroll settings (timtab)

To make the Blogroll work you need to set plugin.tx_timtab_pi1.pid_list. (Set it to 8 for our example.

That's it – we're done! Wasn't that fast?

Setting up a blog in general without using the themes

Just create a website however you like. After installing tt_news, ve_guestbook and timtab you can use some additional markers in your tt_news and ve_guestbook templates. You can find a list of available markers further done in this manual.

»Simply create templates for tt_news and ve_guestbook like always. Just add the additional markers to the templates! «

Creating a blog post

Simply create a regular tt_news record and switch the type to “Blog Post”

img-7

Trackbacks

Trackbacks will be discovered automaticly when saving a new post. Timtab is searching for trackback enabled sites every time you change the bodytext field . Simply link to a post using its regular URL or Permalink. If the other site supports trackback autodiscovery timtab will find the trackback URL itself and ping the other site. If the other site doesn't support trackback autodiscovery you can still put the trackback URL s in the trackback field, one per line.

img-8 After timtab has sent the pings you will see the results in the trackback field devided by a pipe character after the ping URL:

  • 1 stands for a successfull ping
  • 0 means that there was an error and will be followed by the according error message.

More on trackback and what it is: http://en.wikipedia.org/wiki/TrackBack

A Note on Trackbacks:

When using xhtml_cleaning in order to make it possible for other blogs to discover your trackback URLs automaticly it is necessary to patch a core file. The needed patch is provided in typo3conf/ext/timtab/res/patches. Use that patch against t3lib/class.t3lib_parsehtml.php. Fo those who on't know how to do this there's also a ready patched file available from my homepage . Both the patch and the patched file are for TYPO3 3.8.0!An alternative is to turn off xhtml_cleaning.

Blogging with external tools

Before you can start bloggging with external tools it is necessary to set the Webservice (XML-RPC) settings. See the reference further down on this. Set the PIDs where you want the posts stored and enable the API you want to use.

Your blog accepts XML-RPC requests on http://www.example.com/index.php?type=200

Use an existing BE username/password to login.

[Example on how to set up w.bloggar goes here]

FAQ

- Possible FAQs

Adminstration

Installation

Timtab requires TYPO3 version 3.8.0 as it uses some features which have been introduced in this version.

Before you can install timtab it is required to have the following extensions in the given versions:

Activation of Webservice – XML-RPC Interface

Todo: add description on how to set up the webservice

Trackback SPAM protection

Since version 0.5.10 TIMTAB has a basic feature to prevent Trackback Spam. When receiving a Trackback TIMTAB fetches the sending URL and checks its content for a link to your own site. If no such link is found the Trackback Ping is considered Spam.

This feature is turned on by default. You can turn it of by setting

plugin.tx_timtab_pi2.trackback.validate = 0

After TIMTAB decided that a ping is Spam several things can be done with it. Default is to mark it hidden. Alternatively you can mark it as deleted, prevent TIMTAB from saving the ping at all or simply do nothing. The action is defined by the value for

plugin.tx_timtab_pi2.trackback.spam.mark (see table below for values and corresponding actions)

Trackback SPAM handling settings
-2

Value

-2

Action

Don't make a comment entry in the database at all

-1

Value

-1

Action

Mark the comment as deleted

0

Value

0

Action

Do nothing

1

Value

1

Action

Mark the comment as hidden (default)

[tsref:plugin.tx_timtab_pi2.trackback.spam.mark]

FAQ

- Possible subsections: FAQ

Configuration

Many of the following settings can be configured using the constants editor:

img-6

Reference

General settings
title

Property

title

Data type

string

Description

Your blogs name

Default

timtab

tagline

Property

tagline

Data type

string

Description

A short description for your blog

Default

Blogging with TYPO3

homepage

Property

homepage

Data type

string

Description

The URL to your blog

Default

homePid

Property

homePid

Data type

int+

Description

The pid of your homepage

Default

blogPid

Property

blogPid

Data type

int+

Description

The pid where your tt_news SINGLE view of your tt_news plugin resides

Default

clearPageCacheOnUpdate

Property

clearPageCacheOnUpdate

Data type

int

Description

A comma separated list of page ids to clear the FE cache after a post or a comment has been created or modified

Default

wrap

Property

wrap

Data type

wrap

Description

This wrap is required

Default

<ul>|</ul>

targetPid

Property

targetPid

Data type

Int+

Description

Pid for the category links to point to. Set this to make the category menu work!

Default

sortBy

Property

sortBy

Data type

string

Description

A tt_news table field to sort by

Default

title

sortOrder

Property

sortOrder

Data type

string

Description

The sorting order: ASC for ascending, DESC for descending

Default

ASC

hideEmpty

Property

hideEmpty

Data type

boolean

Description

Hides categories with no posts when set

Default

1

list

Property

list

Data type

boolean

Description

Wraps the output in an <ul> unordered list if set

Default

1

showLatestDate

Property

showLatestDate

Data type

boolean

Description

Shows the date of the latest post in the current category after the title

Default

0

catLatestDate.strftime

Property

catLatestDate.strftime

Data type

string

Description

Formatting for the date, see http://www.php.net/strftime for options

Default

%d.%m.%G

showCount

Property

showCount

Data type

boolean

Description

Shows the number of posts in the current category

Default

1

useDescForTitle

Property

useDescForTitle

Data type

boolean

Description

Use the category description for thelink's title attribute

Default

1

hierarchical

Property

hierarchical

Data type

boolean

Description

Whether to render a hierarchical tree list or not

Default

0

[tsref:plugin.tx_timtab]

Gravatar settings
rating

Property

rating

Data type

string

Description

Rating defines what kind of gravatars you might want to block for your site.

Possible values are: G, PG, R and X. 0 means no rating.

G is suitable for display on all sites.

PG may contain disputably offensive imagery

R things as harsh profanity, intense violence, explicit sexual content, and drug use

X may contain hardcore sexual imagery or extremely disturbing violence

see http://www.gravatar.com/rating.php

Default

0

defaultImg

Property

defaultImg

Data type

string

Description

Set this to an URL to an image you want as default image if the person who comments doesn't have a gravatar. You can set it to http://www.yourdomain.com/clear.gif for example.

Default

border

Property

border

Data type

string

Description

Draws a 1px border around the gravatar. Defines the color as HEX color: FF0000

Default

class

Property

class

Data type

string

Description

The css class assigned to the gravatar

Default

size

Property

size

Data type

int+

Description

Defines the size of the displayed gravatar in pixels. Maximum vlaue is 80.

Default

60

[tsref:plugin.tx_timtab.gravatar]

Blogroll settings
header_stdWrap

Property

header_stdWrap

Data type

->stdWrap

Description

StdWrap for the header

Default

dontWrapInDiv

Property

dontWrapInDiv

Data type

boolean

Description

If set to 1 the plugin won't be wrapped in a <div>. Comes in handy when integrating the plugin in an <ul> unordered list.

Default

0

pid_list

Property

pid_list

Data type

int+

Description

Pid to take the blogroll links from when inserting the plugin into your site via TypoScript.

Default

listClass

Property

listClass

Data type

string

Description

Adds a css class to the <ul> tag of the blogroll

Default

[tsref:plugin.tx_timtab_pi1]

Webservice (XML-RPC) settings

All of these settings ar configurable with the Constants editor.

pidStorePosts

Property

pidStorePosts

Data type

int+

Description

The page or sysfolder where your posts from external tools will be saved to.

Default

pidStoreComments

Property

pidStoreComments

Data type

int+

Description

The page or sysfolder where your comments and trackback pings will be saved to.

Default

connectionTimeout

Property

connectionTimeout

Data type

int+

Description

Timeout for XML-RPC Server connections in seconds.

Default

30

enableBlogger

Property

enableBlogger

Data type

boolean

Description

Enable blogging with external tools which are capable of using the Blogger API.

Default

enableMetaweblog

Property

enableMetaweblog

Data type

boolean

Description

Enable blogging with external tools which are capable of using the MetaWeblog API.

Default

strictAPI

Property

strictAPI

Data type

boolean

Description

Force the XML-RPC Server to be API compliant instead of behaving the more common way. You might want to set this to 1 if you encounter problems with your blog tool especially with categories.

Default

0

[tsref:plugin.tx_timtab_pi2]

Calendar settings
header_stdWrap

Property

header_stdWrap

Data type

->stdWrap

Description

StdWrap for the header

Default

dontWrapInDiv

Property

dontWrapInDiv

Data type

boolean

Description

If set to 1 the plugin won't be wrapped in a <div>. Comes in handy when integrating the plugin in an <ul> unordered list.

Default

0

pid_list

Property

pid_list

Data type

int+

Description

Pid to take the posts from when inserting the plugin into your site via TypoScript.

Default

targetPid

Property

targetPid

Data type

int+

Description

Pid where you want the links to point to. Set this to make the calendar work!

Default

week_begins

Property

week_begins

Data type

int

Description

Determines the day with that the week starts. = = Sunday, 1 = Monday

Default

1

gmt_offset

Property

gmt_offset

Data type

int

Description

GMT Offset in hours

Default

0

weedayNameLength

Property

weedayNameLength

Data type

int+

Description

Length of the name of the weekday in the table header

Default

1

[tsref:plugin.tx_timtab_pi3]

New template markers

Tmtab offers you to use some new markers in your tt_news and ve_guestbook templates. Amoung them are markers for inserting the gravatar images or showing the number of comments a post got so far.

Markers for use in tt_news templates
###BLOG_COMMENTS_COUNT###

Marker

###BLOG_COMMENTS_COUNT###

Description

Displays the number of comments a post got so far. If there are no comments yet instead of displaying a 0 it stays empty.

###BLOG_TEXT_COMMENTS###

Marker

###BLOG_TEXT_COMMENTS###

Description

If there are no comments it says “No comments”, if there is one comment it says “comment” in singular. For any other case with more than one comment it's he plural “comments”

Usaually you will use this marker in conjunction with BLOG_COMMENTS_COUNT in front of it.

###BLOG_TRACKBACK_RDF###

Marker

###BLOG_TRACKBACK_RDF###

Description

This produces a piece of RDF code encapsulated in an HTML comment. It is not visually visible but can be found by other blog systems who will determine the URL to send trackback pings to through this.

This marker should be used in tt_news SINGLE view only.

###BLOG_TRACKBACK_URL###

Marker

###BLOG_TRACKBACK_URL###

Description

The Trackback URL. This can be used in <a> anchor tags.

###BLOG_POST_TITLE###

Marker

###BLOG_POST_TITLE###

Description

Produces the Permalink to the post with <A> tag attribute rel=”bookmark” and links to SINGLE view.

This marker should be used in tt_news SINGLE view only.

Markers for use in ve_guestbook templates
###BLOG_FORM_REQUIRED###

Marker

###BLOG_FORM_REQUIRED###

Description

By default gets replaced by “(required)” and is supposed to be placed after the required form fields.

###BLOG_NOT_PUBLISHED###

Marker

###BLOG_NOT_PUBLISHED###

Description

Default is “(will not be published)” and is supposed to be put after the email field if it is required.

###BLOG_LEAVE_REPLY###

Marker

###BLOG_LEAVE_REPLY###

Description

By default it is replaced by “Leave a reply”.

###BLOG_NAME###

Marker

###BLOG_NAME###

Description

Replaced by “Name”.

###BLOG_MAIL###

Marker

###BLOG_MAIL###

Description

Replaced by “Mail”.

###BLOG_HOMEPAGE###

Marker

###BLOG_HOMEPAGE###

Description

Replaced by “Website”.

###BLOG_COMMENTS_COUNT###

Marker

###BLOG_COMMENTS_COUNT###

Description

Gets replaced by the number of comments for the current post.

###BLOG_TEXT_COMMENTS###

Marker

###BLOG_TEXT_COMMENTS###

Description

If there are no comments it says “No comments”, if there is one comment it says “comment” in singular. For any other case with more than one comment it's he plural “comments”

Usaually you will use this marker in conjunction with BLOG_COMMENTS_COUNT in front of it.

###BLOG_RESPONSES###

Marker

###BLOG_RESPONSES###

Description

Is either singular or plural of “response” reagrding the number of response a post got.

###BLOG_POST_TITLE###

Marker

###BLOG_POST_TITLE###

Description

Is the title of the current post.

###BLOG_COMMENT_GRAVATAR###

Marker

###BLOG_COMMENT_GRAVATAR###

Description

Adds the gravatar image to the comment if any is returned otherwise the configured default image is displayed.

###BLOG_COMMENTER_NAME###

Marker

###BLOG_COMMENTER_NAME###

Description

The name of the person who left the comment.

###BLOG_COMMENT_NUM###

Marker

###BLOG_COMMENT_NUM###

Description

Gives the comment a number starting with 1 for the first increasing by 1 for each comment. That makes it possible to give each comment an anchor or just displaying it to the visitors.

###BLOG_REMEMBER_YES###

Marker

###BLOG_REMEMBER_YES###

Description

Will be replaced by “yes” and should be placed besides the radio button for remembering the visitors informaton.

###BLOG_REMEMBER_NO###

Marker

###BLOG_REMEMBER_NO###

Description

Is equivalent to the previous marker but displaying “no”.

###BLOG_REMEMBER_VISITOR###

Marker

###BLOG_REMEMBER_VISITOR###

Description

The label for the radio buttons to remember the visitors information. If he checks yes the name, email and homepage will be saved in a cookie. The cookie has a lifetime of 90 days. So if the visitor comes back within these 90 days he doesn't have to type in his information again and can just start commenting right away.

###BLOG_TRACKBACK_URL###

Marker

###BLOG_TRACKBACK_URL###

Description

The Trackback URL. This can be used in <a> anchor tags.

Known problems

  • metaWeblog.newMediaObject is not tested yet and therefore disabled
  • authentication works but no authorization is made when creating posts through XML-RPC

To-Do list

  • Pingback
  • MovableType API support
  • RSS feeds for comments

Changelog

v0.5.0

  • category menu
  • calendar
  • some bugfixes
  • themes
  • importer API

v0.4.0

first TER release

img-9 EXT: TIMTAB Weblog - 8