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

SoFuWa

  • Захожу иногда
  • 61
  • 0 / 0
Сделать таблицу-каталог
« : 02.09.2011, 21:33:09 »
Приветствую, такая проблема, есть сайт, там нужно оформить каталог таблицей, то есть 1 строка - это один товар, и каждая ячейка его параметр.  И я вот не могу найти в Zoo 2.4.14 место, чтоб окружить нужные данные элемента в ячейки таблицы, везде есть вывод целиком типа
Код
<?php if ($this->checkPosition('specification')) : ?>
<ul class="pos-specification">
<?php echo $this->renderPosition('specification', array('style' => 'list')); ?>
</ul>
<?php endif; ?>

Но тут выводятся сразу всё из спецефикации сразу.
« Последнее редактирование: 02.09.2011, 21:48:35 от SoFuWa »
*

SoFuWa

  • Захожу иногда
  • 61
  • 0 / 0
Re: Сделать таблицу-каталог
« Ответ #1 : 02.09.2011, 21:48:55 »
Уже не актуально сам нашёл, это в рендеренге эелементов.
« Последнее редактирование: 02.09.2011, 23:46:50 от SoFuWa »
*

SoFuWa

  • Захожу иногда
  • 61
  • 0 / 0
Re: Сделать таблицу-каталог
« Ответ #2 : 02.09.2011, 23:49:27 »
Ещё есть такой вопрос, в Zoo есть такая штука Related Products, но его нужно для каждого элемента выбирать. А можно сделать стандартными средствами так чтоб было как в интернет магазинах,  при выборе товара показывались похожии? (ну из той же категории)
*

MetaSpirit

  • Завсегдатай
  • 1370
  • 106 / 0
  • R.A.S.Lab[.org]
Re: Сделать таблицу-каталог
« Ответ #3 : 03.09.2011, 00:05:53 »
Можно автоматически завязать на теги, т.е. если не выбран похожий продукт вручную, отображается похожие по тегам. Решение - http://joomlaforum.ru/index.php/topic,159618.msg872149.html#msg872149
R.A.S.Lab[.org]: ZOOvirtue - корзина для ZOO, Яндекс.Карты для ZOO, ItemPanes - табы для ZOO, ZOOlendar - календарь для ZOO  и др.
Создание расширений для YOOtheme ZOO на заказ. Становитесь в очередь.
*

SoFuWa

  • Захожу иногда
  • 61
  • 0 / 0
Re: Сделать таблицу-каталог
« Ответ #4 : 03.09.2011, 00:32:13 »
Можно автоматически завязать на теги, т.е. если не выбран похожий продукт вручную, отображается похожие по тегам. Решение - http://joomlaforum.ru/index.php/topic,159618.msg872149.html#msg872149
Благодарю
*

SemiLex

  • Захожу иногда
  • 85
  • 5 / 0
Re: Сделать таблицу-каталог
« Ответ #5 : 03.09.2011, 05:34:22 »
а мне лично не хватает такого в продакт-каталоге Зуу:
чтобы можно было сравнить один итем с другим. завязать это дело на отдельную страницу (отдельный пункт меню в Joomla 1.7), на которой можно было бы сравнить два итема. два - достаточно. просто две колонки, отображающие шаблон "фулл" двух итемов. выбрать, с чем сравнивать, мог сам пользователь из того же фулл-вью любого итема.

имхо, популярный был бы плагинчек. готов даже купить такой плагин.
*

MetaSpirit

  • Завсегдатай
  • 1370
  • 106 / 0
  • R.A.S.Lab[.org]
Re: Сделать таблицу-каталог
« Ответ #6 : 05.09.2011, 19:51:08 »
По ходу дела понадобилось. Итак, вариант табличной верстки элементов в столбец:
Создаем файл "table.php", следующего содержания:

Код: php
<?php
/**
* @package   ZOO Component
* @file      table.php
* @version   2.4.1 September 2011
* @author    Attavus M.D.
* @copyright Copyright (C) 2011 Attavus M.D.
* @license   http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 only
*/

/******************************************************************

* Помещаем в папку: components/com_zoo/renderer/element/ или media/zoo/applications/{application}/templates/{template}/renderer/element/

*******************************************************************/

// no direct access

defined('_JEXEC') or die('Restricted access');

// create label

$label = '';

if (isset($params['showlabel']) && $params['showlabel']) {
$label .= '<strong>';
$label .= ($params['altlabel'])? $params['altlabel'] : $element->getConfig()->get('name');
$label .= '</strong>';
}

// create class attribute

$class = 'element element-'.$element->getElementType().' '.($params['first'] ? ' first' : '').($params['last'] ? ' last' : '');

?>

