Re: A simple question about ordering of posts
chombee <[email protected]> Sun, 31 Jan 2010 15:36:59 +0000
| Newsgroups | gmane.comp.web.pyblosxom.user |
|---|---|
| Message-ID | <20100131153659.GA11259@kisimul> |
On Sun, Jan 31, 2010 at 02:27:41PM +0000, Chris G wrote: > On Sun, Jan 31, 2010 at 01:24:28PM +0000, chombee wrote: > > On Sun, Jan 31, 2010 at 10:09:54AM +0000, Chris G wrote: > > > I know it's probably totally back to front for a blog but how easy > > > would it be to get pyblosxom to display posts in increasing date > > > order? Is the ordering set at just one place in the code? I'm quite > > > happy to just patch my installed pyblosxom code as I realise this > > > won't be a common requirement. > > > > > > For what it's worth I want to create a [not]blog where the story > > > template will just display the date and title so one sees just a list > > > of entries - in increasing date order. > > > > Could you write a plugin to do this? Using the cb_filelist callback > > maybe: > > > > http://pyblosxom.sourceforge.net/1.5/dev_architecture.html#cb-filelist > > > You could well be right! It would certainly be more elegant to do it > with a plugin rather than by patching the code directly. I probably > need to write a plugin anyway as I need to do things at cb_story() > time to enable me to click on my list and view individual posts. You shouldn't need a plugin to click on items in your list and view individual posts. Just make the items hyperlink to the permalink pages for each post. Take a look at the permalinks in the default flavour. I think your plugin needs to do two things (maybe two different plugins): 1. Reverse the sort order of items, maybe a cb_filelist plugin. 2. Make it so that on index pages (such as the front page) only the title of each item is displayed and not the full contents (I think this is what you want?). I think there are a lot of ways to achieve 2. You could do it easily by using one flavour for the index pages and having that flavour hyperlink to another flavour for the permalink pages. Probably there would be much shared code between the two flavours, differing only in the story template, so one flavour could consist mostly of symlinks to the other flavour's files but with its own story file. I've done this before and it works, but I feels a little inelegant. It might be more elegant to write a plugin. This could be a cb_story plugin that changes the 'body' field of a story to an empty string if the request is for an index view. This would be similar to the readmore plugin: http://bluesock.org/~willg/cgi-bin/devtrac.cgi/browser/trunk/pyblosxom/readmore.py#latest Or perhaps it could be a cb_entryparser plugin that changes the value of 'template_name' in the entrydata dict if the request is for an index view, using a different story template for index views and for permalink pages. See: http://pyblosxom.sourceforge.net/1.5/dev_writing_plugins.html#writing-an-entryparser I'm a plugin-writing newbie, so my suggestions might not be the best or easiest way of doing things. Will would know better. ------------------------------------------------------------------------------ The Planet: dedicated and managed hosting, cloud storage, colocation Stay online with enterprise data centers and the best network in the business Choose flexible plans and management services without long-term contracts Personal 24x7 support from experience hosting pros just a phone call away. http://p.sf.net/sfu/theplanet-com