Проблема:
На сайте работают блоги. В определенном месте на морде выводится список n последних записей в блогах с тизерами. Размер тизера может быть черезмерно большим вклюать в себя картинки максимально допустимого размера в том числе и множество картинок. Использование штатного ограничения на размер тизера не помогает т.к. лего обходиться использованием --break-- и не убирает картинок из тизера. Это рушит дизайн первой страницы. На странице mysite.ru/blog тизеры могут быть любого размера.
Задачи:
1. Вырезать картинки из тизера.
2. Ограничеть его размер на 200 символами независимо от использования --break--.
Решения:
1. В шаблоне node-blog.tpl.php используем фильтр:
<?php print filter_xss($content); ?>
Вроде как работает.
2. Требуеться помощь зала.
Комментарии
Так в админке же вроде на тизер можно выставлять любой лимит (я выставил на 600 символов).
И —break— по идее можно просто выкинуть, если юзеры его юзают неразумно.
У меня лично режется очень грамотно - пока не было замечено никакой фигни, до бервого абзаца.
И потом уже есть статистика что стаью-блог посещают в десятки раз больше если в тизере есть картинка, на неё "клюют" охотнее.
А вот сделать чтобы большая картинка становилась в тизере маленькой - вот это было бы круто.
Можно конечно выкинуть -—break—- но считаю это неразумным т.к. считаю, что это необходимая фича для блогов.
Не знаю, но у меня ещё ниразу никто не юзал брейк, всё режется идеально.![Smile](https://drupal.ru/sites/all/modules/contrib/smiley/packs/kolobok/smile.gif)
Если как ты говоришь его кто-то юзает так что тизер становится большим - то можно выкинуть и довериться автоматике
у меня никто не использует т.к. сайт еще не запущен, я предполагаю возможные проблемы и решаю их до того как они появляются
Ну-ну...![Smile](https://drupal.ru/sites/all/modules/contrib/smiley/packs/kolobok/smile.gif)
![Smile](https://drupal.ru/sites/all/modules/contrib/smiley/packs/kolobok/smile.gif)
Проблем так много, что их можно решать всю жизнь...
А вообще на фоне того, что юзеры не могут войти в систему - это конечно всё копейки. :))))))))
Вобщем сделал я так. Создал новый модуль в который скопировал функцию node_teaser. Из нее вырезал все что относиться к -—break—- и переделал немного логику обрезания тизеров, чтобы резал по предложениям. Хотя я так и не понял как он работает до конца. При установленном лимите в 200 символов, есть тизеры по 280 символов.
Ну так правильно. Если он будет железно резать на 200 то будет обрезаться на полуслове. А нафига это надо?
Он режет с учётом твоего параметра на 200 и с учётом до следующего абзаца.
Это очень хорошо.
Поэтому я тебе и говорю чё грузиться с брейком, когда он нафиг не нужен - всё и так гуд.
логика у него такая что он в пределах диапазона ищет сначала тэг р потом br точки воскл знаки и т.д. если ничего нет, то режет тупо по размеру. но все это должно быть в пределах 200 знаков. откуда 288.
2AloneDemo
вы просто душка
280 - это тогда, когда абзац больше 200 знаков.
---
---
All content management systems suck, Drupal just happens to suck less. -- Boris Mann at DrupalCON Amsterdam, August 2005.
при откусывании по [break] режутся параграфы, блоки, и т.п. разметка. Часто из-за этого "едет" вся страница. Как избежать этой проблемы?