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

rsn

  • Давно я тут
  • 520
  • 34 / 3
Коллеги, привет.

Бывают ситуации, когда в seo целях заголовок (header) h1 на странице категории нужно вывести не тот, который является названием категории.
Например, подкатегория называется "Встроенные", а заголовок h1 нужно вывести "Встроенные светильники".
В актуальной на сегодняшний день версии VirtueMart такого переопределения h1 не предусмотрено разработчиком.
Хотя title переопределять можно, в настройках категории.

Хотелось бы поинтересоваться, сталкивался ли кто-нибудь с необходимостью такого кастомного переопределения h1.
И если да, то как решали?

Есть одна идея. Если вариантов получше не встречу, то реализую и поделюсь.
« Последнее редактирование: 14.09.2018, 16:28:49 от rsn »
Возможно, будет интересно: Интеграция с Ozon
*

rsn

  • Давно я тут
  • 520
  • 34 / 3
Итак, поделюсь решением
(как минимум для себя же самого на будущее, а может ещё кому пригодится)

Но сначала хочу отметить другое попавшееся в сети решение:
Произвольный заголовок H1 в категории VirtueMart [ссылка на помойку]
Сам его не пробовал. Возможно, неплохое, но одно НО сразу побуждает не идти по этому пути - это модификация компонента. То есть при обновлениях будет затираться. В общем не идеал.

Поэтому сделал по-своему. Если вкратце, принцип такой:

В админке нет специального поля, где можно было бы хранить произвольный заголовок H1.
Поэтому данный заголовок напишем прямо в описании категории.
Сделаем его в редко используемом (но присутствующем в стандартном редакторе) теге <pre> (preformatted).





Почему, собственно, не в теге <h1>?
Потому что когда попробовал для этого тег <h1> - в админке на странице Категории (в таблице там выводится описание) такими огромными буквами стал этот заголовок выводится, в общем неудобно.
Также есть ещё ряд моментов.
В итоге счёл, что лучше взять тег <pre>.

Затем в шаблоне вывода категории перед тем, как выводить заголовок, проанализируем есть ли <pre> в описании. Если есть то из <pre> возьмём заголовок. А оставшаяся часть описания (если есть) будет обычным описанием категории.
По аналогии нужно поправить часть шаблона отвечающую за вывод подкатегорий в категории.

Так вот. В шаблоне вывода категории, там, где идет вывод заголовка и описания (у меня это, кстати, вверху, по умолчанию почему-то не вверху) заменил таким кодом:

Код

if (!empty($this->category->category_name)) { // если это не верхний уровень
    if (!empty($this->category->category_description)) { // если у категории есть текстовое описание
        preg_match('/\<pre[^>]*\>([^<]*)\<\/pre[^>]*\>/is', $this->category->category_description, $matches_pre);
        if (!empty($matches_pre[1])) { // если название из тега <pre> в описании не пустое ?>
            <h1><?php echo vmText::_($matches_pre[1]); ?></h1>
        <?php }
        else { ?>
            <h1><?php echo vmText::_($this->category->category_name); ?></h1>
        <?php }
    } else { ?>
            <h1><?php echo vmText::_($this->category->category_name); ?></h1>
    <?php }
} else if (empty($this->category->virtuemart_category_id)) { ?>
    <h1><?php echo vmText::_('Каталог'); ?></h1>
<?php }

// Описание
if ($this->show_store_desc and !empty($this->vendor->vendor_store_desc)) { ?>
    <div class="vendor-store-desc">
        <?php echo $this->vendor->vendor_store_desc; ?>
    </div>
<?php }
if (!empty($this->showcategory_desc) and empty($this->keyword)) {
    if (!empty($this->category)) { ?>
        <div class="category_description">
            <?php
            $catDesc = preg_replace('/\<pre[^>]*\>[^<]*\<\/pre[^>]*\>/is', '', $this->category->category_description);
            echo $catDesc;
            ?>
        </div>
    <?php }

    if (!empty($this->manu_descr)) { ?>
        <div class="manufacturer-description">
            <?php echo $this->manu_descr; ?>
        </div>
    <?php }
}


Объясняю не очень подробно, но суть вы, наверняка, уловили, кто немного понимает в php.

Также ещё хочу и сделаю дополнительное описание которое будет выводится на странице категории внизу (под товарами). Храниться будет там же, в стандартном описании. Разделение думаю сделать горизонтальной линией, тегом <hr />. Думаю он для этого вполне подойдёт.
То есть та часть описания, что будет выше <hr />, это будет верхнее короткое описание, одинаковое для всех страниц пагинации. А та часть описания, что будет ниже <hr />, это будет нижнее описание (которое будет выводится только на 1-й странице пагинации).

Разумеется, данному варианту решения (на уровне шаблона) не страшны обновления ни самой Joomla, ни компонента VirtueMart (до поры до времени, конечно).
 ;)
« Последнее редактирование: 24.09.2018, 21:12:00 от fsv »
Возможно, будет интересно: Интеграция с Ozon
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Расчёт стоимости товара в VirtueMart за периметр

Автор NIKOLY

Ответов: 0
Просмотров: 544
Последний ответ 04.07.2025, 09:18:31
от NIKOLY
Не отображаются товары в категории

Автор iZacNT

Ответов: 0
Просмотров: 2360
Последний ответ 23.06.2023, 12:20:49
от iZacNT
VirtueMart 3 Отображать только товары в наличии!

Автор GaziroFFka

Ответов: 4
Просмотров: 4074
Последний ответ 06.06.2023, 13:55:13
от Akeksandr
SP VirtueMart Category Search

Автор ve1006

Ответов: 10
Просмотров: 7959
Последний ответ 18.01.2023, 10:39:10
от AzMandius
Как вывести модуль в страницу VirtueMart?

Автор harddrop

Ответов: 11
Просмотров: 4957
Последний ответ 13.11.2022, 13:11:37
от Evgen Kulibin