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

sharp

  • Завсегдатай
  • 1173
  • 97 / 2
страничная навигация
« : 07.07.2010, 15:26:54 »
Собственно задача сменить стандартную страничную навигацию см рис.1 на рис.2



Хочешь знать правду!? читай таблицу умножения.
Поисковое продвижение или раскрутка сайта!
*

METTER

  • Захожу иногда
  • 169
  • 22 / 1
Re: страничная навигация
« Ответ #1 : 07.07.2010, 15:55:08 »
чтобы избавиться от слов "первая, предыдущая, следующая, последняя"
1) открываем файл относительно корня сайта "\libraries\joomla\html\pagination.php"
2) ищем там такие строки
Код
// Reverse output rendering for right-to-left display
$html .= '<< ';
$html .= $list['start']['data'];
$html .= ' < ';
$html .= $list['previous']['data'];
foreach( $list['pages'] as $page ) {
$html .= ' '.$page['data'];
}
$html .= ' '. $list['next']['data'];
$html .= ' >';
$html .= ' '. $list['end']['data'];
$html .= ' >>';

return $html;
}
3) заменяем на
Код
$html .= '<< ';
$html .= $list['data'];
$html .= ' < ';
$html .= $list['data'];
foreach( $list['pages'] as $page ) {
$html .= ' '.$page['data'];
}
$html .= ' '. $list['data'];
$html .= ' >';
$html .= ' '. $list['data'];
$html .= ' >>';

return $html;
}

Ну, а чтобы выводились в квадратах таких, то это надо редактировать файл стилей шаблона
*

sharp

  • Завсегдатай
  • 1173
  • 97 / 2
Re: страничная навигация
« Ответ #2 : 07.07.2010, 16:00:18 »
чтобы избавиться от слов "первая, предыдущая, следующая, последняя"
1) открываем файл относительно корня сайта "\libraries\joomla\html\pagination.php"
2) ищем там такие строки
Код
// Reverse output rendering for right-to-left display
$html .= '<< ';
$html .= $list['start']['data'];
$html .= ' < ';
$html .= $list['previous']['data'];
foreach( $list['pages'] as $page ) {
$html .= ' '.$page['data'];
}
$html .= ' '. $list['next']['data'];
$html .= ' >';
$html .= ' '. $list['end']['data'];
$html .= ' >>';

return $html;
}
3) заменяем на
Код
$html .= '<< ';
$html .= $list['data'];
$html .= ' < ';
$html .= $list['data'];
foreach( $list['pages'] as $page ) {
$html .= ' '.$page['data'];
}
$html .= ' '. $list['data'];
$html .= ' >';
$html .= ' '. $list['data'];
$html .= ' >>';

return $html;
}

как вариант можно и поменять языковой файл чтоб избавится от "следующая" итд. ну а вообще интересно узнать как изменить стиль
Хочешь знать правду!? читай таблицу умножения.
Поисковое продвижение или раскрутка сайта!
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
Re: страничная навигация
« Ответ #3 : 07.07.2010, 16:06:30 »
как вариант можно и поменять языковой файл чтоб избавится от "следующая" итд.
как вариант это все делается на уровне шаблона в файле ШАБЛОН\html\pagination.php, можете глянуть в стандартный rhuk_milkyway
ну а вообще интересно узнать как изменить стиль
изучить CSS и изменять себе на здоровье.
*

SpecTR

  • Захожу иногда
  • 105
  • 10 / 0
Re: страничная навигация
« Ответ #4 : 07.07.2010, 16:06:54 »
METTER не стоит править ядро Joomla  
просто нужно создать свой файл pagination.php в шаблоне (\templates\шаблон\html\) и там править то что надо и стиль прикручивать ;)
*

METTER

  • Захожу иногда
  • 169
  • 22 / 1
Re: страничная навигация
« Ответ #5 : 07.07.2010, 16:18:27 »
sharp, даже вот так правильнее будет
1) открываем файл относительно корня сайта "\libraries\joomla\html\pagination.php"
2) ищем там такие строки
Код
// Reverse output rendering for right-to-left display
$html .= '<< ';
$html .= $list['start']['data'];
$html .= ' < ';
$html .= $list['previous']['data'];
foreach( $list['pages'] as $page ) {
$html .= ' '.$page['data'];
}
$html .= ' '. $list['next']['data'];
$html .= ' >';
$html .= ' '. $list['end']['data'];
$html .= ' >>';

return $html;
}
3) заменяем на
Код
// Reverse output rendering for right-to-left display
$html .= $list['start']['data'];
$html .= $list['previous']['data'];
foreach( $list['pages'] as $page ) {
$html .= ' '.$page['data'];
}
$html .= ' '. $list['next']['data'];
$html .= ' '. $list['end']['data'];

