Новости Joomla

Как тестировать Joomla PHP-разработчику? Компонент Patch tester.

👩‍💻 Как тестировать Joomla PHP-разработчику? Компонент Patch tester.Joomla - open source PHP-фреймворк с готовой админкой. Его основная разработка ведётся на GitHub. Для того, чтобы международному сообществу разработчиков было удобнее тестировать Pull Requests был создан компонент Patch Tester, который позволяет "накатить" на текущую установку Joomla именно те изменения, которые необходимо протестировать. На стороне инфраструктуры Joomla для каждого PR собираются готовые пакеты, в которых находится ядро + предложенные изменения. В каждом PR обычно находятся инструкции по тестированию: куда зайти, что нажать, ожидаемый результат. Тестировщики могут предположить дополнительные сценарии, исходя из своего опыта и найти баги, о которых сообщить разработчику. Или не найти, и тогда улучшение или исправление ошибки быстрее войдёт в ядро Joomla. Напомню, что для того, чтобы PR вошёл в ядро Joomla нужны минимум 2 положительных теста от 2 участников сообщества, кроме автора. Видео на YouTubeВидео на VK ВидеоВидео на RuTubeКомпонент на GitHub https://github.com/joomla-extensions/patchtester@joomlafeed#joomla #php #webdev #community

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6

Вышел релиз Revo PageBuilder Toolkit for YOOtheme Pro 1.6.2PageBuilder Toolkit - это специализированный плагин для конструктора страниц Yootheme Pro, содержит набор различных утилит для ускорения процесса работы и отладки макета, множественные улучшения в интерфейсе, включая поддержку dark mode, подсказки, быстрая смена разрешения в окне просмотра и много чего еще.v.1.6.2 Что нового?- Индикатор статусов: теперь не просто показывает состояние запросов, но и делает автоматические попытки их отправки при кратковременных сбоях в сети, а если это не помогло, то переводит конструктор в ручной режим, что позволяет сохранит макет и настройки темы прежде чем вы потеряете все, что было сделано с момента последнего сохранения- Подсветка ошибок в макете: плагин анализирует код страницы и может автоматически подсвечивать data атрибуты с кучей мусора, которые попадают в код страницы при копипасте из Figma в TinyMCE (пригодится для старых макетов, в текущей работе плагин сам очищает код мусора). Также есть подсветка семантических ошибок сборки - дубли h1 тега на странице и вложенных друг в друга заголовков.- Улучшена поддержка будущего релиза Yootheme Pro 5 и редактора CodeMirror 6Плагин для русскоязычных пользователей доступен в каталоге расширений SovMart и распространяется за символическую плату (100р). Разработчики Joomla расширений и партнеры автора могут получить плагин бесплатно.Для работы плагина необходим конструктор страниц Yootheme Pro.Разработчик плагина - участник нашего сообщества Александр Судьбинов (@alexrevo), член официальной группы поддержки Yootheme Pro. Страница расширенияОписание на сайте автора@joomlafeed#joomla #yootheme

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

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
все зависит от модулей и компонентов которые вы используете.
1. Это используйте кеширование
2. Оптимизируйте структуру сайта.
3. Не используйте случайные материалы.
4. Выводите по 5-10 материалов на странице.
5. Включите отладку в общих настройках сайта. Оптимизируйте ваши запросы. От медленных избавляйтесь. Заменяя другими источниками вывода.
*

frag79

  • Давно я тут
  • 612
  • 61 / 0
Вот начало шаблона, каким я его использую вот уже год на различных проектах и, практически, без изменений. Ни разу ни одной ошибки естессно.
Код: html4strict
<?php defined('_JEXEC') or die;
if (JRequest::getVar('ajcom')) {?>
<jdoc:include type="component" />
<?php } else {
unset( $this->_scripts[$this->baseurl.'/media/system/js/mootools-core.js'],
$this->_scripts[$this->baseurl.'/media/system/js/mootools-more.js'],
$this->_scripts[$this->baseurl.'/media/system/js/core.js'],
$this->_scripts[$this->baseurl.'/media/system/js/caption.js'],
$this->_scripts[$this->baseurl.'/media/system/js/validate.js']
);
$this->_script = preg_replace('%window\.addEvent\(\'load\',\s*function\(\)\s*{\s*new\s*JCaption\(\'img.caption\'\);\s*}\);\s*%', '', $this->_script);
$templ = $this->baseurl."/templates/".$this->template;
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->language; ?>" lang="<?php echo $this->language; ?>" dir="<?php echo $this->direction; ?>" >
<head>
<jdoc:include type="head" />
...

Спасибо +1, только скобки одной } нехватает.