<td class="<?php echo $class; ?>" style="vertical-align:top">
<div><?php echo $label; ?></div>
<div><?php echo $element->render($params); ?></div>
</td>

И помещаем данный файл в папку: components/com_zoo/renderer/element/ или media/zoo/applications/{application}/templates/{template}/renderer/element/

Далее редактируем файл - media/zoo/applications/{application}/templates/{template}/renderer/item/full.php. Обрамляем функцию рендеринга необходимой позиции
 <table><tr>... </tr></table> и ставим стиль - 'table'

 т.е. должно получится (на примере каталога продуктов):

Код: php
 <?php if ($this->checkPosition('specification')) : ?>
<div class="pos-specification">
<h3><?php echo JText::_('Specifications'); ?></h3>
<table>
  <tr>
<?php echo $this->renderPosition('specification', array('style' => 'table')); ?>
</tr>
  </table>
</div>
 <?php endif; ?>

В итоге получится вот такой вывод (каждый элемент в отдельном столбце):
R.A.S.Lab[.org]: ZOOvirtue - корзина для ZOO, Яндекс.Карты для ZOO, ItemPanes - табы для ZOO, ZOOlendar - календарь для ZOO  и др.
Создание расширений для YOOtheme ZOO на заказ. Становитесь в очередь.
*

Daser

  • Осваиваюсь на форуме
  • 19
  • 0 / 0
Re: Сделать таблицу-каталог
« Ответ #7 : 19.11.2011, 17:24:55 »
В итоге получится вот такой вывод (каждый элемент в отдельном столбце):

прекрасно, подскажите, а как сделать тоже самое но построчно?
*

MetaSpirit

  • Завсегдатай
  • 1370
  • 106 / 0
  • R.A.S.Lab[.org]
Re: Сделать таблицу-каталог
« Ответ #8 : 19.11.2011, 23:46:14 »
прекрасно, подскажите, а как сделать тоже самое но построчно?
построчно - это как?
R.A.S.Lab[.org]: ZOOvirtue - корзина для ZOO, Яндекс.Карты для ZOO, ItemPanes - табы для ZOO, ZOOlendar - календарь для ZOO  и др.
Создание расширений для YOOtheme ZOO на заказ. Становитесь в очередь.
*

diks13

  • Захожу иногда
  • 257
  • 10 / 0
Re: Сделать таблицу-каталог
« Ответ #9 : 03.04.2013, 02:12:28 »
Помогите сделать такую таблицу.


если можно, то разделить ее на на 3 части
----------------------------------------------------
-                       -                       -                      -
-                       -                       -                      -
- изображение    - количество      -      2               -
-                       -  длинна           -      10 см         -
-                       -  цвет              -      синий         -
-----------------------------------------------------
« Последнее редактирование: 03.04.2013, 02:16:11 от diks13 »
*

Beer

  • Завсегдатай
  • 1104
  • 43 / 1
  • БИРУ - БИР!
Re: Сделать таблицу-каталог
« Ответ #10 : 28.06.2014, 12:50:56 »
 В спецификации, которая выводится списком, после названия поля стоит двоеточие :
 Где оно находится или откуда берется - ну никак не найду...
 Подскажите пожалуйста, кто в теме!
*

likrion

  • Давно я тут
  • 750
  • 129 / 2
Re: Сделать таблицу-каталог
« Ответ #11 : 28.06.2014, 21:58:03 »
components/com_zoo/renderer/element/list.php стр.17

Код: php
	$label .= ': </strong>';
R331474010295
*

Beer

  • Завсегдатай
  • 1104
  • 43 / 1
  • БИРУ - БИР!
Re: Сделать таблицу-каталог
« Ответ #12 : 28.06.2014, 23:24:39 »
 Спасибо! Втайне надеялся на твою помощь.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

JBZoo - Каталог для Zoo c корзиной, фильтрами, сравнением товаров и новыми элементами от JBZoo.ru

Автор sm_denis

Ответов: 929
Просмотров: 140969
Последний ответ 15.02.2019, 22:11:33
от san_san
Модуль ZOO Category - как сделать выпадающим списком?

Автор tsg

Ответов: 33
Просмотров: 13244
Последний ответ 05.02.2017, 15:41:38
от newvideo
ZOO как сделать автоматическое добавление Item в Frontpage?

Автор d91me

Ответов: 33
Просмотров: 9362
Последний ответ 29.12.2014, 11:44:46
от dmi_alex
Как сделать нумерацию элементов в zoo?

Автор M@xim

Ответов: 6
Просмотров: 1621
Последний ответ 17.02.2014, 16:26:30
от M@xim
Можно ли сделать так.чтобы новинки отображались на главной старничке?

Автор ag

Ответов: 0
Просмотров: 1141
Последний ответ 31.12.2013, 12:37:04
от ag