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

apikron

  • Захожу иногда
  • 152
  • 2 / 0
Шаблоны ONEPAGE на Joomla 3
« : 19.02.2015, 12:57:12 »
Установил один из шаблонов для Joomla 3 из разряда ONEPAGE, в данном случае LT Personal http://ltheme.com/project/lt-personal-free-onepage-portfolio-personal-joomla-template/
Демо шаблона http://demo2.ltheme.com/joomla-one-page-templates/lt-personal/

Народ! Подскажите, пожалуйста, как работать с меню?! Не понял как настраивать ссылки, чтобы при нажатии подгружался нужный материал (как я понимаю из нужной модульной позиции).
На простейшем застрял  ^-^ Уже решил просто "Якорь" использовать, как вариант, но хочется реально понять как правильно работать с меню в шаблонах ONEPAGE.
*

apikron

  • Захожу иногда
  • 152
  • 2 / 0
Re: Шаблоны ONEPAGE на Joomla 3
« Ответ #1 : 19.02.2015, 13:22:09 »
Неужели "Якорями" и работает?!
*

vdm-m3

  • Осваиваюсь на форуме
  • 42
  • 1 / 0
Re: Шаблоны ONEPAGE на Joomla 3
« Ответ #2 : 08.05.2015, 12:25:35 »
Вот здесь посмотрите: http://joomlaforum.ru/index.php/topic,297332.new.html
Но окончательно вопрос не решен как быть с пунктами меню и заголовками модулей на русском.
Если есть какая информация о решении проблемы, пожалуйста отпишитесь. Буду очень благодарен.
*

apikron

  • Захожу иногда
  • 152
  • 2 / 0
Re: Шаблоны ONEPAGE на Joomla 3
« Ответ #3 : 08.05.2015, 12:46:19 »
Если мы правильно друг-друга понимаем, то решил всё обычными якорями. Отключаю показ названия модуля, вписываю название модуля в тексте, ставлю <h>- тег, оформляю как надо средствами редактора. Потом соответственно ставлю якорь в название и прописываю якорь в необходимом пункте меню.
*

vdm-m3

  • Осваиваюсь на форуме
  • 42
  • 1 / 0
Re: Шаблоны ONEPAGE на Joomla 3
« Ответ #4 : 08.05.2015, 15:34:12 »
Конечно и так тоже можно, но это можно просто сделать в модуле custom_html, а если в других модулях это делать, то уже посложнее...

Вот только что, на другом форуме очень помогли и предложили такое решение:

В файл modules.php добавляется транслитерация названий модулей. Русские символы переводятся в транслит.
Вот такой файл \public_html\templates\ja_onepage\html\modules.php  должен получиться:

Код
<?php
function rus2translit($string)
{
    $converter = array(
        'а' => 'a',   'б' => 'b',   'в' => 'v',
        'г' => 'g',   'д' => 'd',   'е' => 'e',
        'ё' => 'e',   'ж' => 'zh',  'з' => 'z',
        'и' => 'i',   'й' => 'y',   'к' => 'k',
        'л' => 'l',   'м' => 'm',   'н' => 'n',
        'о' => 'o',   'п' => 'p',   'р' => 'r',
        'с' => 's',   'т' => 't',   'у' => 'u',
        'ф' => 'f',   'х' => 'h',   'ц' => 'c',
        'ч' => 'ch',  'ш' => 'sh',  'щ' => 'sch',
        'ь' => '',    'ы' => 'y',   'ъ' => '',
        'э' => 'e',   'ю' => 'yu',  'я' => 'ya',
        'А' => 'A',   'Б' => 'B',   'В' => 'V',
        'Г' => 'G',   'Д' => 'D',   'Е' => 'E',
        'Ё' => 'E',   'Ж' => 'Zh',  'З' => 'Z',
        'И' => 'I',   'Й' => 'Y',   'К' => 'K',
        'Л' => 'L',   'М' => 'M',   'Н' => 'N',
        'О' => 'O',   'П' => 'P',   'Р' => 'R',
        'С' => 'S',   'Т' => 'T',   'У' => 'U',
        'Ф' => 'F',   'Х' => 'H',   'Ц' => 'C',
        'Ч' => 'Ch',  'Ш' => 'Sh',  'Щ' => 'Sch',
        'Ь' => '',  'Ы' => 'Y',   'Ъ' => '',
        'Э' => 'E',   'Ю' => 'Yu',  'Я' => 'Ya',
        '?' => '',    '!' => '',    '.' => '',
        ',' => '',
    );
    return strtr($string, $converter);
}
?>
<?php


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