А зачем если не секрет проверка if (JRequest::getVar('ajcom'))
*

alex-143390

  • Захожу иногда
  • 92
  • 0 / 0
Подскажите способ оптимизации.

Вроде сделал всё правильно. Вставил в index.php

Спойлер
[свернуть]

Сайт всё равно грузится долго. Сканирвоал сайт. Вот такая инфа.
Page size
1.8MB
Load time
1.61s
Requests
91
Perf. grade
75/100

Хоть напсиано, что загрузка 1,61 секунды- страница долго грузится (около минуты) и всё это время белый экран, что-то подкгружает. Никак не могу найти что.
http://teatr-skazki.ru/
*

fastneed

  • Осваиваюсь на форуме
  • 10
  • 0 / 0
не заметил у вас проблем с загрузкой
Цитировать
The components are split over more than 4 domains
возможно что-то где-то лежало.
*

alex-143390

  • Захожу иногда
  • 92
  • 0 / 0
не заметил у вас проблем с загрузкой возможно что-то где-то лежало.
Сейчас отключил на время модуль меню Accordion Menu - Offlajn.com
Может дело в нём?
*

alex-143390

  • Захожу иногда
  • 92
  • 0 / 0
Дело в том, что ранее я нашел в этом модуле скрытие ссылки - удалил их .... Но думаю может где-то осталось что-то, что постоянно грузил. У этого модуля есть js.
При загрузке пишет, что это кеш - весит порядка 80 кб
*

olejenya

  • Захожу иногда
  • 218
  • 3 / 0
А можно написать такой плагин, который бы вырезал мне нужные джс и вставлял их в позицию перед закрывающим тегом </body> и при этом еще обьединить в один файл и как то оптимизировать?Так как это делают некоторые плагины по объединению джс. Они просто по умолчанию объединяют все.А мне надо конкретные файлы.Если можно то кто согласиться?
*

Dimrix

  • Новичок
  • 1
  • 0 / 0
Есть шаблон:
http://demo.hotjoomlatemplates.com/index.php?template=vortex
В нем используется jQuery. Так вот проблема в том, что когда я устанавливаю хоть демку хоть "помодульно" карусель работает неадекватно, а именно: когда кликаешь по иконке прокрутка в центр иконки не происходит, хотя на сайте разработчика становится активной иконка по которой был клик. Перебрал кучу параметров пробовал разные комбинации - у меня так не происходит + в Opera некорректно отображается а у разработчика с демкой опять же все ок. Может быть это из-за jQuery? !
*

artprog

  • Новичок
  • 5
  • 0 / 0
Установил плагин JB Library.
Плагин имеет много полезных настроек по отключению/подключению js библиотек, но:
он собирает весь js код и переносит его либо в head либо в подвал страницы (в зависимости от настройки).
А у меня в середине страницы есть карта yandex:
Код
<script type="text/javascript" charset="utf-8" src="//api-maps.yandex.ru/services/constructor/1.0/js/?sid=E5tSmIcqaBa_bmIdc-nXptZ2lgQaYRRG&width=750&height=450"></script>

И этот код он тоже перемещает в head, в результате карта у меня отображается либо в подвале, либо не отображается вообще. Как можно настроить вывод этого js скрипта на конкретный div ?
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
artprog какое отношение это имеет к данному топику. Создайте отдельную тему. Карта сайта в Яндексе привязывается не к расположению скрипта, а к определенному <div>
*

twister2013

  • Захожу иногда
  • 91
  • 3 / 0
