Новости Joomla

Человек на GitHub ускорил Joomla в 600 раз на объёме 150к+ материалов в 1700+ категориях

Человек на GitHub ускорил Joomla в 600 раз на объёме 150к+ материалов в 1700+ категориях

👩‍💻 Человек на GitHub ускорил Joomla в 600 раз на объёме 150к+ материалов в 1700+ категориях. На старте его сайт на Joomla 3 вообще не смог обновиться на Joomla 5. Пришлось делать экспорт/импорт материалов. Проделав всё это он запустил-таки этот объём данных на Joomla 5. Тестовый скрипт грузил 200 материалов из этого объёма всего за 94 секунды ))) А главная страница с категориями грузилась 20 секунд. Добавив индекс для таблицы #__content

CREATE INDEX idx_catid_state ON #__content (catid, state);
он сократил время загрузки категорий до 1 секунды. Затем наш герой решил поковырять SQL-запрос в ArticleModel, который отвечает за выборку материалов. И решил заменить тип JOIN на STRAIGHT_JOIN для категорий.
// ->from($db->quoteName('#__content', 'a'))->from(    $db->quoteName('#__content', 'a')    . ' STRAIGHT_JOIN ' . $db->quoteName('#__categories', 'c')    . ' ON ' . $db->quoteName('c.id') . ' = ' . $db->quoteName('a.catid'))// ->join('LEFT', $db->quoteName('#__categories', 'c'), $db->quoteName('c.id') . ' = ' . $db->quoteName('a.catid'))
Что сократило загрузку 200 материалов из 150к с 94 секунд до 5. К слову сказать, боевой сайт на Joomla 3 крутится на 12CPU 64GB рамы. А все манипуляции с кодом он делает на базовом 1CPU 1GB сервере и замеры скорости даны именно для базового сервера. Но это всё в дискуссии, хотя в идеале должно вылиться в Pull Requests. Мы - Open Source сообщество, где никто никому ничего не должен. Джунгли. Но человек ищет пути оптимизации Joomla и предлагает решения. Если оказать поддержку и предложить помощь хотя бы с тестированием самых разнообразных сценариев, то возможно эти улучшения смогут войти в ядро. Пусть не быстро, пусть через несколько лет, пусть не все, но войдут. Достаточно предложить руку помощи и приложить немного усилий.
Дискуссию на GitHub можно почитать здесь.@joomlafeed#joomla #community #php

Перевод и публикация интервью с Joomla евангелистом на греческом портале Joomla

Перевод и публикация интервью на греческом портале Joomla 🇬🇷

Утро, просматриваешь входящие письма и изучаешь новости и внезапно обнаруживаешь, что инициатива, которую ты начал, подхватывается другими людьми. 🎉

Недавно я взял интервью у Билла (Василиса) Коциаса - руководителя студии, читающего лекции в университете и популяризатора Joomla в Греции. Это интервью из журнала NorrNext, в оригинале на английском, теперь доступно на греческом языке и опубликовано на портале joomla.gr. 🎉

До чего же приятно… 😇😊 Работа замечена и с ней посчитали необходимым ознакомить аудиторию страны, в которой Билл читает лекции. И это солнечная Греция - страна, страна, с которой Россию многое связывает. 🇬🇷🇷🇺🕊

Смотрю на греческий алфавит и тут же рисуются картины белоснежных зданий в окружении винограда и амфор, красивых женщин в сандалиях и мужественных воинов, охраняющих покой полисов, в которых ученые мужи работают над трудами, позже вошедшими в века. Красиво! 😇Но вернемся к интервью.

Из него вы узнаете, что в Греции доля Joomla среди CMS занимает порядка 30-40%. По моему мнению это - самый высокий показатель во всем мире. Также чтение лекций о Joomla в университетах позволит привести новых пользователей и к тому же молодое поколение. Ну и огромное кол-во сертификтатов Билла на стене (смотрим фото в статье) свидетельствует о том, что Joomla может применяться как профессиональный инструмент.

🌐 Оригинальное интервью (на английском)
🇬🇷 Интервью на греческом портале (joomla.gr)

Что насчет перевода на русский? Увы, времени всего 24 часа в сутках. Я продолжаю готовить новые интервью. Возможно, после завершения выпуска журнала, рассмотрю перевод некоторых интервью на русский. Но я об этом не говорил. 😊 В блоге @eugenius_blog публикую анонсы интересных событий из мира Joomla, интервью, уроки и полезные советы, а также делюсь мыслями:, связанными с разработкой и веб-дизайном.

