Difference between revisions of "Wikilog"
(Created page with "{{Extension4info |name=Wikilog |mediawiki=1.18+ |description en=Blogs and forums for MediaWiki with hierarchical comments, post calendar and experimental support for blogger.c...") |
Erkan Yilmaz (Talk | contribs) m (typo) |
||
(11 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
{{Extension4info | {{Extension4info | ||
|name=Wikilog | |name=Wikilog | ||
− | |mediawiki=1.18 | + | |mediawiki=1.18-mw4i, 1.19-1.21 |
− | |description en= | + | |description en=Heavily improved blog and forum system for MediaWiki with hierarchical comments and other features. |
− | |description ru= | + | |description ru=Сильно улучшенная система блогов/форумов для MediaWiki с иерархическими комментариями и другими возможностями. |
|created=2008-09-12 | |created=2008-09-12 | ||
|included=2009-07-08 | |included=2009-07-08 | ||
+ | |version=2013-10-10 | ||
|status=fork | |status=fork | ||
|useful=definitely | |useful=definitely | ||
}} | }} | ||
{{ExtensionFromInfo|lang=en|name=Wikilog}} | {{ExtensionFromInfo|lang=en|name=Wikilog}} | ||
− | [[ | + | |
+ | Wikilog is a MediaWiki extension that enhances the wiki software with some | ||
+ | common blogging features, making it a wiki-blog-forum hybrid. | ||
+ | |||
+ | This is a version heavily modified by Mediawiki4Intranet project. Version control access and issue tracking are available on github: | ||
+ | |||
+ | * https://github.com/mediawiki4intranet/Wikilog | ||
+ | |||
+ | Information about previous versions can be found on: | ||
+ | |||
+ | * http://www.mediawiki.org/wiki/Extension:Wikilog | ||
+ | * http://groups.google.com/group/mediawiki-wikilog | ||
+ | |||
+ | == Usage == | ||
+ | |||
+ | Quickstart: | ||
+ | * Install the extension and configure the Blog namespace (see below). | ||
+ | * Create a blog: for example, go to '''Blog:My_blog''' article and put any content on it. This will be your blog header. | ||
+ | * Create a post: | ||
+ | ** Click «Wikilog» tab in the top. | ||
+ | ** Enter the post title and click «Create» button. | ||
+ | ** Enter the post content, mark «Publish» checkbox and save the article. | ||
+ | * Comment on a post: | ||
+ | ** Go to Blog:My_blog | ||
+ | ** Click «0 comments» | ||
+ | ** Enter comment text in the editbox and click «Post comment» | ||
+ | |||
+ | Advanced tips: | ||
+ | * Add link to <tt><your_wiki>/Special:Wikilog?view=archives&show=published&sort=wlp_talk_updated&desc=1</tt> in your [[MediaWiki:Sidebar]] with «WikiForum» title to get a forum view. Or you can just select «Archives» and sort by «Talk updated» column. | ||
+ | * Go to [[Special:Wikilog]] to view all blog posts interleaved. You can subscribe to them via RSS/Atom, and you can subscribe to them by email in [[Special:Preferences|Preferences]]. | ||
+ | * Apply some filters on [[Special:Wikilog]] (author, date, wikilog, category…) | ||
+ | * Go to [[Special:WikilogComments]] to view all comments. You can subscribe to all comments via RSS/Atom. You can also subscribe to them by email in [[Special:Preferences|Preferences]]. | ||
+ | * Go to the main page of a blog, click «Discussion» tab — you’ll see all comments to that blog and also subscribe to them via RSS/Atom. | ||
+ | * Enable Wikilog-style comments on normal pages (<tt>$wgWikilogCommentNamespaces = true;</tt>). You'll receive email notifications if that page is on your watchlist. | ||
+ | |||
+ | == Our improvements == | ||
+ | |||
+ | Our Wikilog version is heavily improved; there is a lot of new big features: | ||
+ | * «Forum» view — i.e. sorting of entries by the date of last comment in «archives» mode, and unread comment count tracking | ||
+ | *: {{Tip}} Add link to <tt><your_wiki>/Special:Wikilog?view=archives&show=published&sort=wlp_talk_updated&desc=1</tt> in your [[MediaWiki:Sidebar]] with «WikiForum» title to get a forum view. | ||
+ | * '''(!)''' Wikilog-style hierarchical talk support for normal pages, not just for the blogs. | ||
+ | * Comment email notifications | ||
+ | * New blog entry email notifications for main blog page watchers | ||
+ | * RSS/Atom comment feeds | ||
+ | * Subscribing/unsubscribing to all comments in a blog, or even in all blogs in a wiki (the last is a user preference) | ||
+ | * New post creation form on Special:Wikilog (in the «blog agregator») | ||
+ | * Drop-down lists for wikilog/author/category fields on Special:Wikilog | ||
+ | * Post calendar for [[MediaWiki:Sidebar]] | ||
+ | *: {{Tip}} Add «* wikilogcalendar» to [[MediaWiki:Sidebar]] to enable it | ||
+ | * Automatic folding of non-branching comments to the linear view — this prevents too many nesting levels without any loss of hierarchy | ||
+ | * Improved binary encoding of materialized paths to comments, allowing to store up to 250 nesting levels, versus 36 in old Wikilog | ||
+ | * Pagination which never breaks discussion threads | ||
+ | * Experimental support for importing dumps from blogger.com | ||
+ | * Various bug fixes | ||
+ | |||
+ | The localisation was of course broken in the meantime — there is full support only for English and Russian :) | ||
+ | |||
+ | == TODO == | ||
+ | |||
+ | * Try to structurize improvements and send them to upstream, or just become the real upstream, because the original author has stopped the development. | ||
+ | *: I suppose it would be very hard to push changes via Gerrit because the review process takes incredibly long times. | ||
+ | * Optimize comment pages performance | ||
+ | *: Maybe it would be good to remove comments from Wikilog at all, and implement them as a separate [[TreeTalk]] extension storing all comments on a single page instead of separate pages for all comments — it would work much faster. But maybe it’s not needed. | ||
+ | * Check [[IntraACL]] compatibility — i.e. check that rights for individual pages/comments/blogs don’t break anything. | ||
+ | |||
+ | == Installation == | ||
+ | |||
+ | Requires DB update. '''First''' add the following into your LocalSettings.php: | ||
+ | |||
+ | <code-php> | ||
+ | # Minimal configuration | ||
+ | # 100 must be the first unused in your wiki namespace number | ||
+ | require_once "$IP/extensions/Wikilog/Wikilog.php"; | ||
+ | Wikilog::setupBlogNamespace(100); | ||
+ | |||
+ | # You can enable search in Wikilog namespace by default | ||
+ | $wgNamespacesToBeSearchedDefault[NS_BLOG] = 1; | ||
+ | |||
+ | # Then you can override some settings from WikilogDefaultSettings.php | ||
+ | # Not all of them are listed here, just the basic ones | ||
+ | |||
+ | # Default number of articles to list in the wikilog front page and in | ||
+ | $wgWikilogNumArticles = 20; | ||
+ | |||
+ | # Default number of comments to list in wikilog comment pages. | ||
+ | $wgWikilogNumComments = 50; | ||
+ | |||
+ | # This should be >= either of previous two settings | ||
+ | $wgWikilogExpensiveLimit = 100; | ||
+ | |||
+ | # Publish new articles by default. | ||
+ | $wgWikilogSignAndPublishDefault = false; | ||
+ | |||
+ | # Set to array(NS_TALK => true, NS_<something>_TALK => true) | ||
+ | # to enable threaded Wikilog-style comments in these namespaces. | ||
+ | # | ||
+ | # Set to boolean 'true' to enable such comments in ALL Talk namespaces. | ||
+ | $wgWikilogCommentNamespaces = array(); | ||
+ | |||
+ | # Date format to use for entries and comments | ||
+ | # Should be set to one of MW date format options, for example 'ymd hms' | ||
+ | # (see $datePreferences in languages/messages/Messages??.php) | ||
+ | $wgWikilogPagerDateFormat = 'ymd hms'; | ||
+ | |||
+ | # Default value for "not in category" field | ||
+ | # You can set for example to some "Hidden" category so your users | ||
+ | # can "soft-hide" some of their entries in the aggregated view | ||
+ | $wgWikilogDefaultNotCategory = false; | ||
+ | |||
+ | # Show existing comments on each item page just below the post content | ||
+ | # Turn off with 'false' | ||
+ | $wgWikilogCommentsOnItemPage = true; | ||
+ | </code-php> | ||
+ | |||
+ | And '''then''' run {{cmd|php maintenance/update.php}} to apply DB changes. | ||
+ | |||
+ | == Requirements == | ||
+ | |||
+ | * MediaWiki 1.19-1.21 or higher, or Mediawiki4Intranet 1.18. | ||
+ | * A MySQL database backend. | ||
+ | |||
+ | === Upgrading === | ||
+ | |||
+ | Always run <tt>php maintenance/update.php</tt> when you're updating Wikilog. Some of the updates | ||
+ | may not need it, but an extra run will never harm :) | ||
+ | |||
+ | If you are upgrading from one of previous versions of Wikilog, you should also run | ||
+ | |||
+ | php maintenance/patchSql.php extensions/Wikilog/archives/fill-wikilog-comment-meta.sql | ||
+ | |||
+ | in your Wiki document root. This command should be only run once. |
Latest revision as of 16:24, 11 July 2014
Wikilog is a MediaWiki extension.
- Main purpose: Heavily improved blog and forum system for MediaWiki with hierarchical comments and other features.
- Repository: https://github.com/mediawiki4intranet/Wikilog
- Homepage: Wikilog on mediawiki.org
- Compatible MediaWiki versions: guaranteed 1.18-mw4i, 1.19-1.21, maybe others
- License: GPLv2.0+
- Created: 2008-09-12
- Last version: 2013-10-10
- Our rating: Definitely useful (5)
Status for Mediawiki4Intranet distribution:
- Inclusion date: 2009-07-08
- Included version: newest available
- Improvement status: Forked in MediaWiki4Intranet with major improvements
Wikilog is a MediaWiki extension that enhances the wiki software with some common blogging features, making it a wiki-blog-forum hybrid.
This is a version heavily modified by Mediawiki4Intranet project. Version control access and issue tracking are available on github:
Information about previous versions can be found on:
Usage
Quickstart:
- Install the extension and configure the Blog namespace (see below).
- Create a blog: for example, go to Blog:My_blog article and put any content on it. This will be your blog header.
- Create a post:
- Click «Wikilog» tab in the top.
- Enter the post title and click «Create» button.
- Enter the post content, mark «Publish» checkbox and save the article.
- Comment on a post:
- Go to Blog:My_blog
- Click «0 comments»
- Enter comment text in the editbox and click «Post comment»
Advanced tips:
- Add link to <your_wiki>/Special:Wikilog?view=archives&show=published&sort=wlp_talk_updated&desc=1 in your MediaWiki:Sidebar with «WikiForum» title to get a forum view. Or you can just select «Archives» and sort by «Talk updated» column.
- Go to Special:Wikilog to view all blog posts interleaved. You can subscribe to them via RSS/Atom, and you can subscribe to them by email in Preferences.
- Apply some filters on Special:Wikilog (author, date, wikilog, category…)
- Go to Special:WikilogComments to view all comments. You can subscribe to all comments via RSS/Atom. You can also subscribe to them by email in Preferences.
- Go to the main page of a blog, click «Discussion» tab — you’ll see all comments to that blog and also subscribe to them via RSS/Atom.
- Enable Wikilog-style comments on normal pages ($wgWikilogCommentNamespaces = true;). You'll receive email notifications if that page is on your watchlist.
Our improvements
Our Wikilog version is heavily improved; there is a lot of new big features:
- «Forum» view — i.e. sorting of entries by the date of last comment in «archives» mode, and unread comment count tracking
- Add link to <your_wiki>/Special:Wikilog?view=archives&show=published&sort=wlp_talk_updated&desc=1 in your MediaWiki:Sidebar with «WikiForum» title to get a forum view.
- (!) Wikilog-style hierarchical talk support for normal pages, not just for the blogs.
- Comment email notifications
- New blog entry email notifications for main blog page watchers
- RSS/Atom comment feeds
- Subscribing/unsubscribing to all comments in a blog, or even in all blogs in a wiki (the last is a user preference)
- New post creation form on Special:Wikilog (in the «blog agregator»)
- Drop-down lists for wikilog/author/category fields on Special:Wikilog
- Post calendar for MediaWiki:Sidebar
- Add «* wikilogcalendar» to MediaWiki:Sidebar to enable it
- Automatic folding of non-branching comments to the linear view — this prevents too many nesting levels without any loss of hierarchy
- Improved binary encoding of materialized paths to comments, allowing to store up to 250 nesting levels, versus 36 in old Wikilog
- Pagination which never breaks discussion threads
- Experimental support for importing dumps from blogger.com
- Various bug fixes
The localisation was of course broken in the meantime — there is full support only for English and Russian :)
TODO
- Try to structurize improvements and send them to upstream, or just become the real upstream, because the original author has stopped the development.
- I suppose it would be very hard to push changes via Gerrit because the review process takes incredibly long times.
- Optimize comment pages performance
- Maybe it would be good to remove comments from Wikilog at all, and implement them as a separate TreeTalk extension storing all comments on a single page instead of separate pages for all comments — it would work much faster. But maybe it’s not needed.
- Check IntraACL compatibility — i.e. check that rights for individual pages/comments/blogs don’t break anything.
Installation
Requires DB update. First add the following into your LocalSettings.php:
# Minimal configuration # 100 must be the first unused in your wiki namespace number require_once "$IP/extensions/Wikilog/Wikilog.php"; Wikilog::setupBlogNamespace(100); # You can enable search in Wikilog namespace by default $wgNamespacesToBeSearchedDefault[NS_BLOG] = 1; # Then you can override some settings from WikilogDefaultSettings.php # Not all of them are listed here, just the basic ones # Default number of articles to list in the wikilog front page and in $wgWikilogNumArticles = 20; # Default number of comments to list in wikilog comment pages. $wgWikilogNumComments = 50; # This should be >= either of previous two settings $wgWikilogExpensiveLimit = 100; # Publish new articles by default. $wgWikilogSignAndPublishDefault = false; # Set to array(NS_TALK => true, NS_<something>_TALK => true) # to enable threaded Wikilog-style comments in these namespaces. # # Set to boolean 'true' to enable such comments in ALL Talk namespaces. $wgWikilogCommentNamespaces = array(); # Date format to use for entries and comments # Should be set to one of MW date format options, for example 'ymd hms' # (see $datePreferences in languages/messages/Messages??.php) $wgWikilogPagerDateFormat = 'ymd hms'; # Default value for "not in category" field # You can set for example to some "Hidden" category so your users # can "soft-hide" some of their entries in the aggregated view $wgWikilogDefaultNotCategory = false; # Show existing comments on each item page just below the post content # Turn off with 'false' $wgWikilogCommentsOnItemPage = true;
And then run php maintenance/update.php to apply DB changes.
Requirements
- MediaWiki 1.19-1.21 or higher, or Mediawiki4Intranet 1.18.
- A MySQL database backend.
Upgrading
Always run php maintenance/update.php when you're updating Wikilog. Some of the updates may not need it, but an extra run will never harm :)
If you are upgrading from one of previous versions of Wikilog, you should also run
php maintenance/patchSql.php extensions/Wikilog/archives/fill-wikilog-comment-meta.sql
in your Wiki document root. This command should be only run once.