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

TwistedAndy

  • Захожу иногда
  • 84
  • 23 / 1
Здравствуйте.

В данной теме я решил поделиться своими наработками по Joomla 1.5. Может кому-то пригодятся.


Недавно в процессе поискового продвижения сайта на Joomla 1.5 столкнулся с одной весьма серьезной проблемой встроенного механизма ЧПУ (SEF).

Суть проблемы заключается в том, что в Joomla одна и та же страница site.ru/news/tech/1-news.html, например, может быть доступна по очень многим адресам:

site.ru/index.php?option=com_content&view=article&id=22
site.ru/news/tech/1.html/
site.ru/news/2-tech/1-news.html
site.ru/1-news/2-tech/1dsfsdkgjdfgklhfdgjf
site.ru/home/1.html
site.ru/component/content/frontpage....

Проблема весьма серьезная. Аналогично и с категориями, с site.ru/, site.ru/index.php, с разделами и так далее.

Проблема, как видите, серьезная.

Особого желания играться с редиректами в htaccess у меня не было, robots.txt тоже не вариант. Ну закрою я в robots.txt site.ru/index.php, ну а что делать с вариантами вроде site.ru/news/2-tech/1-news.htgjfhgsldfjkgd ?

Как частичное решение ситуации можно было бы рассмотреть sh404SEF, но опять же. Это стороннее решение, оно все же снижает производительность и стабильность работы системы в целом, ИМХО.

Вот и стал я искать выход. Решение оказалось очень простым: нужно при генерации страницы раздела, категории, статьи, главной страницы сравнивать адрес в запросе с вычисленным адресом страницы в системе. Вычисляется он на основе расположения страницы в меню, на основании псеводонимов (alias), идентификаторов, а также на основании раздела/категории. Для одной страницы существует лишь один так называемый системный адрес. Он используется по-умолчанию при генерации ссылок в системе.

Если адрес в запросе не совпадает с системным адресом страницы, то движок с помощью 301 редиректа перебросит пользователя или поискового бота на нужную страницу. Таким вот образом дубли страниц оперативно склеиваются поисковиками по 301 редиректу.

Для лучшей совместимости эту проверку я вынес в код шаблона. Да, это прямое нарушение концепции MVC, но это все же лучше чем правка системных файлов ручками при каждом обновлении. Если кому-то решение не понравится - можете аналогичным образом поправить контроллер com_content.

Данный модуль был протестирован на Joomla 1.5.22 со стандартным ЧПУ и com_content. Данный модуль должен заработать и на 1.6.


Ссылки на код модуля с подробным описанием и установкой: скачать / скачать.

