Tiki has more features out-of-the box than any other CMS or groupware package out there. While some features are complete and consistent (like wiki, file galleries and articles), others are incomplete, lack core functionalities and have significant bugs. Blogs are one of those features that need some improvement. We don't want to be better than Wordpress for someone just looking for a blog tool. But the goal of this project is to make blogs one of the good features of Tiki.
What we would like to change in Tiki blogs
New stuff
Post comment watch. Either make blog watch include watching blog comments, or another watch for each post comments, or let the blog creator choose if watches include comment watches.
Post status: draft, pending revision, published or archived
Could use categories
Improve interface to add media video. Easier way to embed Youtube, Blip.tv and Vimeo videos wihtout needing to validate the potentially unsafe HTML plugin call.
Categorize posts.
Comments admin panel
Comments moderation
Post comments admin page
Post excerpt field
Extend the "blog heading" field idea to add a similar "post heading" field.
Display related posts in the bottom of each post
Features improvements
Add image interface (advanced options button, generic for all wikiplugins)
Post previews which look the same as the final view
Allow a blog admin to list the posts from his own blog only. Example: tiki-list_posts.php?blogId=5 lists all blog posts, and not just hte ones from blog 5.
In some places being the author of the blog means if have admin rights (like creating a new blog post) and in others don't (listing blog comments)
The new "Editing the Publish date" feature should be made optionnal. Some people want to keep posting simple, and it does not work well with watches (which send mails when it's posted, not at publish date)
Make watches respect publish dates and draft ('priv'=y) mode
Interface changes
Acceptable display when feature is activated by default -
I mean on 3.5 with coelesce theme, I had to twist the tpls quite a lot. Maybe this is already solved in Tiki 5. Otherwise I plan to make my twisting generic and commit them later at Barcelona (no time now).
Jean-Marc, maybe your template twists are needed for every/any theme's blog layout, but when trying to implement the Coelesce theme's blog design intially, I found its layout was quite different from the existing Tiki blog layout, and this problem came up again when the Strasa theme was designed (as a visual concept), with blog page components again positioned differently from the Tiki "standard". (I look forward with mixed feelings to how Simon decides the Fivealive blogs should look 😉.) Up til now, the solution for this has been either radical CSS positioning - if that works, but sometimes it can't manage it and frequently this introduces browser-specific display problems - or a forked tiki-view_blog.tpl, etc. for the theme. This is why I propose (and will document in detail) a kind of "blog file wrapper" similar to what is done in the site header, so each theme can position blog title, author info, post content and so on freely, without the blog post display code itself needing to be touched. (Gary)
Gary: Just so you don't have to wonder about how much I twisted, you can have a look at the kind of result I recently achieved: http://impro-amicale.jmlibs.name/tiki-view_blog_post.php?postId=12&comzone=show I mostly rearranged parts and added classes. The "blog file wrapper" sounds like something I would have found useful. Another one is here: http://commissioner.cws.coe.int/ but it's a heavily modified fluidindex.css upgraded to 3.5, with no comments. So it's a dead-end as far as I'm concerned.
Update: This is now implemented at http://zukakakina.com/blogdev/. There are no theme modifications. Only Look and Feel options are used to make this layout (including custom CSS that narrows the fixedwidth div to 780px and reduces div#header-top to 0). I'll itemize them soon.
Comments previews which look the same as the final view
Add post title to tiki-list_posts.php
Print post (still very simple but now at least it is not broken)
Small interface changes
Add interface to let the user control the max number of posts listed (default is 10)
Global post-level comments should be on by default and default ordering should be "oldest first"
Hide current heading preview and create a icon to display it in tiki-edit_blog.php
View post link when editing a post (tiki-blog_post.php)
make title for comments optional
module last comments on blogs now uses the format "$name on $postTitle"
next and previous post links
optional website field for post comments
optional email field for post comments (only useful for the admin now, but can be used in the future for notification)
Comments: move 'name' on top
Replace "Required" with the asterisk
Features to be removed
tiki_blog_posts_images: remove the interface to add new images using this method (it is possible to add images using the file gallery system) and keep the table to support old installation
Rodrigo: This allows the user to decide whether or not display the title of each post in the blog main page and in the post page. Since the feature is inconsistent (breaks the layout, don't remove the title field from the edit post page, etc) and I don't see a reason to have a blog post without a title I'm planning to remove it unless someone wants to keep it and is willing to work to make it consistent.
[Based on webblogmatrix.org - other items and especially ones unique to Tiki can be added. "Others" means other the popular blogging software in the webblogmatrix.org comparison. Numbers under "Others" indicate how many out of 8 software have the feature (natively + plugin separately downloaded and installed).]
Features
Others
Tiki
Blogging Features
Categorization
5 multiple + 2 single
Y, multiple
Tags
3 + 4 plugin
Y, but not per blog, so that a blog in a common tiki for a whole organization, gets way too many tags that don't correspon to that blog.
Archiving
8
-
Trackback
6 Send+Receive
Y
Pingback
3 Send+Receive + 1 Receive
Y
Ping Service Support
6
Link- / Blogroll
5 + 3 plugin
Protected Posts
7
Y
Blog by Email
3 + 3 plugin
Blog by SMS/MMS
1 + 1 plugin
Blog API
WordPress, MovableType, metaWeblog, Blogger, XML-RPC and Atom
There's no reason why Tiki blogs can't look good with the currently available themes, let's say if you had a free hand to apply each theme's CSS properties in a way that's optimal for a blog layout.
However, old layout bits and pieces have been kept on even though they aren't especially attractive or fashionable (such as the "blog info" lines).
Also, a couple of the newer theme designs - Strasa and Coelesce - have had explicitly designed blog pages that didn't necessarily take the existing tpl files or graphic needs of other themes into account, which complicated blog-related files for themes in general (that is, caused some theme-specific files in order to achieve the visual design).
We also need to keep in mind that, unlike single-purpose blog software, Tiki has other similar features that share .tpl files and CSS classes to some extent, for efficiency. This could add some design constraints unless a method is built in for flexibility.
If it's workable, I'd like to see the blog-related .tpl files (and maybe other similar files such as for forums and/or articles) broken down into a wrapper file and component files, as was done for the site header. This would enable Tiki to have, depending on the theme, a variety of blog page layouts (see next item) easily without touching the functional code itself (see note below).
A look at the popular blog software and themes shows that blog layouts break down into a handful of main types, according to the locations of post title, author, text, post image, and so on. For example, one of these is all items stacked vertically (with some variation in the order of items), and one arranges the author and post body side-by-side in each post. CSS can position things to some extent, but to have more radical but also robust repositioning, it's nice to be able to actually move the HTML itself via re-ordering .tpl files within their wrapper. (Note: This is the method I used at Reaxmusic.com kind of as an exercise to get the look for the articles pages (for example, http://reaxmusic.com/article75596-Feature-Event-Tuesday-May-18-2010) but doing this in the default files rather than per-theme will make site updating a lot easier.)
During TikiFestBarcelona2 we created a basic Easy Blog profile, to test the current features in tiki, with the improvements developed as they are added to Tiki.
Please, feel free to update this profile so that it reflects wht can be done with Tiki and the Blog Revamp eforts that are going on these months.
!! Background
Tiki has more [http://doc.tiki.org/features|features] out-of-the box than any other CMS or groupware package out there. While some features are complete and consistent (like wiki, file galleries and articles), others are incomplete, lack core functionalities and have significant bugs. Blogs are one of those features that need some improvement. We don't want to be better than Wordpress for someone just looking for a blog tool. But the goal of this project is to make blogs one of the good features of Tiki.
!! What we would like to change in Tiki blogs
!!! New stuff
* Post comment watch. Either make blog watch include watching blog comments, or another watch for each post comments, or let the blog creator choose if watches include comment watches.
* List posts in a blog per tag or category
* Spam filter ([http://framework.zend.com/manual/en/zend.service.akismet.html|Zend_Service_Akismet], Mollom, Defensio, etc.)
* Trackbacks
** Needs a trackback library. ZF has a [http://framework.zend.com/wiki/pages/viewpage.action?pageId=13107298|proposal for a trackback class] that should be in the next major release (1.11) due to September.
* Feed for post comments
* {wish id=3525}
* Use a categoryID as tree parent to have a different set of categories per blog
* Module to show tags or categories per blog
* Decide if we want to change to [http://framework.zend.com/manual/en/zend.tag.html|Zend Tag]
* Post status: draft, pending revision, published or archived
** Could use categories
* --Improve interface to add media video. Easier way to embed Youtube, Blip.tv and Vimeo videos wihtout needing to validate the potentially unsafe HTML plugin call.--
* --Categorize posts.--
* --Comments admin panel--
* --Comments moderation--
* --Post comments admin page--
* --Post excerpt field--
* --Extend the "blog heading" field idea to add a similar "post heading" field.--
* --Display related posts in the bottom of each post--
!!! Features improvements
* --Add image interface (advanced options button, generic for all wikiplugins)--
* --Better anti-bot verification code (including recaptcha option). [http://framework.zend.com/manual/en/zend.captcha.html|Zend_Captcha].--
* --Post previews which look the same as the final view--
* --Allow a blog admin to list the posts from his own blog only. Example: tiki-list_posts.php?blogId=5 lists all blog posts, and not just hte ones from blog 5.--
* In some places being the author of the blog means if have admin rights (like creating a new blog post) and in others don't (listing blog comments)
* --The new "Editing the Publish date" feature should be made optionnal. Some people want to keep posting simple, and it does not work well with watches (which send mails when it's posted, not at publish date)--
* Make watches respect publish dates and draft ('priv'=y) mode
!!! Interface changes
* --Acceptable display when feature is activated by default-- - {FADE(label="Discussion")}** What do you mean by that? - [http://tiki.org/UserPagerodrigo|rodrigo]
** I mean on 3.5 with coelesce theme, I had to twist the tpls quite a lot. Maybe this is already solved in Tiki 5. Otherwise I plan to make my twisting generic and commit them later at Barcelona (no time now).
*** Jean-Marc, maybe your template twists are needed for every/any theme's blog layout, but when trying to implement the Coelesce theme's blog design intially, I found its layout was quite different from the existing Tiki blog layout, and this problem came up again when the Strasa theme was designed (as a visual concept), with blog page components again positioned differently from the Tiki "standard". (I look forward with mixed feelings to how Simon decides the Fivealive blogs should look (:wink:).) Up til now, the solution for this has been either radical CSS positioning - if that works, but sometimes it can't manage it and frequently this introduces browser-specific display problems - or a forked tiki-view_blog.tpl, etc. for the theme. This is why I propose (and will document in detail) a kind of "blog file wrapper" similar to what is done in the site header, so each theme can position blog title, author info, post content and so on freely, without the blog post display code itself needing to be touched. (Gary)
*** Gary: Just so you don't have to wonder about how much I twisted, you can have a look at the kind of result I recently achieved: [http://impro-amicale.jmlibs.name/tiki-view_blog_post.php?postId=12&comzone=show] I mostly rearranged parts and added classes. The "blog file wrapper" sounds like something I would have found useful. Another one is here: [http://commissioner.cws.coe.int/] but it's a heavily modified fluidindex.css upgraded to 3.5, with no comments. So it's a dead-end as far as I'm concerned.
{FADE}
* --Blog template file wrapper method (see also [http://zukakakina.com/blogdev/] and [http://zukakakina.com/tiki-index.php?page=Blog%20files%20revamp])--
* --A nice theme style with horizontal image, and tabs on top as menus for the personal blog. Like the ones on most blogs out there.-- - {FADE(label="Discussion")}
** Example:
++ http://startbigthinksmall.wordpress.com/2008/10/30/beautyofcode-jquery-plugin-for-syntax-highlighting/
** An annotated screenshot of that WP theme and how it could be done with Tiki: [http://zukakakina.com/display65].
*** __Update__: This is now implemented at [http://zukakakina.com/blogdev/]. There are no theme modifications. Only Look and Feel options are used to make this layout (including custom CSS that narrows the fixedwidth div to 780px and reduces div#header-top to 0). I'll itemize them soon.
{FADE}
* --Comments previews which look the same as the final view--
* --Add post title to tiki-list_posts.php--
* --Print post (still very simple but now at least it is not broken)--
!!! Small interface changes
* Add interface to let the user control the max number of posts listed (default is 10)
* --Global post-level comments should be on by default and default ordering should be "oldest first"--
* --Hide current heading preview and create a icon to display it in tiki-edit_blog.php--
* --View post link when editing a post (tiki-blog_post.php)--
* --make title for comments optional--
* --module last comments on blogs now uses the format "$name on $postTitle"--
* --next and previous post links--
* --optional website field for post comments--
* --optional email field for post comments (only useful for the admin now, but can be used in the future for notification)--
* --Comments: move 'name' on top--
* --Replace "Required" with the asterisk--
!!! Features to be removed
* --tiki_blog_posts_images: remove the interface to add new images using this method (it is possible to add images using the file gallery system) and keep the table to support old installation--
* --"Display titles in blog posts"-- - {FADE(label="Discussion")}* Rodrigo: This allows the user to decide whether or not display the title of each post in the blog main page and in the post page. Since the feature is inconsistent (breaks the layout, don't remove the title field from the edit post page, etc) and I don't see a reason to have a blog post without a title I'm planning to remove it unless someone wants to keep it and is willing to work to make it consistent.{FADE}
!!- What a good blog tool has
* posts
* posts drafts
* post comments
** comment follow-up (email notification)
* WYSIWYG editor
* comment moderation
* search
* feeds
* users
* attachments (image, video, other files)
* embed content
* tags
* categories
* themes
* pings and trackbacks
* export and import tool
* human friendly URLs structures
* spam filter for comments
* microblogging features such as the ability to integrate with social network updates (?)
* main page with latest posts overview (like [http://mashable.com/|Mashable])
!!- Comparison table
[[Based on webblogmatrix.org - other items and especially ones unique to Tiki can be added. "Others" means other the popular blogging software in the webblogmatrix.org comparison. Numbers under "Others" indicate how many out of 8 software have the feature (natively + plugin separately downloaded and installed).]
|| Features | Others | Tiki
__Blogging Features__ |
Categorization | 5 multiple + 2 single | Y, multiple
Tags | 3 + 4 plugin | Y, but not per blog, so that a blog in a common tiki for a whole organization, gets way too many tags that don't correspon to that blog.
Archiving | 8 | -
Trackback | 6 Send+Receive | Y
Pingback | 3 Send+Receive + 1 Receive | Y
Ping Service Support | 6 |
Link- / Blogroll | 5 + 3 plugin |
Protected Posts | 7 | Y
Blog by Email | 3 + 3 plugin |
Blog by SMS/MMS | 1 + 1 plugin |
Blog API | WordPress, MovableType, metaWeblog, Blogger, XML-RPC and Atom |
__Post Editing__
Multi-paged posts | 4 | Y
Spell Checker | 2 + 3 plugin | (browser)
WYSIWYG Editor | 6 + 2 plugin | Y
Undo | 1 | -
Syntax Highlighting | 1 + 4 plugin | Y
File Upload | 8 | Y
Asset Management | 5 + 2 plugin |
Emoticon Images | 3 + 3 plugin | Y
__Comment Features__
Comment Layout | (Either Flat or Threaded indicated)|
Feeds for Comments | 5 |
E-Mail on Followup | 2 + 4 plugin |
Gravatars | 1 + 6 plugins |
OpenID Support | 1 Client, 2 Client + Server | Y
__Extended Features__
Plugin System | 7 | Y
Photo Gallery | 1 + 7 plugin | Y
Polls / Surveys | 7 plugin | Y
Search Engine | 8 | Y
Custom Pages | 6 + 1 plugin | Y
Google Sitemap | 1 + 5 plugin |
__Workflow__
Content Approval | 5 |
Versioning | 2 | Via Include plugin and wiki page?
Article Publishing | 7 scheduled + 1 simple | Y
Comment Moderation Queue | 7 | Y
__Interoperability__
Content Import | 5 (various capabilities) |
Content Export | 5 (various capabilities) |
Unicode Support | 8 | Y
WebDAV Support | 0 | Y
HTML Output | (various) |
Friendly URLs | 8 | Y?
__Administration__
E-Mail Notifications | 8 |
Themes / Skins | 7 + 1 plugin | Y
Trash | 2 |
Web Statistics | 2 + 5 plugin |
Web-based Style / Template Management | 7 | Y
Comment Administration | 8 |
__Syndication__
RSS 0.9x | 5 |
RSS 1.0 | 5 |
RSS 2.0 | 8 |
ATOM 0.3 | 4 |
ATOM 1.0 | 7 |
__Podcasting / Videocasting__
Podcast Feeds | 3 + 3 plugin | Y?
ID3-Tag Editor | 2 |
YouTube Support | 3 + 2 plugin | Y
Media Converter | 0 |
Phone2Podcast Support | 1 plugin | ||
!!- Some ideas
* There's no reason why Tiki blogs can't look good with the currently available themes, let's say if you had a free hand to apply each theme's CSS properties in a way that's optimal for a blog layout.
* However, old layout bits and pieces have been kept on even though they aren't especially attractive or fashionable (such as the "blog info" lines).
* Also, a couple of the newer theme designs - Strasa and Coelesce - have had explicitly designed blog pages that didn't necessarily take the existing tpl files or graphic needs of other themes into account, which complicated blog-related files for themes in general (that is, caused some theme-specific files in order to achieve the visual design).
* We also need to keep in mind that, unlike single-purpose blog software, Tiki has other similar features that share .tpl files and CSS classes to some extent, for efficiency. This could add some design constraints unless a method is built in for flexibility.
* If it's workable, I'd like to see the blog-related .tpl files (and maybe other similar files such as for forums and/or articles) broken down into a wrapper file and component files, as was done for the site header. This would enable Tiki to have, depending on the theme, a variety of blog page layouts (see next item) easily without touching the functional code itself (see note below).
* A look at the popular blog software and themes shows that blog layouts break down into a handful of main types, according to the locations of post title, author, text, post image, and so on. For example, one of these is all items stacked vertically (with some variation in the order of items), and one arranges the author and post body side-by-side in each post. CSS can position things to some extent, but to have more radical but also robust repositioning, it's nice to be able to actually move the HTML itself via re-ordering .tpl files within their wrapper. (Note: This is the method I used at Reaxmusic.com kind of as an exercise to get the look for the articles pages (for example, [http://reaxmusic.com/article75596-Feature-Event-Tuesday-May-18-2010]) but doing this in the default files rather than per-theme will make site updating a lot easier.)
!!People ready to help
* Pascal St-Jean
* Gary (chibaguy)
* Jean-Marc (Jyhem)
* amette
* [http://tiki.org/userpagerodrigo|rodrigo]
* Sébastien Lord-Jetté (slordjette)
* Xavi
!! Profile Easy Blog
During ((tw:TikiFestBarcelona2)) we created a basic __((pr:Easy Blog))__ profile, to test the current features in tiki, with the improvements developed as they are added to Tiki.
::{img src="http://doc.tiki.org/display292" alt="Blog Revamp" class=reflect}::
Please, feel free to update this profile so that it reflects wht can be done with Tiki and the Blog Revamp eforts that are going on these months.
!! Related links
* http://code.google.com/p/google-blog-converters-appengine/wiki/ProductConversionsMatrix
* http://www.weblogmatrix.org/compare/b2evolution+Blogger+DotClear+Geeklog+Movable-Type+Serendipity+Textpattern+Wordpress
-=alias=-
(alias(BlogsRevamp)) (alias(Blogs Revamp)) (alias(Blogrevamp))
The following is a list of keywords that should serve as hubs for navigation within the Tiki development and should correspond to documentation keywords.
Each feature in Tiki has a wiki page which regroups all the bugs, requests for enhancements, etc. It is somewhat a form of wiki-based project management. You can also express your interest in a feature by adding it to your profile. You can also try out the Dynamic filter.