0 Пользователей и 1 Гость просматривают эту тему.
  • 15 Ответов
  • 9894 Просмотров
*

RAZORG1991

  • Захожу иногда
  • 349
  • 6 / 0
Вот допустим подключил вирт fancybox в head, а дальше уже непосредственно в исходном коде страницы (когда вызывается этот самый фанси) получается вот такой код в конце странички.
Код
<div id="fancybox-tmp" style="padding: 50px;"></div>
<div id="fancybox-loading" style="display: none;">
<div id="fancybox-overlay" style="background-color: rgb(119, 119, 119); opacity: 0.7; cursor: pointer; height: 1770px; display: block;"></div>
<div id="fancybox-wrap" style="width: 580px; height: auto; top: 533px; left: 331px; display: block;">
<div id="fancybox-outer">
<div id="fancybox-bg-n" class="fancybox-bg"></div>
<div id="fancybox-bg-ne" class="fancybox-bg"></div>
<div id="fancybox-bg-e" class="fancybox-bg"></div>
<div id="fancybox-bg-se" class="fancybox-bg"></div>
<div id="fancybox-bg-s" class="fancybox-bg"></div>
<div id="fancybox-bg-sw" class="fancybox-bg"></div>
<div id="fancybox-bg-w" class="fancybox-bg"></div>
<div id="fancybox-bg-nw" class="fancybox-bg"></div>
<div id="fancybox-content" style="border-width: 10px; width: 560px; height: 777px;">
<iframe id="fancybox-frame" scrolling="auto" frameborder="0" src="/gigaspace/index.php/plenki-v-roznitsu/pod-karbon/karbonovaya-plenka-4d-chernaya-detail/askquestion?tmpl=component" hspace="0" name="fancybox-frame1378574613181">
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="ru-ru" dir="ltr" xml:lang="ru-ru" xmlns="http://www.w3.org/1999/xhtml">
<head>
<base href="http://localhost/gigaspace/index.php/plenki-v-roznitsu/pod-karbon/karbonovaya-plenka-4d-chernaya-detail/askquestion">
<meta content="text/html; charset=utf-8" http-equiv="content-type">
<meta content="Цена указана за 1 погонный метр Цена указана за 1 погонный метр Цена указана за 1 погонный метр" name="title">
<meta content="Joomla! - Open Source Content Management" name="generator">
<title>Описание товара Карбоновая пленка 4D черная - Задать вопрос</title>
<link rel="canonical" href="/gigaspace/index.php/plenki-v-roznitsu/pod-karbon/karbonovaya-plenka-4d-chernaya-detail">
<link type="text/css" href="/gigaspace/components/com_virtuemart/assets/css/vmsite-ltr.css" rel="stylesheet">
<link type="text/css" href="/gigaspace/components/com_virtuemart/assets/css/validationEngine.template.css" rel="stylesheet">
<link type="text/css" href="/gigaspace/components/com_virtuemart/assets/css/validationEngine.jquery.css" rel="stylesheet">
<script type="text/javascript" src="/gigaspace/components/com_virtuemart/assets/js/jquery.min.js">
<script type="text/javascript" src="/gigaspace/components/com_virtuemart/assets/js/jquery.noConflict.js">
<script type="text/javascript" src="/gigaspace/components/com_virtuemart/assets/js/vmsite.js">
<script type="text/javascript" src="/gigaspace/components/com_virtuemart/assets/js/jquery.validationEngine.js">
<script type="text/javascript" src="/gigaspace/components/com_virtuemart/assets/js/languages/jquery.validationEngine-ru.js">
<script type="text/javascript">
<link type="text/css" href="/gigaspace/templates/system/css/general.css" rel="stylesheet">
<link type="text/css" href="/gigaspace/templates/system/css/template.css" rel="stylesheet">
</head>
<body class="contentpane">
</html>
</iframe>
</div>
<a id="fancybox-close" style="display: inline;"></a>
<div id="fancybox-title" style="display: none;"></div>
<a id="fancybox-left" href="javascript:;">
<a id="fancybox-right" href="javascript:;">
</div>
</div>

