При создании сайтов на cms Джумла! различных версий, их отладке и техническом обслуживании всегда возникают различные мелкие вопросы, ответы на которые (или решения) запомнить проблематично. В этом разделе обозначим некоторые подобные проблемы. Иногда даже поиск по Google не всегда выдает нужные ответы, поиск отнимает время и нервы (которые не восстанавливаются). На Форуме есть аналогичная ветка заметок, можно просмотреть что-то еще и там (например вопросы копирайтов).
Практически любой сайт cms Joomla использует скрипт компонента: JComments (комментарии к материалам).
Забавно, что за крайне продолжительную жизненную активность компонента «внешность» базового шаблона практически не изменилась за 10 лет. Все те же иконки в формате *.gif, странное форматирование основных страниц шаблона, пр. негативные мелочи. А сам скрипт — по-прежнему адекватен, хорош, востребован. Нестыковочка.
Краткий экскурс в поисках современного шаблона для JComments не дал позитивного результата. Есть кое-что (бесплатное), но мало отличное от шаблона defolt. В платных версиях — тоже ничего не понравилось. От слова совсем.
Пришлось потратить немного времени и «перепилить» старый скин JComments на новый лад. Результаты представлены ниже.
Каждое обновление Джумла! v.3.x — это некий стресс для вебмастера. Чаще всего — ерундовый, иногда — заметный, редко — фатальный (для сайта). Обновление «сносит» правки и «хаки», добавляет ранее удаленное ненужное содержимое и пр. Иногда обновления «выводят из строя» ранее работоспособные скрипты… А обновления cms Joomla в последнее время производятся ежемесячно.
Для «себя любимого» составил списочек, что стоит исправить «опять и снова» и не забыть выполнить после очередного апгрейда.
Ряд форм и формочек обратной связи не работает на базовых установках Джумла! 3.х. По разным причинам. И решения предлагаются разные, все вебмастера «шаманят» по разному и с переменным успехом. Способ, что работает практически всегда:
Иногда никак не удается зайти в админпанель сайта. Если с третей попытки не вышло, то гадать «почему?» уже бесполезно, быстрее и проще просто сменить пароль.
Способов несколько, предпочитаю через запрос в phpMyAdmin. Для этого требуется, естественно, доступ в phpMyAdmin через хостинг-панель. Существующую учетную запись (в которую не удается попасть) трогать не будем, создадим нового Суперадминистратора.
Любой автор текстов для сайта сталкивается с проблемами копирования. Тырят контент, часто и много. Иногда рерайтят «для приличия», иногда нет. В принципе, имеет смысл смириться с этим, поскольку на 100% защитить свои «шедевры» не получится (пока что). Всегда есть способы «содрать» чужой контент при любом способе защиты, вопрос лишь в удобстве процесса и его целесообразности. Ну и т. д. Вопросы авторского права, копирайты, пр., вопросы для фанатов.
Для очистки совести вполне достаточно «повесить» на сайт всплывающее окошко с предупреждением, которое появляется при копировании выделенного фрагмента правой кнопкой мыши. Некое предупреждение копипастеру о возможных последствиях. Окно не защитит от копирования, но, возможно, заставит усомниться в нужности «грабежа». Да и раздражает оно, лишний клик на закрытие.
Простой код вписывается в body, в index шаблона (чаще всего). Пример:
Перевод сайта для работы по протоколу https можно реализовать многими путями. Мои личные предпочтения: подключение к сервису cloudflare.com по многим и разным причинам.
Сам процесс «подключения» пропустим. Суть данного материала — не забыть манипуляции, которые нужно произвести с сайтом на cms Joomla! 3.x после обновления DNS у регистратора и настройки cloudflare.com
Все вебмастера пытаются сохранить свои проекты в «чистом» состоянии, оберегая их от взломов, вирусов, троянов, «подсаженного» в квикстарт вредоносного или рекламного кода и прочей «бяки». Не всегда получается.
Для cms Joomla (как и для любой иной cms) есть достаточно много стороннего скрипта для выявления подобных проблем. Да и хостеры пытаются вносить свою посильную лепту в «профилактику заболеваний».
Простой плагин для Joomla 2.5–3.x, с помощью которого можно выполнить простые манипуляции с контентом: плагин организации группирования контента во вкладки, стайлеры и спойлеры для Joomla.
Данный плагин работает не только с компонентом Content в полном материале. Может работать в любом компоненте, который поддерживает контентные плагины, например, в JoomShopping. Основной позитив: простота использования, понимание html и css, «три в одном».
На одном из сайтов после обновления Joomla! 3.х до Joomla! 3.7 в админ-панели из меню «Компоненты» пропали почти все пункты. В меню остались несколько ссылок, но большая часть «исчезла».
Причина проблемы: в таблице БД <префикс>_menu у проблемных (не отображающихся) пунктов поле menutype имеет значение «menu» вместо «main».
Решение проблемы: Выполняем запрос SQL (в phpMyAdmin):
У каждого заказчика свои требования к отображению модуля Модуль SJ Products for JoomShopping. Чаще всего достаточно дефолтных, но не всегда. Например, для товара загружается несколько картинок товара. Какая быдет выводится в модуле? Последняя. А нужно, чтобы выводилась первая, которая обозначена как «Основное изображение».
На сайте под управленим cms Joomla есть разные формы регистрации новых пользователей, реализованные через разные компоненты. Если основное назначение сайта — интернет магазин (на JoomShopping), то имеет смысл отправлять посетителей регистрироваться именно через форму компонента e-торговли.
Иногда возникают разные проблемы. Одна из них: в форме отсутствует ReCapcha google. Решается «проблема» просто: Установкой плагина — Registration captcha (от MAXXmarketing GmbH, по ссылке можно скачать последнюю версию на сайте разработчика).
Суть «проблемы» в заголовке. Как этот казус случился — не вспомнить. Была установлена на проекте очень старая версия компонента JoomShopping, в процессе апгрейда до актуальной версии (на момент работы Version 4.18.2) — «что-то пошло не так» и меню/субменю «пропало». В базе данных сайта пункта нет.
Решений может быть несколько. Дабы «не париться» выбрано простейшее: инсталляция пунктов меню через отредактированный установочный файл jshopping.xml
Достаточно часто приходится работать с компонентом Joomshopping — скрипт интернет-магазина для cms Joomla.
Забавно, что в функционале последней версии скрипта (v. 4.18.3 на момент написания материала) «по умолчанию» нет:Кнопки плюс и минус возле поля количества товара в Карточке товара и в Корзине.
Странно, но факт.
Есть плагины и скрипты, платные и не очень, для реализации этой «примочки». Но мы не ищем легких путей и пропишем кнопки непосредственно в код шаблонов магазина Joomshopping. Меньше проблем и конфликтов, меньше лишнего кода.
При наладке компонента JoomShopping возникла необходимость увеличить длину поля extra_field (Характеристики).
Несмотря на очевидность решения, оно «обнаружилось» не сразу (по причине невежества). Иногда на «открытие» очевидного тратится время. Чтобы более не искать:
Открываем в php MyAdmin таблицу: префикс_jshopping_products
. Находим нужное поле: extra_field_номер
.
Правим Тип поля. Для Характеристик установлено по-умолчанию varchar(100)
. Я увеличил до максимально возможного varchar(255)
, мне хватило. В принципе, можно попробовать изменить на тип TEXT
, но не пробовал.
Достаточно часто проекты сайтов на базе cms Joomla устанавливаются с «Быстрого старта» (QuickStart). У этого метода есть свои «плюсы»: устанавливается демоконтент с образцами форматирования страниц конкретного шаблона, обозначены позиции модульной верстки, более-менее настроен шаблон и пр.
Есть и «минусы». Например — в виде «прошитых» ссылок разнообразного вареза, что не так и страшно (находим и уничтожаем). Достаточно регулярно в демоконтенте присутствуют «скрытые императивы» и их «опознать» не всегда очевидно, просто и быстро.
Пришлось столкнуться с Helix Framework в админпнели нескольких сайтов Joomla v.3.9x. Достаточно дружелюбные шаблоны, хоть и устаревшие немного.
При работе в админпанели шаблона проявились неприятные «глюки». Неизвестно по какой причине они появились, а вот как исправлять их непонятно. Отметим решение, может пригодится.
Проблема первая: Не работают кнопки «сохранить», «сохранить и закрыть», «закрыть» в шаблоне под управлением Helix Framework.
Решение простое, но не очевидное. Находим файл по адресу:
/plugins/system/helix/js/admin/layout.admin.js
На строке 143 меняем значение «false» на «true». Кнопки снова функционируют (понятно, что нужно очистить кэш и обновить страницу).