return $html;
}
4) ищем строки
Код
// Set the start and previous data objects
$data->start = new JPaginationObject(JText::_('Start'));
$data->previous = new JPaginationObject(JText::_('Prev'));
5) зменяем на
Код
// Set the start and previous data objects
$data->start = new JPaginationObject(JText::_('<<'));
$data->previous = new JPaginationObject(JText::_('<'));
6) ищем строки
Код
// Set the next and end data objects
$data->next = new JPaginationObject(JText::_('Next'));
$data->end = new JPaginationObject(JText::_('End'));
7) заменяем на
Код
// Set the next and end data objects
$data->next = new JPaginationObject(JText::_('>'));
$data->end = new JPaginationObject(JText::_('>>'));

В результате слова убираются, а вместо символов "<, <<, >, >>" у нас становятся ссылки



*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
Re: страничная навигация
« Ответ #6 : 07.07.2010, 16:27:30 »
METTER не стоит править ядро Joomla 
:)
*

art1535

  • Захожу иногда
  • 271
  • 6 / 0
  • Мат&Тык
Re: страничная навигация
« Ответ #7 : 07.07.2010, 19:24:40 »
Относительно дизайна, вот мой примерный pagination
Замени стандартный код в templates.css, ну а подправить под себя - там осталось только значения поменять
Цитировать
.pagination a{
display: inline-block;
background-color:#EEEEEE;
height: 16px;
width: 16px;
border:1px solid #EEEEEE;
}

.pagination a:hover
{

    padding: 2px;
    text-decoration: none;
    color: #666;
    border: 1px solid #ccc;
    background-color: #;
    border-bottom: 1px solid #ccc;
}
*

sharp

  • Завсегдатай
  • 1173
  • 97 / 2
Re: страничная навигация
« Ответ #8 : 07.07.2010, 21:12:12 »
Относительно дизайна, вот мой примерный pagination
Замени стандартный код в templates.css, ну а подправить под себя - там осталось только значения поменять
вот нету таких классов у меня. см рис

поставил свои значения но не работает. видимо тут еще дело в файле шаблона "блога материалов"
Хочешь знать правду!? читай таблицу умножения.
Поисковое продвижение или раскрутка сайта!
*

art1535

  • Захожу иногда
  • 271
  • 6 / 0
  • Мат&Тык
Re: страничная навигация
« Ответ #9 : 07.07.2010, 21:17:17 »
Ну так класс .pagenav? И, кстати, в папку с шаблоном ,папка html положили файл pagination.php?
*

sharp

  • Завсегдатай
  • 1173
  • 97 / 2
Re: страничная навигация
« Ответ #10 : 07.07.2010, 22:32:43 »
Ну так класс .pagenav? И, кстати, в папку с шаблоном ,папка html положили файл pagination.php?
ну да,класс .pagenav естественно менял в CSS . сейчас попробую с pagination.php
Хочешь знать правду!? читай таблицу умножения.
Поисковое продвижение или раскрутка сайта!
*

sharp

  • Завсегдатай
  • 1173
  • 97 / 2
Re: страничная навигация
« Ответ #11 : 08.07.2010, 16:07:24 »
ну вобщем "честно" стащил файл /шаблон/html/pagination.php с готового шаблона. закинул к себе.
нашел класс который отвечает за  навигацию, добавил к себе в CSS файл, подправил под дизайн своего сайта. теперь все как надо :)

Хочешь знать правду!? читай таблицу умножения.
Поисковое продвижение или раскрутка сайта!
*

art1535

  • Захожу иногда
  • 271
  • 6 / 0
  • Мат&Тык
Re: страничная навигация
« Ответ #12 : 09.07.2010, 10:51:21 »
Ну вот ^-^
*

art1535

  • Захожу иногда
  • 271
  • 6 / 0
  • Мат&Тык
