Сегодня захотел добавить фотографии с отпуска в блог, однако сразу стало понятно, что большинству подписчиков они попросту неинтересны. Поэтому появилась идея создать подблог в данном блоге, куда и писать все записи личного характера. Увы стандартный движок Wordpress не умеет делать подблоги, поэтому пришлось дописывать функционал самому:
Требования:
- записи из личного не должны попадать на главную страницу
- под записи из личного должна быть отдельная категория (подблог)
- в новом подблоге должна быть своя RSS лента
- в основной RSS ленте не должно быть записей из личного подблога
Решение:
- Создаем рубрику, в моем случае рубрика личное с urlname private
- Узнаем ID новой категории, его можно подсматреть напрямую в БД или в админке при редактировании категории ссылка будет содержать данное число
- Редактируем файл functions.php темы, которую вы используете. Добавляем следующие строчки:
function filter_subblog_entries($query)
{
if (!$query->is_admin &&
(!isset($query->query_vars->category_name) || $query->query_vars->category_name != 'private')
) //exclude private from main and not admin
{
$query->set('cat','-44');
}return $query;
}
add_filter('pre_get_posts','filter_subblog_entries');
Вместо 44 подставляем число, полученное из третьего пункта, вместо private подставляем urlname нашей категории
Готово. Теперь главная страница и RSS лента не содержит сообщений из личного подблога, а в категории личного подблога и RSS содержатся только нужные нам посты.
P.S.
Если вы используете widgets и там есть ссылки на RSS, то необходимо при просмотре подблога показывать другой вариант widget’a (с другой ссылкой на RSS) для этого идеально подходит плагин Widget Logic, который показывает виджеты в зависимости от логического условия.
RSS
Twitter






Настройка redmine и svn на Debian 5.0
Пост скорее для себя, чтобы сохранить ссылки на ресурсы, по которым можно все востановить и настроить заново. Писать пост о том, как все это чудо настраивается нет ни сил, ни желания. Да и вознимают сомнения, что это возможно. Но вкрадце опишу откуда брал, с чем столкнулся.
Основной и самый работающий вариант описан в pdf документе: Redmine Installation on Debian
Единственное, что не заработало – автоматом ставится passenger-2.2.10, а в описании используется passenger-2.2.1, поэтому вместо gem install passenger нужно писать gem install passenger -v=2.2.1
Далее было еще несколько различных багов, а также с добавление функционала SVN помогли следующие доки:
http://www.redmine.org/wiki/1/Repositories_access_control_with_apache_mod_dav_svn_and_mod_perl (тут как привязать к redmine)
http://www.debuntu.org/2006/05/20/54-how-to-subversion-svn-with-apache2-and-dav (описание как поднять svn)
http://www.redmine.org/boards/2/topics/6387 (столкнулся с похожей проблемой при привязке)
http://www.redmine.org/wiki/redmine/HowTo_to_handle_SVN_repositories_creation_and_access_control_with_Redmine (тут описано как автоматически создавать репозитории при создании проекта)
В общем все, от себя добавлю, что после полноценной привязки чтобы репозиторий был недоступен без авторизации необходимо снять галку «общедоступно» в настройках проекта, а чтобы получить доступ к репозиторию под своей учеткой redmine необходимо добавить себя к проекту даже если вы администратор.