Joomla 4. Компонент K2 и форк K2ForJ4 (18 янв 2024)

Если вас, как и меня, достало выслушивать (вычитывать) бесконечные обещания разработчика K2 опубликовать версию компонента K2 под Joomla 4 (без чего невозможно реализовать апгрейд from Joomla 3 to Joomla 4) - воспользуйтесь форком K2ForJ4. Который в данный момент установлен и без каких-либо проблем работает на этом веб-сайте.

Косяк Joomla! 1.6 с многомодульными меню

  • Euroset
  • Автор темы
  • Не в сети
  • Новый участник
  • Новый участник
  • Строить не умею, ломаю бесплатно
Больше
12 года 6 мес. назад #1 от Euroset
День добрый. Поделюсь впечатлениями о меню в джумле 1.6 от 4-го уровня.

Итак, если большое меню N-ой вложенности - это прописано в админке. Предположим, там 6 уровней. И есть несколько модулей, на которые разделены эти все уровни. По сути слева я отображаю основную часть дерева меню, а справа должен предоставлять более высокие уровни согласно активному меню в модуле слева. Распишу по уровням.
1) Корень - на него ссылается по типу "Псевдоним пункта меню" элемент из главного меню. Корень в модулях не отображается
2) Первый уровень левого аккордеона
3) Второй уровень левого аккордеона. Начиная с него появляется правый аккордеон
4) Первый уровень правого аккордеона.
5) Второй уровень правого аккордеона.
6) и т.д.

А теперь представьте: при нажатии на пункт 3 (второй уровень левого модуля) в правом меню вы ждете все подменю 4 уровня, относящиеся к выбранному нам 3му уровню??? А вот и нет! Джумла выдаст все элементы 4 уровня независимо от родителя.

Как решение не помогло: настроить правые меню отдельными меню - не прокатило. Причина: начинает сбиваться содержимое, а также активное меню.
Какое решение не пробовал: включить в правый аккордеон последний уровень левого аккордеона. Принцыпиально не стал так делать, т.к. тогда основная задумка (Wiki) становится неудобной для юзера.

Какое решение помогло: взял helper.php от модуля mod_menu и прописал там пару функций и изменил функцию getList. Суть в следующем: если начальный уровень меню 4, а конечный 9 (беру четко 9 - договорился сам с собой, что это специальный такой флаг), то каждый элемент списка дополнительно тестить в сравнении с активным элементом меню. А именно: родитель 3го уровня элемента должен равняться родителю 3го уровня от активного пункта. В противном случае UnSet(выкидываю пункт из результата). Работает безупречно - кому надо могу выслать helper.php свой (а по-хорошему надо было сделать mod_menu1 и аккордеоны на него вешать, но мне и так сойдет). Если непонятно что я имел ввиду - на моем сайте раздел Wiki - это все одно меню 5+ уровней, раскиданных по модулям меню левому и правому. Надеюсь, кому-то будет полезно, т.к. я в инете по этой теме ничего не нашел, а на фикс этой штуки потратил день.

Редактор карт Starcraft II - проекты, обсуждение.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Dev banner 1
Больше
12 года 6 мес. назад - 12 года 6 мес. назад #2 от serge
Очень интересно, но есть одно "но".
Поддержка Joomla 1.6 на сегодняшний день уже закончена . Было бы еще интересней узнать - имеет ли меcто аналогичный косяк в Joomla 1.7? или уже поправили?

Сами то будете обновляться? и как поведет себя все описанное после апгрейда...

А я смогу! - А поглядим! - А я упрямый!
Последнее редактирование: 12 года 6 мес. назад пользователем serge.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
12 года 6 мес. назад #3 от vyatka
Да мне тоже интересно, собрался делать проект на Joomla 1.7 там предполагается, трехуровневое меню...

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Euroset
  • Автор темы
  • Не в сети
  • Новый участник
  • Новый участник
  • Строить не умею, ломаю бесплатно
Больше
12 года 6 мес. назад #4 от Euroset
да обычное меню себя нормально должно вести. У меня-то фишка в другом - модуль меню не содержащий активный пункт меню в себе. Такое редко кому надо, но вот если надо, то 1.6 к этому оказалась не готова.

Всем советую 1.7, т.к. 1.5 - старье с кучей неудобств, 1.6 - плохая поддержка, да и она по сути являлась крупным фиксом 1.5 в части администрирования ИМХО.

