Блог пользователя - Химический Али

Absolute URLs: цепляемся за интернет

27 февраля 2009 в 16:24

Модуль Absolute URLs делает ссылки на вашем сайте абсолютными (например, http://test.ru/cat/node") вместо относительных ("/cat/node").

Что это дает?

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

Подумаем о юзабилити списков в формах

27 февраля 2009 в 16:13

Анонсирован очень интересный модуль, повышающий удобство работы со списками путем расширения Form API.

Модуль Select (or other) позволяет внедрять в формы, создаваемые с помощью Drupal, расширенный элемент управления типа «список», в котором есть обособленный пункт «другое». Пользователь может выбрать значение из предложенных или кликнуть «другое» и задать свое значение путем ввода в обычное текстовое поле.

Как избавиться от %D0%A0%D0%BE%D1%81%D1%81%D0%B8%D1%8F?

23 февраля 2009 в 11:33

Создаю дополнительные поля в профиле пользователя, используя стандартный модуль profile. Значения полей на русском языке. Хочу реализовать функционал "интересов", когда пользователь перечисляет свои интересы у себя в профиле и, кликнув по ссылке на "интерес", можно получить список пользователей, имеющих такой же. Все это реализуетсяи работает, но есть косяк: это url-ы, которые генерирует при этом друпал. Текст интереса он передает прямо в url, а т.к. тот на русском, то он перекодирует слово в абракадабру типа %D0%A0%D0%BE%D1%81%D1%81%D0%B8%D1%8F.

Вопросы

а) Как этого избежать?
б) Можно ли хотя бы транслитерировать это каким-то образом?
в) Как обрисовать проблему на drupal.org чтобы они к выходу 7 версии придумали решение?

Прогрессивные технологии, как способ выжать из сервера максимум

23 февраля 2009 в 0:00

Нашел на хабре интересный материал по вопросам оптимизации сервера. Т.к. часто возникают вопросы по поводу некоей "тормознутости" Друпала, не исключаю, что материал заинтересует любителей быстрого интернета.

Вступление

Забавно, но когда программист разрабатывает какой-либо продукт, он редко задумывается над вопросом могут ли на одну кнопку в один момент времени нажать одновременно 2000 человек. А зря. Оказывается могут. Как ни странно но большинство движков, написанных такими программистами, очень плохо ведут себя под большими нагрузками. Кто бы подумал, а всего один лишний INSERT, не проставленный index, или кривая рекурсивная функция могут поднять load averages чуть ли не на порядок.

В этой статье я опишу как мы, разработчики проекта, сумели выжать из одного сервера с Pentium 4 HT / 512Mb RAM, максимум, держа одновременно 700+ пользователей на форуме и 120,000 на трекере. Да, проект этот — торрент трекер. Предлагаю сразу оставить в стороне разговоры о копирайтах и правах, мне это не интересно, что действительно интересно — это HighLoad.

Читать дальше →

Предлагаю не принимать сайты без оригинального дизайна

22 января 2009 в 10:23

Обозревать одни и те же общедоступные темы утомительно.

Еще я не хотел бы, чтобы здесь появлялись линки на сплогоподобные помойки (агрегаторы) без оригинального\уникального контента, а также неоконченные сайты с вывесками "АНДЕРКОНСТРАКШН".

Продвинутое управление модулями

8 января 2009 в 20:47

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

Злободневное

6 января 2009 в 19:36

Ненавижу [пи], которые думают, что если они вместо мысли в каменте дадут ссылку на мысль в своем дневнике, то а) хоть кто-то пойдет в их [пи] дневник и б) их дневник приобретет популярность. Они пишут: "подробности в моей отдельной записи". И ссылку дают, вместо того, чтобы себе в [пи] ее засунуть.

Такая же гнилая психология у накрутчиков, пубертатных сеошников и прочих погонщиков ссылок. Те же люди создают сайты с одной-единственной целью: чтобы на них кто-то зашел. Там нечего читать, там никогда не будет ничего интересного. В лучшем случае мы найдем унылые заметки тинейджера о том, как круто, что в прошлом месяце к нему на сайт пришли 100 человек. На[пи] они пришли не уточняется, ясно, что все просто ошиблись дверью.