Большая человеческая просьба не перезаливать архивы на другие файлообменники и не публиковать код с описанием на других страницах без моего разрешения. Просто кидаете ссылки на архивы. Отнеситесь к этому с пониманием.
« Последнее редактирование: 13.03.2011, 17:13:58 от TwistedAndy »
*

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Ссылки нерабочие(((
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

TwistedAndy

  • Захожу иногда
  • 84
  • 23 / 1
исправил
*

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
А зачем два одинаковых файла? И это не модуль, это правка кода...  К тому же голый код в пдф засовывать... Ну, не знаю, проще было бы в txt формате дать.
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

TwistedAndy

  • Захожу иногда
  • 84
  • 23 / 1
А зачем два одинаковых файла? И это не модуль, это правка кода...  К тому же голый код в пдф засовывать... Ну, не знаю, проще было бы в txt формате дать.
Одна ссылка запасная, вторая резервная. В PDF текст выделять и копировать можно
*

AmiGator

  • Захожу иногда
  • 56
  • 3 / 0
проверил, работает! даже в паре с HPRouter.
Автору респектос!
давно меня бесила эта тема и странно, что за столько лет никто не решил ее. А нет варианта, чтобы на 404 перебрасывала, а не на страницы?
*

TwistedAndy

  • Захожу иногда
  • 84
  • 23 / 1
Можно и с 404 ошибкой.

Для этого нужно в модуле для статьи, например,

if ($this->article->readmore_link != JRequest::getURI()) JApplication::redirect($this->article->readmore_link);

заменить на

if ($this->article->readmore_link != JRequest::getURI()) {
header("HTTP/1.0 404 Not Found");
header('Location: /');
die();
}

Будет сгенерирована 404 ошибка с редиректом на главную. Аналогично делается и для других шаблонов.
*

pionerfm

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
доволен как удав *DRINK*
Спасибо.

« Последнее редактирование: 23.03.2011, 15:05:34 от pionerfm »
*

Chikir

  • Захожу иногда
  • 104
  • 1 / 0
Спасибо большое за данное решение, но есть проблема. Пожалуйста, подскажи что и где нужно дописать чтобы от него избавиться.

Страницы вида
http://www.сайт.ru/раздел/категория
так и остаются в  виде
http://www.сайт.ru/раздел/категория
а нужно
http://www.сайт.ru/раздел/категория.html
Как это сделать?
« Последнее редактирование: 24.03.2011, 20:36:30 от Chikir »
*

voldcher

  • Осваиваюсь на форуме
  • 16
  • 0 / 0
Время от времени Яндекс индексирует некоторые страницы с расширением htm вместо HTML. Иногда редирекчу 301м, но через какое-то время вылезают другие, тоже htm. Что за бред, никак не пойму...
*

Chikir

  • Захожу иногда
  • 104
  • 1 / 0
А у меня еще появилась индексе страница http://ввв.сайт.ru/2011-01-06-08-52-31.html, которая по содержимому является копией главной. Что за бред? Из какого она компонента? И как ее удалить не ясно. Может кто подскажет?
*

Chikir

  • Захожу иногда
  • 104
  • 1 / 0
Время от времени Яндекс индексирует некоторые страницы с расширением htm вместо HTML. Иногда редирекчу 301м, но через какое-то время вылезают другие, тоже htm. Что за бред, никак не пойму...
Действительно, данный глюк тоже замечал((
*

TwistedAndy

  • Захожу иногда
  • 84
  • 23 / 1
Спасибо большое за данное решение, но есть проблема. Пожалуйста, подскажи что и где нужно дописать чтобы от него избавиться.

Страницы вида
http://www.сайт.ru/раздел/категория
так и остаются в  виде
http://www.сайт.ru/раздел/категория
а нужно
http://www.сайт.ru/раздел/категория.html
Как это сделать?
В настройках ЧПУ расширение HTML указано?

А у меня еще появилась индексе страница http://ввв.сайт.ru/2011-01-06-08-52-31.html, которая по содержимому является копией главной. Что за бред? Из какого она компонента? И как ее удалить не ясно. Может кто подскажет?
Пропишите для той страницы псевдоним.
*

skai

  • Завсегдатай
  • 1198
  • 153 / 1
  • skaiseo
после такого хака главная будет иметь адрес http://site.ru/glavnaya , тоесть просто http://site.ru всегда будет переадресовываться на http://site.ru/glavnaya.. неуверен что это хорошее решение. отныне адреса http://site.ru просто небудет существовать в индексе.

сорри - затупил. хорошее решение - тестим.
« Последнее редактирование: 04.04.2011, 12:29:00 от skai »
Наполнение вашего сайта - 1т.р. стр. (текст, изображения, мета, перелинковка). Гарантия высокого ранжирования. SEO консультация в подарок.
----------------------------------------------------------------------------------------------
*

Sobriquet-ChKA

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
В настройках ЧПУ расширение HTML указано?
Да. но уже убрал суффиксы. Получается та же страница доступна по адресам:
http://www.сайт.ru/раздел/категория
и
http://www.сайт.ru/раздел/категория/

 
*

mksm80

  • Осваиваюсь на форуме
  • 19
  • 0 / 1
у меня почему-то не работает((
после добавления кода в файлы - появляется белый экран (я понимаю проблемы с php)
после удаления добавленного куска всё работает
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Отличное решение. На скорую руку поганял - работает. +
В закладки однозначно :)
Создание сайтов, шаблонов, помощь в решении проблем.
*

mksm80

  • Осваиваюсь на форуме
  • 19
  • 0 / 1
люди, подскажите как можно установить? Не получается, выскакивает белый экран и всё...
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
люди, подскажите как можно установить? Не получается, выскакивает белый экран и всё...
Если вы просто копируете с файла, там перенос строки получается на -
>
А нужно так ->
Создание сайтов, шаблонов, помощь в решении проблем.
*

mksm80

  • Осваиваюсь на форуме
  • 19
  • 0 / 1
Огромнейшая благодарность автору за единственное достойное пока решение по склейке дублей)))  и Efanych за быстрый отклик и помощь в настройке. +
*

pionerfm

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
Столкнулся с проблемой, у меня один сайт заканчивается на /
Соответственно в .htaccess прописано:
RewriteCond %{REQUEST_URI} (.*/[^/.]+)($|\?)
RewriteRule .* %1/ [R=301,L]

И если добавить предложенный код в article  (<?php defined('_JEXEC') or die('Restricted access');
if ($this->article->readmore_link != JRequest::getURI()) JApplication::redirect($this->article->readmore_link);
?> )  то получаю бесконечное перенаправление.
Если это правило закоментирую то все нормально перенаправляется, но сайт уже проиндексирован с /
Подскажите кто может, как вылечить?

А на Joomla 1.6 данные изменения работают?
*

TwistedAndy

  • Захожу иногда
  • 84
  • 23 / 1
Подскажите кто может, как вылечить?
Добавляем . '/' в условие по сравнению ссылок

<?php defined('_JEXEC') or die('Restricted access');
if ($this->article->readmore_link . '/' != JRequest::getURI()) JApplication::redirect($this->article->readmore_link);
?>

Может заработает.

А на Joomla 1.6 данные изменения работают?
По идее должны.
*

pionerfm

  • Осваиваюсь на форуме
  • 13
  • 0 / 0
TwistedAndy

Спасибо огромное. *DRINK* Работает.
*

neitrino

  • Новичок
  • 3
  • 0 / 0
А на Joomla 1.6 данные изменения работают?
В /templates/название_вашего_шаблона/html/com_content/article/default.php после
Код
// no direct access
defined('_JEXEC') or die;
добавляем
Код
if ($this->item->readmore_link != JRequest::getURI()) JApplication::redirect($this->item->readmore_link);
И все...
В категориях и так редиректит на 404, т.е. достаточно только этой строчки чтобы склеить сразу все дубли. В чем подвох ;D?
*

Sobriquet-ChKA

  • Осваиваюсь на форуме
  • 11
  • 0 / 0
TwistedAndy
Как через php сделать, чтобы страницы, заканчивающиеся на "/" и на ".html" выдавали 404? Чтобы при этом не пострадали страницы находящиеся на следующем уровне
*

VP

  • Захожу иногда
  • 72
  • 5 / 0
не работает.
Joomla 1.5.21
Сделал все как указано в прикрепленном файле, при переносе кусков кода следил, чтобы не было неправильных переносов строк.
Главная страница открывается, но ни одна ссылка не работает везде пишет "бесконечное перенаправление".
*

Efanych

  • Глобальный модератор
  • 4683
  • 644 / 0
  • Меняю свою жизнь на 360°!
Цитировать
везде пишет "бесконечное перенаправление".
А SEF включён?
Создание сайтов, шаблонов, помощь в решении проблем.
*

VP

  • Захожу иногда
  • 72
  • 5 / 0
А SEF включён?
да, включен стандартный джумловский.
*

TwistedAndy

  • Захожу иногда
  • 84
  • 23 / 1
TwistedAndy
Как через php сделать, чтобы страницы, заканчивающиеся на "/" и на ".html" выдавали 404? Чтобы при этом не пострадали страницы находящиеся на следующем уровне
На уровне htaccess делайте

не работает.
Joomla 1.5.21
Сделал все как указано в прикрепленном файле, при переносе кусков кода следил, чтобы не было неправильных переносов строк.
Главная страница открывается, но ни одна ссылка не работает везде пишет "бесконечное перенаправление".
Значит проверяйте ваш htaccess и почему происходит перенаправление.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Не работают SEF-ссылки на Joomla 5

Автор Detonator

Ответов: 2
Просмотров: 3528
Последний ответ 29.03.2025, 07:26:44
от azm1n
Расширение SEF Wizard — улучшение маршрутизации и ЧПУ в Joomla! Инструменты SEO - администратора

Автор Филипп Сорокин

Ответов: 525
Просмотров: 58967
Последний ответ 22.10.2022, 12:14:38
от Lemonez
Как убрать ID из URL Joomla 3?

Автор SaxMusicOnly

Ответов: 142
Просмотров: 63114
Последний ответ 02.03.2021, 14:47:35
от Vasiliy111
Редирект со страниц *.php на главную через htaccess ~

Автор kiev

Ответов: 0
Просмотров: 3125
Последний ответ 07.02.2021, 15:29:04
от kiev
Как прописать "canonical" для всех страниц с поддомена на домен?

Автор misteri27

Ответов: 11
Просмотров: 7216
Последний ответ 12.09.2020, 10:41:07
от webzepa