Новости 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 Гость просматривают эту тему.
  • 7 Ответов
  • 2678 Просмотров
*

Litop

  • Захожу иногда
  • 52
  • 4 / 0
  • Joomla не использую! В Virtuemart не шарю!
Приветствую всех.
Ломаю голову над решением довольно сложной задачи. Подробнее...
Магазин на VirtueMart 3  в системе две валюты $ и UAN. Допустим есть товар 1 со стоимостью 1$  и соответственно 26 UAN - обменный курс = 26
В магазине главной валютой выставлен $ по причине не стабильности курсов и прайсов поставщиков загружаемых на автомате в $.
Данные задачи:
Поставщик 1 предлагает товар за 1$ по курсу 26UAN, а поставщик 2 товар за 1$ по 25UAN.
Получается, что по курсу магазина  товар 1 = 26UAN  и товар 2 = 25UAN .
Но каким то *чудесным* образом нужно сделать, что бы было товар 1 = 26UAN, а товар 2 = 25UAN,
Другими словами для поставщика 2 цены должны пересчитываться по отличному от системного курсу.

Приветствуются любые здравые мысли по данному поводу. Возможно это можно решить через Налоги и правила расчета?  ! ! !
Всех заранее благодарю за помощь.
*

gartes

  • Завсегдатай
  • 1859
  • 142 / 6
  • Е = mс²
Re: Несколько курсов валют в VirtueMart 3
« Ответ #1 : 16.11.2016, 03:40:07 »
Просто создайте две валюты доллара. с подписью USD И у того и у другого бакса. Подпись там ваще по боку только для гуманоидов.
Ну и соответственно название:

 Доллар для поставщика №1 и Доллар для поставщика №2

Соответственно разный курс.
*

Litop

  • Захожу иногда
  • 52
  • 4 / 0
  • Joomla не использую! В Virtuemart не шарю!
Re: Несколько курсов валют в VirtueMart 3
« Ответ #2 : 16.11.2016, 04:05:21 »
Просто создайте две валюты доллара. с подписью USD И у того и у другого бакса. Подпись там ваще по боку только для гуманоидов.
Ну и соответственно название:
.
 Доллар для поставщика №1 и Доллар для поставщика №2

Соответственно разный курс.
В том то и прикол, что основная валюта $ и курс выставлен так - $= 1 а UAN=26. Импорт прайсов происходит в $. В вашем варианте основной должна быть UAN и курс должен задаватся по принципу - сколько долларов стоит онин UAN (чото вроде 0,04) А здесь обратная схема если я создам ещё одну валюту $ я не смогу ей курс задать. Хотя если прокопатся, то курс может быть меньше =1 ..... Нужно покопать в этом направлении. Благодарю за подсказку. О результате отпишусь. .
*

gartes

  • Завсегдатай
  • 1859
  • 142 / 6
  • Е = mс²
Re: Несколько курсов валют в VirtueMart 3
« Ответ #3 : 16.11.2016, 08:42:32 »
Цитировать
Хотя если прокопатся, то курс может быть меньше =1
Ну да Вы обязательно прокопайтесь. !  ;D
Это тут математика для 3 класса .

Вам ваще не важно в какой единице ваш контрагент грузит товар...
Это в обще могут быть и не доллары.
Ну вот вы представьте что 1 поставщик грузит в евро  а 2 отпускает Вам товар в (зайцах Бел.)
А то что вы загружаете товар на основании доллара то это тоже только цифра суммы + индикатор валюты.

Не пойму что тут сложного.
Цитировать
В том то и прикол, что основная валюта $
Успехов Вам !!)
*

Litop

  • Захожу иногда
  • 52
  • 4 / 0
  • Joomla не использую! В Virtuemart не шарю!
Re: Несколько курсов валют в VirtueMart 3
« Ответ #4 : 17.11.2016, 14:29:34 »
Спасибо *gartes* за указанное направление  *DRINK*
Опыты с дополнительными валютами и курсами привели к полному хаосу. Главной проблемой стало то, что цена привязывается к основной валюте USD с курсом = 1 (прайс поставщика).
На сайте отображается таким образом :
Дальше задействовано правило модификатор цены и выводится цена со скидкой. Соответственно к модификатору привязывается вывод цены в UAN,
Так как вирт не позволяет штатными методами выводить цену в двух валютах, а селектором валют никто не пользуется вывод цены в UAN реализован в шаблоне вот так:
Код
 <div class="price_ua"><?php echo '<b>'.$this->currency->roundForDisplay($this->product->prices['salesPrice'],199,1,false).' грн</b>';?></div> 
