Суббота, 05 Апрель 2014 00:00

Joomla. Решение проблемы неработающих ссылок в K2

Автор
Оцените материал
(0 голосов)

Очередной раз столкнулся с проблемой неработающих ссылок на главной странице. По задумке там должен выводится список статей из нескольких категорий. Выводится все замечательно, кроме одного - ни одна из ссылок на странице не работает!

Анализ странички при помощи инструментов Chrome и Firefox показал, что над основным содержимым находится что-то очень большое и прозрачное из footer и насмерть "прикрывает" доступ к ссылкам. То есть, ссылки есть, но не работают по причине "непробиваемости" верхнего слоя! Понять отчего это происходит довольно сложно. К тому же именно на этой странице последовательность блоков несколько странная.

Смысл описывать все догадки и эксперименты нет. Пробовал конфигурировать все: от меню до самого компонента К2 (остальные компоненты на удивление работают преотлично). Оказалось, что проблема была сокрыта в тексте одной из статей. Вернее не в самом тексте, а в способе его форматирования. Суть такова: в Joomla есть основная часть статьи и вводная. Эти части разделяются специальной вставкой "Подробнее":

 <hr id="system-readmore" />

При выводе в виде списка Joomla отрезает основную и показывает только вводную часть. Все замечательно, кроме одного: как и любое обрезание это действие производится без анализа что там было до и что именно ценного при этом лишаемся. Собственно, если статья набирается в редакторе полностью вручную, то ничего страшного не происходит. Другое дело, когда в редактор вставляется уже отформатированный текст, а потом добавляется тег "Подробнее". Сейчас очень модно форматировать текст при помощи тегов <div>, наверное, это и правильно, web2.0 и все такое. Давайте посмотрим, что произойдет в случае форматирования при помощи <div> . С большой вероятностью мы можем получить следующую конструкцию:

<div>

<div>Вступление</div>

<hr id="system-readmore" />

<div>Остальная часть статьи</div>

</div>

Тупое обрезание приведет к получению тега <div> , который не будет закрыт. В результате, вся последующая структура документа в выводе Joomla на экран будет безнадежно испорчена! Можно получить множество удивительных эффектов весьма неприятного свойства. Например, я получил неработающие ссылки и странноватый вид главной страницы. При этом, виноватой оказалась статья из середины списка. Ее влияние распространилось на весь контекст.

В общем, будьте внимательны при оформлении статей при помощи мощного средства "копи-паст". Будьте внимательны. Есть, даже, горячие головы, которые предлагают раз и навсегда отказаться от столь замечательного средства, но не у всех есть достаточно силы воли для этого.

PS. К стати, теперь-то мне стала понятно истинное назначение некоторых настроек компонента K2. Если войти: Система->Общие настройки->Параметры K2, то в закладке "Контент" можно найти раздел "Очистка содержимого" "Очистка вводного текста от HTML тегов" Да/Нет и настроить удаляемые теги. Вот так-то! Надо будет поэкспериментировать на досуге. Главное, опять же, не удалить что-нибудь важное из вводной части.

Прочитано 2408 раз Последнее изменение Суббота, 05 Апрель 2014 07:58
Другие материалы в этой категории: « Сайт о еде Чревоугодник снова в строю
Авторизуйтесь, чтобы получить возможность оставлять комментарии