Решение auto_nodetitle warning

Аватар пользователя g78knl6cvxf0 g78knl6cvxf0 28 августа 2012 в 22:48

Модуль Automatic Nodetitles нужен для автогенерации заголовков нод (пожалуйста)

Но при его использовании раз от раза материал отказывается сохранятся, выдавая:

Warning: htmlspecialchars() [function.htmlspecialchars]: Invalid multibyte sequence in argument в функции check_plain()
...
PDOException: в функции drupal_write_record()

В issue проблема решается добавлением в модуль дополнительных функций экранирования и подмены.

Но мне это не помогло. Даже на основе текста без спецсимволов, заголовок иногда генерировался, иногда нет.

Решением стало замена substr на drupal_substr в функции auto_nodetitle_set_title

<?php
// Ensure the generated title isn't too long.
  
$node->title drupal_substr($node->title0255);  
?>

До кучи, в модуле Overlay для вывода названия редактируемой ноды зачем-то установлено:

#overlay-titlebar {
        white-space: nowrap;
}

благодаря чему название выводится в одну строку (а это 255 символов), и вся страница растягивается до неприличия, поэтому в теме админки стоит это перекрыть

#overlay-titlebar {
        white-space: normal;
}

пост на друпал.орг

update:

  • mb_substr заменен на drupal_substr
  • добавлен патч

спасибо InternetDevels.com!

ВложениеРазмер
Файл multibyte_substr.patch604 байта
0 Thanks

Комментарии