199- ID валюты (смотрим в базе данных virtuemart_currencies ), грн - желаемое значение.


Решение данного вопроса №1. Создать правило расчёта для конкретного производителя * -%*  применимое только к валюте UAN. Математика для второго класса помогла вытащить разницу % в курсах.
Во всех товарах производителя пришлось сменить модификатор, что привело к потере отображения основной цены, но остался вывод цены со скидкой в USD и правильно пересчитанная цена в UAN.
Решение данного вопроса №2
Создаём дополнительную валюту с нужным курсом .
Создаём дополнительный шаблон для товаров требуемого производителя и уже в нём вставляем
Код
 <div class="price_ua"><?php echo '<b>'.$this->currency->roundForDisplay($this->product->prices['salesPrice'],199,1,false).' грн</b>';?></div> 
И вносим все остальные требуемые изменения (дизайны и тд ).
Для этих целей сделал специальный инсталятор (выбросил  мусор из доп шаблона virtuemart)
скачать здесь - https://yadi.sk/d/q3fHGyGWoKNBj
После установки у Вас появятся дополнительный шаблон главной страницы, категории и карточки товара с названием *tovar* (название можете сменить в архиве перед установкой)
Этот *костыль* порешает вывод региональный дизайнов карточки и вывода требуемых валют, но в корзину товары будут переносится только в валюте установленной по умолчанию.
У меня стоит RuposTel One Page ищу пути в вывода в корзине цены в двух валютах. Продолжаем копать...

« Последнее редактирование: 17.11.2016, 17:50:00 от Litop »
*

gartes

  • Завсегдатай
  • 1859
  • 142 / 6
  • Е = mс²
Re: Несколько курсов валют в VirtueMart 3
« Ответ #5 : 22.11.2016, 02:56:44 »
Цитировать
У меня стоит RuposTel One Page ищу пути в вывода в корзине цены в двух валютах. Продолжаем копать...
Выкиньте это.
Попробуйте поставить мой плаг корзины.
Там все намного проще.
Корзина One Page Для VirtueMart
Будут вопросы я хотя бы подскажу.

По поводу.. RuposTel One Page ...
А вот мне интересно почему одной корзиной в компоненте ... управляет АЖ целый компонент ...
Ну тут можно очень долго спорить но насколько я помню что он не FREE ...
И при этом Virtuemart  == FREE /

И для управления только одной корзиной.. Простите но это реальный плевок в сторону разработчиков VirtueMart.

А еще .. Почему то инстал этого компонента  весит как пол (если не весь ) virt ??
Заметили что то странное? ))

ЗЫ.. Там реклама  хорошая .. Все кидаются ..  Вот тут бери что не то... ))
Всем удачи.!


« Последнее редактирование: 22.11.2016, 03:04:55 от gartes »
*

Litop

  • Захожу иногда
  • 52
  • 4 / 0
  • Joomla не использую! В Virtuemart не шарю!
Re: Несколько курсов валют в VirtueMart 3
« Ответ #6 : 30.11.2016, 04:25:08 »
Выкиньте это.
Попробуйте поставить мой плаг корзины.
Там все намного проще.
Спасибо. Уже присматриваюсь! Обязательно попробую установить и потестить!
*

gartes

  • Завсегдатай
  • 1859
  • 142 / 6
  • Е = mс²
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Скачать - Управление товарами в VirtueMart - в таблиц

Автор gartes

Ответов: 45
Просмотров: 12844
Последний ответ 17.05.2023, 14:53:27
от mansonfaust
как изменить цену всем товарам в VirtueMart 3 ?

Автор ShamilHan

Ответов: 5
Просмотров: 4459
Последний ответ 11.03.2022, 21:12:37
от Zeobr
AJAX поиск для VirtueMart 3.x (Скачать)

Автор gartes

Ответов: 19
Просмотров: 9271
Последний ответ 06.10.2021, 16:49:54
от skrepka22
Переменные VirtueMart или где макет страницы "Спасибо за заказ!"?

Автор indigo

Ответов: 21
Просмотров: 15782
Последний ответ 06.01.2021, 20:21:03
от Akeksandr
Расчет общего веса заказа в корзине VirtueMart 3.6

Автор Valderdag

Ответов: 8
Просмотров: 1274
Последний ответ 01.05.2020, 10:29:02
от Valderdag