Запомните, дети: на сайт ходят, только если он хоть чем-нибудь хоть кому-нибудь интересен. Это, [пи], так, [пи], очевидно. Но огромное количество людей, которые платят деньги [пи]сам-накрутчикам, опровергают гипотезу о том, что homo хоть немного sapiens.

Артемий Лебедев Tuesday, January 6th, 2009 (без купюр)

Nodeshare: обмен нодами между сайтами

4 декабря 2008 в 10:20

Модуль Nodeshare позволяет отправить ноды с одного drupal-сайта на другой. Он представляет ноду как JSON-объект и посылает ее на целевой сайт посредством POST-запроса.

Better Formats: швейцарский нож по части форматов ввода

4 декабря 2008 в 10:13

Альфа-версия модуля Better Formats добавляет экспириенса системе форматов ввода Drupal.

Возможности

  • Формат ввода по умолчанию в зависимости от роли.
  • Формат ввода по умолчанию в зависимости от типа материала.
  • Управление допустимыми форматами ввода в зависимости от типа материала.
  • Можно скрыть пояснения к формату ввода.
  • Можно скрыть форму выбора формата, установив какой-то по умолчанию.
  • Можно автоматически раскрывать форму выбора формата.
  • Отлючить сворачинвание\разворачивание формы выбора формата.
  • Задать ей свой заголовок.
  • Задавать формат по умолчанию для нод и комментариев раздельно.
  • Работает с текстовыми полями CCK.

Это хорошая замена таким модулям, как Filter Default, Default Filter, Filter by Node Type

Path Cache: кешируем псевдонимы

4 декабря 2008 в 10:04

Модуль кеширования псевдонимов позволяет снизить число запросов к БД.

Страница проекта: http://drupal.org/project/pathcache

Можете оценить эффективность в сравнении с бурно обсуждавшимися здесь решениями.

(Решено) node-forum.tpl.php применяется ко всем нодам о_О

29 ноября 2008 в 23:16

Создал помимо node.tpl.php шаблон для тем форума: node-forum.tpl.php
Произвел необходимую темизацию, смотрю, а ко всем нодам других типов применяется node-forum.tpl.php, хотя в диреткории темы лежит и node.tpl.php

Что я сделал не так? Ничего не понимаю. Файлы точно различаются - перепроверил пять раз.

Как создать pda-версию сайта на Drupal?

17 ноября 2008 в 15:11

Легко. Для этого нам понадобится создать на сайте поддомен, установить мобильную тему и все это правильно настроить.

Шаг 1. Скачайте тему mobile или .mobi, установите ее на сайт (можете настроить на свое усмотрение).

Шаг 2. В директории sites создайте поддиректорию c названием pda.domain.ru (вместо pda можно использовать mobile, m, phone, handy, kpk, ppc – на ваше усмотрение).

Шаг 3. Скопируйте файл settings.php из директории sites/default в sites/pda.domain.ru, откройте его и приведите строки в конце файла примерно к такому виду:

<?php
$conf 
= array(
   
'site_name' => 'MySite mobile',
   
'theme_default' => 'mobi',
   
'anonymous' => 'Anonymous',
 );
?>

Здесь «mobi» – это машинное название выбранной вами темы оформления. Сохраните изменения и загрузите обновленный файл на сайт.

Шаг 4. Создайте поддомен pda.domain.ru, ссылающийся на корневую директорию сайта (по сути – псевдоним domain.ru). Если у вас на хостинге установлена панель управления cPanel, процесс создания домена может выглядеть примерно так:

Создание поддомена PDA

А настройки DNS для вновь созданное домена примерно так:

Правильный редирект к новым комментариям (работа над ошибками Drupal)

6 ноября 2008 в 17:23

У Drupal есть многолетняя проблема, которую разработчики по каким-то причинам не хотят решать: в случае, если комментарии занимают несколько страниц, неправильно формируются ссылки к новым комментариям в трекере и при переход по такой ссылке открывается первая страница комментариев, хотя пользователь ожидает открытия новых. Здесь описывается применение патча, который разрешает эту проблему.

К сожалению, без правки модулей не обойтись, но вроде и не ядро Smile

Свершилось! Блок добавления контента

2 октября 2008 в 17:51

Все вы знаете, что юзабилити в Drupal по умолчанию страдает. Это касается, в частности, процедуры добавления контента. Опуская пространность форм для добавления материалов, заострим внимание на удобном доступе к формам добавления контента.