Re: страничная навигация
« Ответ #13 : 15.07.2010, 21:51:23 »
А как вообще убрать "Последняя", "Первая", чтобы было только: Следующая 1 2 3 4 Предыдущая?
У меня ссылки убираются, а квадратики остаются :(
*

art1535

  • Захожу иногда
  • 271
  • 6 / 0
  • Мат&Тык
Re: страничная навигация
« Ответ #14 : 16.07.2010, 14:35:37 »
Ну что никто не знает?? :(
*

sharp

  • Завсегдатай
  • 1173
  • 97 / 2
Re: страничная навигация
« Ответ #15 : 16.07.2010, 21:20:07 »
Ну что никто не знает?? :(
ну поэксперементируй с pagination.php. как я понял там есть функции которые вызывают эти значения. всего лишь их убрать
Хочешь знать правду!? читай таблицу умножения.
Поисковое продвижение или раскрутка сайта!
*

art1535

  • Захожу иногда
  • 271
  • 6 / 0
  • Мат&Тык
Re: страничная навигация
« Ответ #16 : 16.07.2010, 23:38:29 »
Да я всё решил уже
*

Yamamura

  • Захожу иногда
  • 99
  • 3 / 0
Re: страничная навигация
« Ответ #17 : 26.07.2010, 14:52:11 »
Скажите, а как сделать, чтоб не выводилось «Первая» и «Предыдущая», когда мы находимся на первой странице? Аналогично, когда мы на последней странице, не должно выводиться «Следующая» и «Последняя».
*

SmokerMan

  • Гуру
  • 5290
  • 720 / 26
Re: страничная навигация
« Ответ #18 : 26.07.2010, 15:02:32 »
Скажите, а как сделать, чтоб не выводилось «Первая» и «Предыдущая», когда мы находимся на первой странице? Аналогично, когда мы на последней странице, не должно выводиться «Следующая» и «Последняя».
Нумерация страниц
Там я давно писал как такое реализовать. Правда не знаю насколько сейчас это будет актуально.
*

Yamamura

  • Захожу иногда
  • 99
  • 3 / 0
Re: страничная навигация
« Ответ #19 : 26.07.2010, 16:45:55 »
Цитировать
Там я давно писал как такое реализовать. Правда не знаю насколько сейчас это будет актуально.
не работает, к сожалению.
*

Yamamura

  • Захожу иногда
  • 99
  • 3 / 0
Re: страничная навигация
« Ответ #20 : 26.07.2010, 18:30:13 »
Сделал. При чём не потребовалась даже правка libraries\joomla\html\pagination.php

Просто в файле templates\ваш_шаблон\html\pagination.php прописываем следующую функцию pagination_list_render:
Код: php
function pagination_list_render($list)
{
// Initialize variables
$html = "<span class=\"pagination\">";
if ($list['start']['active'] == false && $list['previous']['active'] == false) {
$html .= '';
}
else {
$html .= $list['start']['data'];
$html .= $list['previous']['data'];
}

foreach( $list['pages'] as $page )
{
if($page['data']['active']) {
$html .= '<strong>';
}

$html .= $page['data'];

if($page['data']['active']) {
$html .= '</strong>';
}
}

if ($list['end']['active'] == false && $list['next']['active'] == false) {
$html .= '';
}
else {
$html .= $list['next']['data'];
$html .= $list['end']['data'];
}

$html .= "</span>";
return $html;
}
Вроде так всё работает :)
*

bcat

  • Новичок
  • 6
  • 0 / 0
Re: страничная навигация
« Ответ #21 : 13.08.2010, 20:10:14 »
Привет всем господа Джумловоды.
Вопрос по поводу пагинации.
Есть сайт _http://it-svr.ru так вот там пагинация выводиться на главной странице. Сделал так как захотела заказчица, но есть одна проблема. Пагинация выводиться только на главной странице а к примеру при переходе в Услуги пагинации вообще нет. Не могу понять что не так сделал. Подскажите люди добрые.
*

skai

  • Завсегдатай
  • 1198
  • 153 / 1
  • skaiseo
Re: страничная навигация
« Ответ #22 : 31.08.2010, 04:19:46 »
как реализована навигация на этой странице  ?
если кто знает - подскажите! оч. удобно для многостраничного каталога.

упс... не могу вставить ни изображение ни ссылку.. в чем дело?

« Последнее редактирование: 31.08.2010, 06:15:22 от skai »
Наполнение вашего сайта - 1т.р. стр. (текст, изображения, мета, перелинковка). Гарантия высокого ранжирования. SEO консультация в подарок.
----------------------------------------------------------------------------------------------
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Разделы и категории + навигация

Автор Sareth

Ответов: 4
Просмотров: 2498
Последний ответ 22.12.2016, 14:22:26
от drVadz
Не работает постраничная навигация

Автор silvershake

Ответов: 7
Просмотров: 1663
Последний ответ 30.04.2013, 16:42:11
от silvershake
Неработает навигация страниц на сайте.

Автор SFG

Ответов: 1
Просмотров: 1304
Последний ответ 14.12.2011, 14:04:59
от Aleks_El_Dia
Постраничная навигация сверху и снизу.

Автор otagur

Ответов: 10
Просмотров: 3788
Последний ответ 12.11.2011, 15:01:26
от Sam-vdv
(РЕШЕНО!) Где находится навигация страниц категорий?

Автор sonque

Ответов: 4
Просмотров: 1505
Последний ответ 02.11.2011, 19:08:34
от sonque