Предупреждаю что этот плугин я писал персонально для себя. Публиковать не планировал, но получился он неплохим, и пожалуй я его приведу в нормальный вид и опубликую (нету желающих помочь перевести на английский документацию к нему ? ;))
Сам плугин делает три вещи:
По умолчанию PyBlosxom показывает элемент со списка статей и саму статью используя один и тот же template - store.html. Это офигенно неудобно. Хотя бы потому что список статей это список и его надо оформлять тегами списка, а отдельная статья это отдельная статья. Там теги списка не нужны. Мой плугин решает эту проблему. Надо добавить три дополнительных template в ваш flavour: category-head.<flavour>, category-foot.<flavour> и category-entry.<flavour>. Содержимое этих templates может быть таким:
<h1>$(category_title)</h1>
$(category_body)
<ul>
</ul>
<li>
<h2>
<a href="$(base_url)/$(file_path_urlencoded).$(flavour)">
$(title)
</a>
</h2>
<div>$(body)</div>
</li>
"""
Summary
"""
import os, re, time
__author__ = "maintainer: Gansik - gansik at tagv dot com"
__version__ = "$Date$"
__license__ = "python or GNU"
__url__ = "http://gansik.tagv.com/"
__description__ = "."
from Pyblosxom import tools
def cb_head(args):
entry = args['entry']
renderer = args['renderer']
request = args["request"]
config = request.getConfiguration()
if ((entry['bl_type' ] == 'dir') and (len(entry['entry_list' ]) >= 1)):
args["template"] = args["template"] + renderer.flavour['category-head']
entry["blog_title_with_path"] = config['blog_title'] + ' > ' + entry['pi_bl'].rstrip('/').lstrip('/').title().replace('/',' > ').replace('-',' ')
try:
cat_file = open(entry['root_datadir'] + 'descript.ion', 'r')
cat_file_txt = cat_file.readlines()
entry["category_title"] = cat_file_txt[0]
entry["category_body"] = "".join(cat_file_txt[1:])
cat_file.close()
except IOError:
entry["category_title"] = 'Home :: ' + entry['pi_bl'].rstrip('/').lstrip('/').title().replace('/',' :: ').replace('-',' ')
entry["category_body"] = ""
return args
def cb_story(args):
entry = args['entry']
renderer = args['renderer']
if ((entry['bl_type' ] == 'dir') and (len(entry['entry_list' ]) >= 1)):
args["template"] = renderer.flavour['category-entry']
return args
def cb_foot(args):
entry = args['entry']
renderer = args['renderer']
if ((entry['bl_type' ] == 'dir') and (len(entry['entry_list' ]) >= 1)):
args["template"] = renderer.flavour['category-foot'] + args["template"]
return args
При добавлении комментария вы можете использовать весь набор HTML тегов, который знаете. Даже те которые deprecated в XHTML. Пишите любой JavaScript. Добавляйте ссылки на что хотите и куда хотите. Конечно же разрешенна вставка картинок любого содержания, на какой бы помойке вы их не нашли. Оскорбления владельца блога или комментаторов - не проблема. Не сдерживайте себя, пишите что хотите...
Другой вопрос опубликую ли я ваш комментарий ;) Но вы попробуйте, а вдруг повезет.
Аргументированное мнение не совпадающее с моим, будет опубликованно в объязательном порядке. Реплики типа "Добавил в закладки", "Спасибо, очень полезно" публиковаться не будут. Не надо тешить мое тщеславие, оно и так непомерное.