Т.е. фанси в модальном окне как бы эмулирует еще одни HTML и body, а также head в котором снова подключаются все стили и скрипты.
И вот тут возникла проблема - Во втором head уже не подключаются мои стили, а идут дефолтные
Код
<link type="text/css" href="/gigaspace/templates/system/css/general.css" rel="stylesheet">
<link type="text/css" href="/gigaspace/templates/system/css/template.css" rel="stylesheet">
И вот вследствии этого я не могу добраться до стилизации элементов в модальном окне.
Не пойму это фанси уже подключает вот эти 2 строчки после всех скриптов или это где-то глубже зарыто?
Как мне вместо
Код
<link type="text/css" href="/gigaspace/templates/system/css/general.css" rel="stylesheet">
<link type="text/css" href="/gigaspace/templates/system/css/template.css" rel="stylesheet">
Прописать подключение своих стилей из своего шаблона?
« Последнее редактирование: 08.09.2013, 17:26:59 от RAZORG1991 »
*

ELLE

  • Глобальный модератор
  • 4505
  • 893 / 0
попробуйте недостающие скрипты или стили подключить в файле component.php вашего шаблона
*

Максим Пишняк

  • Давно я тут
  • 837
  • 35 / 0
Вот допустим подключил вирт fancybox в head
Разве в текущих версиях VM fancybox не подключен?
*

RAZORG1991

  • Захожу иногда
  • 349
  • 6 / 0
Разве в текущих версиях VM fancybox не подключен?

Да дело не в том (подключается он в любых версиях), я пытаюсь к нему добраться, чтобы подключить в добавок свои стили
*

flyingspook

  • Moderator
  • 3590
  • 247 / 9
если только свои стили, то можно их и просто в стили прописать
*

RAZORG1991

  • Захожу иногда
  • 349
  • 6 / 0
Вопрос снят)))) Готовое решение в ответе №1
попробуйте недостающие скрипты или стили подключить в файле component.php вашего шаблона

ELLE огромная благодарность за помощь)))
*

gartes

  • Завсегдатай
  • 1859
  • 142 / 6
  • Е = mс²
Т.е. фанси в модальном окне как бы эмулирует еще одни HTML и body, а также head в котором снова подключаются все стили и скрипты.
И вот тут возникла проблема - Во втором head уже не подключаются мои стили, а идут дефолтные

а вот это можно в директиве указать.. и будет работать как dialog UI jquery
*

twister2013

  • Захожу иногда
  • 91
  • 3 / 0
скажите как отключить fancybox в виртмартепожалуйста
*

RAZORG1991

  • Захожу иногда
  • 349
  • 6 / 0
скажите как отключить fancybox в виртмартепожалуйста

В админке в настройках VirtueMart, галочку снимаешь с пункта "подключать fancybox" и все.
Встречный вопрос - а ты нашел что-то лучше из модальных окон чем фанси для VirtueMart?
*

twister2013

  • Захожу иногда
  • 91
  • 3 / 0
В админке в настройках VirtueMart, галочку снимаешь с пункта "подключать fancybox" и все.
Встречный вопрос - а ты нашел что-то лучше из модальных окон чем фанси для VirtueMart?
Не совсем, я просто сделал карту товара в модальном окне, а модальное окно в модальном окне, уже перебор :-)
Модальное окно почему то открывается минуты по 3, поэтому вернулся к стандарту)
*

mark1

  • Захожу иногда
  • 394
  • 39 / 2
Разве в текущих версиях VM fancybox не подключен?
Отвечая на ваш вопрос, и на вопрос Топик-стартера, я бы сказал "Слегка через заднее крыльцо fancybox подключается в VirtueMart :dry:".
Вчера нашел баг в VirtueMart 2.6.0, он же присутствовал еще с версии 2.0.24 (как минимум, я не отслеживал). Зацитирую свой пост на VirtueMart.net.

Криво работает настройка "Use fancybox" в Configuration \ Templates.  Если выбрать ДА, сайт загружает Fancybox. Если "НЕТ",  сайт опять-таки загружает fancybox, и добавляет facebox. Таким образом, переключатель работает криво, и при "Use fancybox = NO", мы имеем:
  • Повышенный шанс конфликт скриптов. В моем случае  - 100% конфликт
  • 2 библиотеки, вместо 1, замусоривание кода
  • facebox не работает. Если использовать jQuery Easy (см. ниже), facebox работает, но нет тайтла у картинки

