Как увеличить количество значений поля "вес"? От -15 до +15 уже маловато. Надо хотя бы -200 +200. У меня очень много материалов.
Как увеличить количество значений поля "вес"? От -15 до +15 уже маловато. Надо хотя бы -200 +200. У меня очень много материалов.
Я уже всё сделал - внёс правки в \modules\book\book.admin.inc
Теперь я назначаю вес вручную. Даже удобнее стало
Всех благодарю за советы и помощь!
Комментарии
Вам нужно подумать о другом способе вывода материалов. Опишите задачу и вам подскажут как сделать правильно.
Можно конечно выходить из положения перемещая материалы вручную в настройках книги, но я хотел бы сразу при создании назначать им вес.
Вы меня не поняли. Расскажите подробнее о структуре вашего сайта
draggableviews + своё поле для сортировки, например.
У меня книга и в ней страницы. Так что всё проще некуда.
1. Нужно установить, какие значения веса может принять БД. Например растащив часть материалов вручную и проверив, что при этом записалось.
2. Если большие значения допустимы, то в hook_form_alter можно добавить нужное количество опций.
Это где такой параметр?
В коде))
Имхо, Entityreference можно вполне использовать. В том числе - выводить блок с вьюсом.
То есть в очередной "Главе" давать ссылку на главную Книгу.
А в Книге вывести блок "Содержание" - там вьюс с Главами, которые ссылаются на эту Книгу.
Сортировка - по времени пополнения. То есть добавляется новая Глава - она появляется внизу Содержания.
Это намного проще, чем Вес и перетягивание.
И я жалею, что когда я делала очередной проект - библиотечку, я еще не знала о такой возможности всемогущего Друпала. Да и тогда бы у меня не хватило квалификации. И делала вручную. Теперь уже поздно переделывать большууууую кучу материалов. (Хотя... надо ещё подумать... Может быть, я ещё созрею на этот подвиг).
Но Вам рекомендую пойти именно этим путём.
Я сторонник использования минимума модулей, тем более Views, Ctools и им подобные.
Views и Entityreference позволяют сделать намного больше, чем Вес. В смысле - выполнить намного больше разных функций.
Во многих случаях - заменить ВАШУ ручную работу.
Друпал без Вьюс - не намного круче, чем Вордпресс.
Drupal - без views - это сайт визитка из трех страниц или простой блог.
По ходу, кроме меня и автора, никто ни разу не использовал book, потому и советуют всякую дичь))
WordPress не CMS, а говнокод и сравнивать лучше не с ним. Есть другие нормальны CMS.
Уже 3-й полноценный сайт без Views. Что вы на это скажете?
Короче, я так понял нужно копаться в ядре Drupal.
Вот https://www.drupal.org/node/35984 что-то нашёл.
https://www.drupal.org/project/weight - последние версии модуля смотрите. За несколько лет чуть подправили. Хотя если вы "сторонник" даже не знаю...
Что-то непонятно как он работает. Вес есть, но этот параметр ни на что не влияет. А в книге вес по прежнему только от -15 до +15.
Вот что нашёл в \modules\book\book.admin.inc
<?phpfunction _book_admin_table_tree($tree, &$form) {
// The delta must be big enough to give each node a distinct value.
$count = count($tree);
$delta = ($count < 30) ? 15 : intval($count / 2) + 1;
?>
Кто он? Модуль weight? В ридми все есть честно.
Просто не понял что вы пользуетесь модулем book. Этот модуль действительно "не модный". Подумайте оно вам надо с непопулярными решениями работать. Раньше это называлось не "книги" а "подшивки". Вот и не сообразил.
Я использовала book. Но в какой-то момент он заглючил.
Когда я стала спрашивать помощи тут, на Д.ру, мне посоветовали Entityreference.
Попробовала. Понравилось. Но возможностей на Entityreference намного больше, чем на book.
Для задачи автора энтитиреференс не нужен.
Поясняю пошагово:
1. Создаёте свой модуль.
2. Делаете в нём hook_form_alter.
3. В хуке проверяете айдишник формы, чтобы это была форма добавления или редактирования страницы книги.
4. Находите элемент формы, отвечающий за вес и меняете в нём массив #options на тот, который вас устроит.
5. Профит.
Делов на 5 минут и столько же строчек кода.
Я уже всё сделал - внёс правки в \modules\book\book.admin.inc
Теперь я назначаю вес вручную. Даже удобнее стало
Всех благодарю за советы и помощь!
Поставьте закладку на мой коммент. Как придёт время обновлять ядро, вспомните))))
Харашо начальникх!