Разработчики спрятали все это в пункт меню «Navigation», которое само по себе имеет свойство теряться после размещения всех прочих меню и блоков. В итоге отыскать ссылку для добавления записи в блог, новости, фото или прочего содержимого бывает для неподготовленного посетителя трудно. Этим страдает как Друпал.ру (сейчас один тип содержимого, отчего-то упрятанный в подпункт), так и тысячи проектов по всему Интернету, хотя в век пресловутого вебдваноль контент первичен. В виде полумер разработчики показывают ссылки на добавление соответствующих материалов в форуме и личном блоге.

Многие уже пришли к решению, вынося ссылки на добавление в отдельный блок вручную или сниппетом. Так сделали, к примеру, www.livekuban.ru, www.nightslavyansk.ru и другие. Еще кто-то предлагал сниппет.

Теперь это можно делать простой установкой модуля. Называется он PostBlock. Пока только для 6.х. Выглядит как на картинке.

UPD. Камрад Atl указал на аналог для 5-рки: http://drupal.org/project/createcontentblock

Как перевести "Original Thumbnail" в модуле Image?

23 сентября 2008 в 10:23

Строки переведены через admin/build/translate, однако на страницах все еще показываются старые переводы. Сброс кеша не помогает.

Поиск показал, что проблема не нова, однако решения всё нет.

Как их перевести?

Разрешить пользователям удалять и изменять толкьо свои комментарии

18 сентября 2008 в 14:52

Разрешение "управлять комментариями" модуля comment дает возможность управлять ВСЕМИ комментариями, в .т.ч. — и чужими, что неверно. Других разрешений для реализации возможность управлять СВОИМИ комментариями не заметил.

Что делать?

Image: Плодятся копии изображений

18 сентября 2008 в 12:23

Модуль Image 5.x плодит в папке files копии загруженных в галерею изображений с именами вида

имяфайла.preview_0.jpg
имяфайла.preview_1.jpg
имяфайла.preview_2.jpg
имяфайла.preview_3.jpg
имяфайла.preview_4.jpg
и т.д.

Ощутимо забивает дисковое пространство. Кто встречался можт быть? Фиксить модуль?

Подписи к прикрепленным изображениям в Drupal 6

25 августа 2008 в 14:09

Если вы используете модуль Image Attach для прикрепления изображений к материалам, было бы полезным снабдить прикрепляемое изображение подписью, т.к. не каждый посетитель догадается навести на картинку мышь с тем, чтобы почитать подпись. Исправим это – добавим подпись к изображению. Тем самым улучшим жизнь пользователей, а кроме того, поможем сайту повысить картиночный seo-skill Smile

Помогите идентифицировать источник ошибки

21 августа 2008 в 8:54

Постоянно в области уведомлений высыпаются собщения вида

Quote:
Выбранный файл /tmp/fileOJ8kHO не удается закачать, поскольку каталог назначения sites/default/files/languages/ru_5d43efd035a9486ae8117aee99de3610.js неверно сконфигурирован.
Выбранный файл /tmp/fileorrZRH не удается закачать, поскольку каталог назначения sites/default/files/languages/ru_5d43efd035a9486ae8117aee99de3610.js неверно сконфигурирован.
или
Невозможно создать файл.
Невозможно создать файл.

При этом никаких операций, которые могли бы стать причиной, не производится. Видимо, что-то от кеширования или типа того. Файл ru_5d43efd035a9486ae8117aee99de3610.js лежит по указанному пути и содержит следующее:

Quote:
Drupal.locale = { 'pluralFormula': function($n) { return Number((((($n%10)==1)&&(($n%100)!=11))?(0):((((($n%10)>=2)&&(($n%10)<=4))&&((($n%100)<10)||(($n%100)>=20)))?(1):2))); }, 'strings': { "Unspecified error": "Не специфичная ошибка", "Select all rows in this table": "Отметить все колонки таблицы", "Deselect all rows in this table": "Снять отметку со всех колонок таблицы", "Your server has been successfully tested to support this feature.": "Ваш сервер был успешно протестирован и может использовать эту функцию", "Your system configuration does not currently support this feature.

Кусок как будто формируется в locale.inc