Сделал решение для VirtueMart 2.6.0, исправляющее все  3 пункта. Это просто исправление косяка разработчиков (похоже, они просто забыли IF условие), из-за которого зачастую вылазит JS конфликт.
Правил не из головы, а по образу и подобию других файлов VirtueMart.
3 правленных файла такие:
\components\com_virtuemart\assets\js\facebox.js
\components\com_virtuemart\views\productdetails\tmpl\default_images.php
\components\com_virtuemart\assets\css\facebox.css
Можете сравнить построчно с оригиналами, изменений немного.

Лирическое отступление: есть расширение, дающее шанс элегантно разрешить конфликты скриптов -  jQuery Easy. Рекомендую настоятельно.
« Последнее редактирование: 24.04.2014, 17:05:53 от mark1 »
*

borro

  • Завсегдатай
  • 1379
  • 22 / 0
  • желаю вам счастья
Доброго утра!

Скажите, а как можно в обычном материале Joomla подтянуть этот VM скрипт, чтобы произвольные изображения из папки images выводить с помощью fancybox? VM на сайте стоит, но речь идет про оформление отдельной статьи, а ставить отдельное расширение для этого на мой взгляд через чур. Быть может это можно сделать через плагины, обрабатывающие материал, но я с этим пока не знаком... Поделитесь пожалуйста своим видением.
*

mark1

  • Захожу иногда
  • 394
  • 39 / 2
Можно почти всё , что вы сказали. Но не факт что нужно. У вас какая конечная цель? Случайные картинки во всплывающем (модальном) окне?
Это можно решить через встроенную библиотеку Mootools. Есть родной (изкоробочный) модуль с названием "случайное изображение". Берём его, и делаем свой макет (это ваш кастомный вид этого модуля, формирующийся через файлик из /templates.%ваш-шаблон%/html/%имя-модуля-или-компонента%).  Если что - погуглите эту тему, дело на 5 минут.
Когда сделали (фактически тупо скопировали) макет, то там просто изменяете просто вывод картинки на вывод в модальном окне. Вот неплохая инструкция про модальные окна. http://www.spiralscripts.co.uk/Joomla-Tips/using-modal-windows-with-joomla.html
*

krokusar

  • Новичок
  • 2
  • 0 / 0
Доброе время суток.
Подскажите возникла проблема с Fancybox перестали открыватся модульные окна т.е сейчас они открываются во все окно. А в админке VirtueMart в медиа файлах, когда нажимаешь на картинку оно работает. Вот сайт где проблема http://zolotayaverba.ru/
*

Kumigy

  • Осваиваюсь на форуме
  • 21
  • 0 / 0
Доброе время суток.
Подскажите возникла проблема с Fancybox перестали открыватся модульные окна т.е сейчас они открываются во все окно. А в админке VirtueMart в медиа файлах, когда нажимаешь на картинку оно работает. Вот сайт где проблема http://zolotayaverba.ru/

такая ерунда получается обычно, когда конфликты с jQuery идут)
*

kasper9820

  • Захожу иногда
  • 127
  • 4 / 6
  • ...ISponsor!
Как можно сделать, чтобы всплывающее сообщение (Товар добавлен в корзину) само закрывалось через 3 сек и вставить красивый обратный отсчет. Где-то видел пример, но вспомнить не удалось где. Выглядит очень привлекательно и удобно
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Модуль SJ Filter for VirtueMart - только 30 custom fields

Автор Alex_gs

Ответов: 0
Просмотров: 2535
Последний ответ 08.08.2022, 15:09:59
от Alex_gs
Решено: Валютный знак рубля в VirtueMart 2

Автор frostwar

Ответов: 10
Просмотров: 11652
Последний ответ 07.04.2020, 15:50:54
от liberator
Как вывести модуль в витрине VirtueMart?

Автор Дмитрий_76

Ответов: 1
Просмотров: 2917
Последний ответ 09.02.2020, 10:06:17
от AlexB
Редактирование карточки товара VirtueMart

Автор muserun

Ответов: 2
Просмотров: 5130
Последний ответ 31.10.2019, 12:53:51
от Sandruk1
Не отображается заголовок категориq VirtueMart

Автор galll72

Ответов: 0
Просмотров: 985
Последний ответ 04.02.2019, 15:08:15
от galll72