Расширение bjblocks
Расширение для создания дополнительных информационных блоков на сайте. Является дополнением к расширению blocks.
Работа с блоками происходит непосредственно через веб-интерфейс. Создаются функциональные блоки, работающие с таксономией, списками постов, и пр.
На данный момент, реализованы такие блоки, как
- "Смотрите также"
- "Следующая/предыдущая запись"
- "Облако тегов"
- "Список категорий"
Информация для разработчиков
Чтобы подключить собственные блоки к расширению bjblocks, вам нужно создать простенькое расширение, состоящее из index.php, и файла конфигурации.
В index.php объявите функцию(без параметров, или с указанием параметров по умолчанию, возвращает bool-значение), которая будет выводить содержимое вашего блока, затем пропишите эту функцию в реестр bjblocks, просто добавив в массив $bjblocks элемент, ключом которого является имя вашей функции, а значением - описание действия этого блока.
Пример:
function ext_bjblocks_tagcloud(){
global $_s, $_v, $_l;
$d = dir('data/tags/cache');
while (false !== ($tag = $d->read())){
if(is_file('data/tags/cache/'.$tag)&&$tag!='readme.txt'&&filesize('data/tags/cache/'.$tag)>1){
$tags[$tag]=filesize('data/tags/cache/'.$tag);
}
}
arsort($tags,SORT_NUMERIC);
reset($tags);
$max=current($tags);
ksort($tags);
echo $_l['tagcloud_title'].'<div class="tagcloud"'.$_l['tagcloud_attr'].'>';
foreach($tags as $tag => $num){
echo ' <a href="'.generate_link('t='.$tag).'" style="font-size:'.(($num/$max)*100).'%; white-space:nowrap;">'.$tag.'</a>';
}
echo '</div>';
$d->close();
return true;
}
$bjblocks['ext_bjblocks_tagcloud']='Облако тегов';