/**
* This is a file to add template specific chrome to module rendering.  To use it you would
* set the style attribute for the given module(s) include in your template to use the style
* for each given modChrome function.
*
* eg.  To render a module mod_test in the sliders style, you would use the following include:
* <jdoc:include type="module" name="test" style="slider" />
*
* This gives template designers ultimate control over how modules are rendered.
*
* NOTICE: All chrome wrapping methods should be named: modChrome_{STYLE} and take the same
* three arguments.
*/


/*
* Default Module Chrome that has sematic markup and has best SEO support
*/
function modChrome_JAxhtml($module, &$params, &$attribs)
{
  $badge = preg_match ('/badge/', $params->get('moduleclass_sfx'))?"<span class=\"badge\">&nbsp;</span>\n":"";
?>
  <div class="ja-module module<?php echo $params->get('moduleclass_sfx'); ?>" id="Mod<?php echo $module->id; ?>">
    <div class="module-inner">
      <?php echo $badge; ?>
      <?php if ($module->showtitle != 0) : ?>
      <h3 class="module-title"><span><?php echo $module->title; ?></span></h3>
      <?php endif; ?>
      <div class="module-ct">
      <?php echo $module->content; ?>
      </div>
    </div>
  </div>
  <?php
}

function modChrome_onepage($module, &$params, &$attribs)
{
  $key = strtoupper(str_replace (' ', '_', stripslashes($module->title)));
  $subtitlekey = 'TPL_SUBTITLE_'.$key;
  $subtitle = JText::_($subtitlekey);
  $menuid = strtolower(str_replace (' ', '_', stripslashes($module->title)));
?>
  <section class="section onepage<?php echo $params->get('moduleclass_sfx'); ?>" id="<?php echo rus2translit($menuid)?>">
    <div class="container">

      <?php if ($module->showtitle != 0) : ?>
        <div class="section-title" id="<?php echo rus2translit($menuid)?>">
          <h2><span><?php echo $module->title; ?></span></h2>
          <span class="section-subtitle"><?php echo $subtitle ?></span>
        </div>
      <?php endif; ?>   

      <div class="row-fluid">
        <?php echo $module->content; ?>
      </div>

    </div>

  </section>
  <?php
}

Таким образом у Вас названия модулей будут переведены в транслит и всё заработает. Названия же самих модулей останутся на русском.
см. как работает: http://tablo-dlya-azs.ru

Останется только зайти в редактирование пунктов меню и там сделать транслитерацию ссылок на модули в соответствии с транслитерацией в файле mudule.php

Обратите внимание также на то, что если название модуля начинается с заглавной буквы, то и в настройках адреса ссылки пункта меню тоже надо указывать с заглавной, например: Название модуля: Наша продукция, Адрес в пункте меню: index.php?Itemid=435#Nasha_produkciya
« Последнее редактирование: 08.05.2015, 15:39:10 от vdm-m3 »
*

apikron

  • Захожу иногда
  • 152
  • 2 / 0
Re: Шаблоны ONEPAGE на Joomla 3
« Ответ #5 : 08.05.2015, 15:51:58 »
Да! Полезно! Спасибо за подсказку!
*

vdm-m3

  • Осваиваюсь на форуме
  • 42
  • 1 / 0
Re: Шаблоны ONEPAGE на Joomla 3
« Ответ #6 : 08.05.2015, 15:57:47 »
Да не стоит благодарности. Мне тоже подскзали. Да это даже не "подсказали" :)   Это уже готовое решение.  ;D
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Различные условия в шаблонах Joomla 3.0 и 2.5

Автор Fedor Vlasenko

Ответов: 133
Просмотров: 31372
Последний ответ 16.12.2024, 15:52:14
от goga_pgasovav
Шаблоны Joomlart, Gavick, Yootheme, RocketTheme для Joomla: легально и с обновлениями, no warez

Автор _ib_

Ответов: 168
Просмотров: 207991
Последний ответ 15.04.2023, 18:26:50
от AS1969
Где в Joomla 3.4.3 шаблон материала? Шаблон Yootheme Organic

Автор annushka

Ответов: 13
Просмотров: 5863
Последний ответ 13.09.2022, 11:14:56
от tuztref
Последнее обновление Helix3 испортило шаблоны сайтов

Автор aver2000

Ответов: 4
Просмотров: 1202
Последний ответ 18.12.2021, 09:13:22
от Юрий777
Master3 – современный удобный гибкий шаблон для Joomla! 3 на фреймворке UIkit 3

Автор dron

Ответов: 81
Просмотров: 10997
Последний ответ 11.09.2021, 03:12:59
от vasileк