С помощью плагина перенес js-скрипты в подвал, и они не работают после этого. Пробовал вовсе их убирать (так же с помощью плагина) и подключать  руками внизу и тоже самое.
Не знаю как решить эту проблему( Буду рад любым предложениям.
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
С помощью плагина перенес js-скрипты в подвал, и они не работают после этого.
Жмем F12 и смотрим в консоли ошибки
*

twister2013

  • Захожу иногда
  • 91
  • 3 / 0
Проблема решилась подключением библиотеки jquery
« Последнее редактирование: 01.11.2014, 10:35:13 от twister2013 »
*

Gerostrat

  • Захожу иногда
  • 374
  • 2 / 0
  • Свидетель чайной ложки
Почему может в шаблоне не работать
Спойлер
[свернуть]
unset не работает категорически, в какое место шаблона его не поставь...
*

jurassik

  • Давно я тут
  • 692
  • 52 / 1
Почему может в шаблоне не работать
Спойлер
[свернуть]
unset не работает категорически, в какое место шаблона его не поставь...
а без $this->baseurl.
сам шучу - сам смеюсь
*

Gerostrat

  • Захожу иногда
  • 374
  • 2 / 0
  • Свидетель чайной ложки
И без $this->baseurl., т.е. если просто написать ссылку типа http://site.ru/media/system/js/mootools-core.js, тоже не удаляет.

Шаблона два, на десктопную и мобильную версию, и некоторые JS хочу убрать в одной версии, а другие в другой. А оно не убирает и все ((
*

jurassik

  • Давно я тут
  • 692
  • 52 / 1
И без $this->baseurl., т.е. если просто написать ссылку типа http://site.ru/media/system/js/mootools-core.js, тоже не удаляет.

Шаблона два, на десктопную и мобильную версию, и некоторые JS хочу убрать в одной версии, а другие в другой. А оно не убирает и все ((
$this->baseurl.'/media/system/js/mootools-more.js' === 'http://site.ru/media/system/js/mootools-core.js'
сам шучу - сам смеюсь
*

Gerostrat

  • Захожу иногда
  • 374
  • 2 / 0
  • Свидетель чайной ложки
Я не понял, что Вы имеете в виду и что нужно сделать =)
*

jurassik

  • Давно я тут
  • 692
  • 52 / 1
Я не понял, что Вы имеете в виду и что нужно сделать =)
а без $this->baseurl.
сам шучу - сам смеюсь
*

Gerostrat

  • Захожу иногда
  • 374
  • 2 / 0
  • Свидетель чайной ложки
Да, и так тоже подставлялось и не удалялось.
Код
$this->baseurl.'/media/system/js/mootools-more.js' === 'http://site.ru/media/system/js/mootools-core.js'
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
О боже, зачем вы копируете каждую букву? jurassik хотел, чтобы вы просто убрали $this->baseurl:
Код: php-brief
<?php
unset($this->_scripts['/media/system/js/mootools-core.js'],
   $this->_scripts['/media/system/js/mootools-more.js'],
   $this->_scripts['/media/system/js/core.js'],
   $this->_scripts['/media/system/js/caption.js']);
$this->addScript('https://ajax.googleapis.com/ajax/libs/mootools/1.4.2/mootools-yui-compressed.js');
?>
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Gerostrat

  • Захожу иногда
  • 374
  • 2 / 0
  • Свидетель чайной ложки
Я не копировал. И да, варианты
$this->baseurl.'/media/system/js/mootools-more.js'
'http://site.ru/media/system/js/mootools-core.js'
'/media/system/js/mootools-core.js'
Все не работаю, скрипт подгружается.
*

jurassik

  • Давно я тут
  • 692
  • 52 / 1
а что выдает
Код
print_r($this->_scripts)
сам шучу - сам смеюсь
*

Gerostrat

  • Захожу иногда
  • 374
  • 2 / 0
  • Свидетель чайной ложки
Цитировать
print_r($this->_scripts)
Ничего не выдает вообще. Пусто.
« Последнее редактирование: 21.11.2015, 14:02:34 от Gerostrat »
*

jurassik

  • Давно я тут
  • 692
  • 52 / 1
Ничего не выдает вообще. Пусто.
если это так то и нечего удалять unset(), значит скрипты выводит другой массив см print_r($this)
сам шучу - сам смеюсь
*

Gerostrat

  • Захожу иногда
  • 374
  • 2 / 0
  • Свидетель чайной ложки
Вот что-то такое выдает.
Код
 [document] => JDocumentHTML Object
                                (
                                    ТУТ ВСЯКОЕ-РАЗНОЕ

                                    [_scripts] => Array
                                        (
                                            [/components/com_jcomments/js/jcomments-v2.3.js?v=12] => Array
                                                (
                                                    [mime] => text/javascript
                                                    [defer] =>
                                                    [async] =>
                                                )

                                            [/components/com_jcomments/libraries/joomlatune/ajax.js?v=4] => Array
                                                (
                                                    [mime] => text/javascript
                                                    [defer] =>
                                                    [async] =>
                                                )

                                            [https://ajax.googleapis.com/ajax/libs/mootools/1.4.5/mootools-yui-compressed.js] => Array
                                                (
                                                    [mime] => text/javascript
                                                    [defer] =>
                                                    [async] =>
                                                )

                                            [/media/system/js/caption.js] => Array
                                                (
                                                    [mime] => text/javascript
                                                    [defer] =>
                                                    [async] =>
                                                )

                                            [/plugins/content/extravote/assets/extravote.js] => Array
                                                (
                                                    [mime] => text/javascript
                                                    [defer] =>
                                                    [async] =>
                                                )

                                            [http://floristics.info/modules/mod_news_pro_gk5/interface/scripts/engine.mootools.js] => Array
                                                (
                                                    [mime] => text/javascript
                                                    [defer] =>
                                                    [async] =>
                                                )

                                        )
Ну, кроме кучи всего другого.
*

jurassik

  • Давно я тут
  • 692
  • 52 / 1
О боже, зачем вы копируете каждую букву? jurassik хотел, чтобы вы просто убрали $this->baseurl:
Код: php-brief
<?php
unset(
   $this->_scripts['/media/system/js/caption.js']
);
?>
эта часть должна отрабатывать, остальные скрипты отсутствуют в _scripts
сам шучу - сам смеюсь
*

Gerostrat

  • Захожу иногда
  • 374
  • 2 / 0
  • Свидетель чайной ложки
Спасибо, что морочитесь. Вот что получается. Прописал перед <head> в layout.php (у меня этот файл является шаблоном).
Код
<?php
unset($this->_scripts['/media/system/js/caption.js']);
?>
А в исходном коде страницы после обновления страницы с очисткой кеша и очисткой кеша в админке все равно присутствует
Код
<script src="/media/system/js/caption.js" type="text/javascript"></script>
По-моему, это не справедливо. :'(
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
1. Непонятно, почему print_r($this->_scripts) выдает пустой результат, а print_r($this) показывает непустое _scripts.
2.
А в исходном коде страницы после обновления страницы с очисткой кеша и очисткой кеша в админке все равно присутствует
Код
<script src="/media/system/js/caption.js" type="text/javascript"></script>
По-моему, это не справедливо. :'(
Ничего несправедливого в этом нет: этот скрипт вы могли подключить вручную в шаблоне.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Gerostrat

  • Захожу иногда
  • 374
  • 2 / 0
  • Свидетель чайной ложки
Он подключается, как и должен, наверное, в behavior.php
Я могу сбросить весь текст, который дает print_r($this). Можете глянуть?
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Оптимизация сайта

Автор joni

Ответов: 0
Просмотров: 2742
Последний ответ 22.07.2023, 17:10:11
от joni
Скрипт при закрытии сайта

Автор Mick_20

Ответов: 8
Просмотров: 3295
Последний ответ 14.06.2023, 18:40:20
от effrit
Не работает Вебвизор Яндекс из-за mootools

Автор MultiMatrix83

Ответов: 5
Просмотров: 4858
Последний ответ 01.03.2022, 14:40:23
от draff
Кнопка “Добавить в корзину” VirtueMart не работает на главной странице сайта

Автор max_max

Ответов: 0
Просмотров: 7666
Последний ответ 20.04.2021, 12:40:37
от max_max
[FAQ] Ускоряем загрузку сайта (руководства и инструменты)

Автор Fedor Vlasenko

Ответов: 117
Просмотров: 116674
Последний ответ 05.11.2020, 19:53:12
от Grigoriy82