Касаемо перехода на 1.7, то я не планирую. Причина в следующем: у меня уже пол движка самописки + кунена тоже самописка частично (да почти все модули, компоненты). По сути я сторонних собственных продуктов, но из-за незнания на тот момент PHP, пришлось выбирать движок. На тот момент 1.6.4 была последней стабильной джумлой, вот так и вышло.

Редактор карт Starcraft II - проекты, обсуждение.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
12 года 6 мес. назад - 12 года 6 мес. назад #5 от Aleksej

Euroset пишет: ...у меня уже пол движка самописки + кунена тоже самописка частично (да почти все модули, компоненты). По сути я сторонних собственных продуктов...

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

Итак, касательно "собственных самописных" продуктов.

Каким бы крутым программером - или даже программистом; знающие понимают разницу :) - вы ни были, ваш продукт заведомо не получит хоть сколько-нибудь приемлемого периода бета-тестирования, даже если вы выложили его в public для всех желающих.

Попросту - аудитория охвата не та, совершенно мизерная... я уж не говорю - рядом с joomla, которая есть cms №1 в мире; но даже по сравнению с куда менее популярными брендами.

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

Обоснование вышесказанному вы легко найдете в Сети, посмотрев, скажем, историю выявления уязвимостей ряда значимых расширений Joomla; да и самой этой cms. Выходит новый релиз, скажем, akeeba backup либо alpha registration ; тщательно, по-видимому, выверенный командой девелоперов... проходит какое-то время, и некий профи по безопасности, не имеющий никакого отношения к team developers, вежливо обращает их внимание на некие грабли типа возможности SQL-injection или иной.

Обратите внимание - названные мной расширения появились далеко не вчера, имеют свою историю и созданы, скажем так, не вчера с чистого листа. Тем не менее - вот вам навскидку два знаковых extensions, с совсем недавно выявленными проблемами безопасности в очередных свежих релизах...

Вопрос - как вы оцениваете вероятность несложного обнаружения аналогичных проблем в самописных продуктах? С учетом того обстоятельства, что альфа-тестирование такого продукта, скажем так, "имеет место быть постольку-поскольку", а про бета-тестирование здесь говорить не приходится вообще?

Ценность продукта, будь то Joomla... или Linux... или некое расширение для вашей cms... определяется, на мой взгляд, сугубо непрестанной работой разрабов над своим изделием, вашей возможностью в любой момент без проблем загрузить обновленную версию с сайта проекта и обновиться до последнего релиза. А также - аудиторией пользователей (они же тестеры). Вам не кажется, что именно этих свойств, составляющих изюминку GNU GPL, вы лишаетесь, используя самописные продукты?
Последнее редактирование: 12 года 6 мес. назад пользователем Aleksej.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Euroset
  • Автор темы
  • Не в сети
  • Новый участник
  • Новый участник
  • Строить не умею, ломаю бесплатно
Больше
12 года 6 мес. назад #6 от Euroset
я полностью согласен - я лишаюсь около 25% поддержки со стороны разработчиков тех или иных расширений. В связи со стандартизацией MVC всё же становится чуть легче.

Такие вещи, которые касаются безопасности, я стараюсь вообще не трогать. Насколько я знаю, взлома ядра Joomla! 1.6.4. еще не было (если не прав, попрошу ссылки на методику для закрытия дыр вручную). Что касается хакерских атак, то по моим данным они происходят как раз через сторонние расширения типа галерей, файл-менеджеров, редакторов. Поэтому я взял на свой сайт только самое необходимое и на мой взгляд проверенное, а также настроил максимально безопасно для обычных юзеров. Akeeba Backup и прочие админки - не трогаю принципиально, т.к. вот их функционал меня полностью устраивает и я брал их исключительно за то, что мне не придется лезть в код и есть определенная поддержка со стороны разработчиков.

В любом случае я не исключаю взлом, поэтому время от времени собираю бэкапы на локальный комп. Естественно, я понимаю минусы ковыряния в коде, но волков бояться = в лес не ходить :laugh:

p.s. что касается данной темы про меню - по-хорошему я должен был создать дубль-модуль с инсталлером типа mod_menu2 и поместить его как дополнение к основному ядру. Но это если я планирую обновлять CMS.
p.p.s. не уверен, что хакерам окупится взлом моего сайта с 50ю юзерами, который представляет интерес только для узкого круга людей, не мешающих жизни остальных.

Редактор карт Starcraft II - проекты, обсуждение.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Работает на Kunena форум