DrupalBook.org.ua
Готовые решения для сайта на Drupal.Автогенерация заголовка документа
Задача:
- Нужно отключить вывод заголовка или
- Нужно, чтобы заголовок заполнялся автоматически или
- Нужно отключить обязательное заполнение заголовка
Решение:
Для автоматической генерации заголовка можно использовать модуль Automatic Nodetitles. Модуль делает следующее:
- отключает обязательное заполнение заголовка,
- можно сделать так, чтоб поле заголовка вообще не выводился и заполнялось само,
- если поле осталось пустое - заполнилось само.
Если нужно, чтобы заголовок создавался автоматически и при этом был уникальным (имел какой-то буквенный индекс или номер, например, К-123), то для нумерации используется номер документа (ноды). Проблема в том, что в момент генерации заголовка ещё нет номера у текущего документа (ноды).
На drupal.org предложили брать индекс из базы и прибавлять один.
<?php
$name = db_prefix_tables('{node}_nid');
$id = db_result(db_query("SELECT id FROM {sequences} WHERE name = '%s'", $name)) + 1;
return $id;
?>Буквенный индекс
Чтобы добавить перед цифрами буквенный индекс - нужно его изменить таким образом:
<?php
$name = db_prefix_tables('{node}_nid');
$id = db_result(db_query("SELECT id FROM {sequences} WHERE name = '%s'", $name)) + 1;
return <strong>"AК-".</strong>$id;
?>Использованные материалы:
- Страница для печати
- 167 reads
Creative Commons: Attribution-Share Alike 2.5
Данные материалы выложены под лицензией Creative Commons: Attribution-Share Alike 2.5. Это значит, что вы можете распространять, копировать и модифицировать эти произведения при условии упоминания авторства оригинала, и при условии, что они также будут распространяться на условиях этой лицензии (то есть, изменённую работу нельзя защитить копирайтом). Подробнее смотри: http://ru.wikipedia.org/wiki/Creative_Commons