DRUPAL-6

Сервис коротких адресов на Drupal

Для упрощения работы с drupal.org есть полезный сервис dgo.to

Позволяет делать короткими ссылки на модули, пользователей, замечания (issue) и переходить у функциям API.

Оптимизация в модуле path и сравнение путей

Модуль path использует hook_nodeapi с операцией load, соответственно, если модуль включен, то при загрузке каждого материала происходит дополнительный запрос алиаса, что является совершенно бесполезным действием.

Исключением является страница редактирования материала, где эта операция необходима, чтобы построить форму правки. Чтобы отключить сие придется хакать ядро - добавить провеку на тип страницы на которой находится пользователь, чтобы выполнять подгрузку алиса только для страниц формата node/*/edit

Варианты решения:

<?php
     
case 'load':
        if (
arg(0) == node && arg(2) == 'edit') {
         
$path = 'node/'. $node->nid;
         
$alias = drupal_get_path_alias($path, $language);
          if (
$path != $alias) {
           
$node->path = $alias;
          }
        }
        break;
?>

Если используется языковой префикс пути

<?php
     
case 'load':
        if (
drupal_match_path($_GET['q'], 'node/*/edit')) {
         
$path = 'node/'. $node->nid;
         
$alias = drupal_get_path_alias($path, $language);
          if (
$path != $alias) {
           
$node->path = $alias;
          }
        }
        break;
?>

Выпущен imagecache_profiles 6.x-1.1

Наконец нашел время и силы выпустить новую версию 6.x-1.1 imagecache_profiles, кто не знает - модуль позволяет выводить аватары через пресеты imagecache. После продолжительного пребывания в стадии тестирования решил обойтись без релиз-кандидатов и бэта-версий. Хотя последние 2 изменения не были хорошо протестированы сообществом, но на мой взгляд логичны.

Приятные нововведения уже были давно, но в dev версии.
1) Серьезно оптимизировано количество запросов к базе данных
2) Добавлена поддержка views 2
3) Испралены мелкие баги

Отсылка e-mail сообщения при запуске планировщика

Не прошел патч в 6ку для привязки отправки почты при запуске крона, так что для выполнения данного действия нужно в своем модуле добавить следущий код:

<?php

function MODULENAME_action_info_alter(&$actions) {
 
$actions['system_send_email_action']['hooks']['cron'] = array('run');
}
?>

Решение проблемы с подменой изображения на выход из сеанса

Давно забытая проблема с подменой источника изображения на ссылку выхода из системы, регулярно о ней забываю, вот и решил законспектировать.