[pmwiki-users] Blogging recipe for PmWiki

Crisses crisses at kinhost.org
Wed Dec 19 06:54:12 CST 2007


Due to a hiccup on my mail server, I didn't send this through to the  
list....

On Dec 17, 2007, at 6:22 PM, kirpi at kirpi.it wrote:

>> I've pulled together recipes that support blogging [...]
>> and created a recipe that contains several OTHER recipes
>> by other authors, and packages them together with a few extras
>> added in for good measure.
>
> Crisses, while your effort deserves a praise for sure, and while the
> blog itself celebrates its ten years [1], I admit that I would feel a
> bit scared to "trust" in a blog structure and mechanisms which are far
> from plain, not easy to upgrade, and not firmly tied to the pmwiki
> core.

How about you take a look at what I did and decide whether I did  
anything out of the ordinary.

I included & enabled other recipes (see below) in my xesblog.php, this  
way you only have to add one include_once statement to config.php, and  
only a small number of configuration values.

I added a few bits of code -- for allowing public comments to be  
approved by the admin.  It adds a (:markup:) for a form button to  
approve comments, and it adds a {$Value} to the comment pages saying  
whether they've been approved.  This value is used elsewhere in  
pagelist "if" statements so only approved comments are listed under  
blog entries.

I added a new pagestore "xeslib.d" so that pre-created wiki pages  
(such as a template for Blog.Blog that has the pagelist pre-configured  
in it, a template for the admin to approve comments, etc.) are  
available with the recipe.  This is optional: you can copy the pages  
to wiki.d or to wikilib.d instead, if you'd really want to.  These are  
normal wiki pages with pagelists, etc. and customizable using normal  
PmWiki markup.  It's just easier to work with pre-created pages than  
write out a recipe with instructions for every page you'd need to  
create.

I gave suggestions on things to add to the sidebar to show blog  
features to the world.  I would have put this in the new pagestore,  
but a sidebar is a very personal item, and I didn't want to get  
between a wikifanatic and their sidebar.

and lastly,

I put it all (recipes + pagestore + some blog|feed icons) into a  
single zipped plug-in so it's easier for people to download & install  
rather than picking through dozens of recipes and trying to figure out  
how to piece it together.


I am waiting on Patrick to review it for security (and perhaps sanity).

Included & pre-configured plug-in recipes:

XMLRPC
Pingback
TagPages
ListCategories
PmForm & captcha
EnhancedWebFeeds
GoogleBlogPing

None of the features these recipes supply will be included with the  
PmWiki core "blog support", to my knowledge.  If you want a blog you  
can use Ecto with your blog (xmlrpc), support for pingbacks, the  
ability to easily tag pages (tagpages just adds typical PmWiki  
Categories to pages), Tag Clouds (ListCategories), comment forms with  
captcha, RSS feeds that contain full descriptions & tags/categories,  
and outbound ping when you post -- you'll need to either code all of  
these features yourself, or use recipes for them.  If you don't want  
any of these, the xesblog.php is commented, and any section can be  
commented out to eliminate the need for these recipes.

I've been using xmlrpc.php for years with Ecto to manage large & small  
wiki websites -- LOVE it.  I created the TagPages recipe it just adds  
categories ([[!Tag]]) to pages, alphabetizes and wikistyles them....   
PmForm is by Patrick, EnhancedWebFeeds is a recipe created to take  
advantage of features in Patrick's built-in webfeeds that are not  
enabled by default.  I've been using PmForm's captcha ability and have  
had no problems with it.

The only IFFY recipes are pingback & googleblogping because I can't  
verify if they're working.  I can take or leave them.  I don't see  
these capabilities going into the core any time soon, and it would be  
nice to support pingback and pinging an external service if they work.


Other recipes I mentioned in the recipe page were theory-only recipes,  
and they lent ideas to the overall creation of this recipe.


The ONLY thing I believe is not what Patrick has been thinking: I have  
each blog comment on a separate page.  I thought about it long and  
hard, and thought that being able to individually approve each comment  
was -- at this time -- more important than worrying about getting my  
blog(s) dugg/slashdotted, and I wanted to keep the entries as close to  
core PmWiki as possible.  Thus each comment to a page, and only one  
variable value added in the page attributes -- i.e. it's not in the  
page text in-wiki, it's in the text file saved-to-disk and creates a  
$Variable rather than a $:Variable in-wiki....  Other than this, I've  
worked closely with Patrick on a number of ideas & projects over the  
last year.  I don't believe I did anything outside of the norm in  
using PmWiki in the project, and I'm confident that what I've done is  
going to be good until a new major revision of pmwiki -- OR longer  
(and of course, I can update my recipe if needed).

I expect that this experiment in "PmWiki already supports blogging"  
will either succeed, or will spur Patrick to fix where I'm wrong.   
Please help beta test my recipe.

Thank you,

Crisses



More information about the pmwiki-users mailing list