Автогенерация заголовка документа

Авторы решений:
Версия 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;
?>

Использованные материалы:

Автогенерация заголовка

Creative Commons: ­Attribution-Share Alike 2.5

Данные материалы выложены под лицензией Creative Commons: ­Attribution-Share Alike 2.5. Это значит, что вы можете распространять, копировать и модифицировать эти произведения при условии упоминания авторства оригинала, и при условии, что они также будут распространяться на условиях этой лицензии (то есть, изменённую работу нельзя защитить копирайтом). Подробнее смотри: http://ru.wikipedia.org/wiki/Creative_Commons