Новости Joomla

Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1

Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1

👩‍💻 Joomla 6 нуждается в вашей помощи с тестированием.Вышел недавно релиз Joomla 6 alpha1. Это релиз, в который включены уже проверенные изменения, но ещё очень многие исправления и улучшения ждут своей очереди. Joomla следит за качеством и безопасностью своего кода и каждое изменение должно быть успешно протестировано как минимум ещё двумя участниками сообщества. Разработка Joomla ведётся на платформе GitHub.Филипп Уолтон (Philip Walton) - один из разработчиков, кто активно вносит свой вклад в ядро Joomla. Он уже несколько месяцев посвящает свои послеполуденные часы пятницы работе с Joomla и предлагает присоединиться к нему. 📆 Пятница, 30 мая 2025, с 15:00 до 17:00 по UTC (Лондон) - с 18:00 до 20:00 по Москве.В чате Google Meet Филипп готов помочь с тестированием тем, кто будет делать это в первый раз. А так же он подготовил список лёгких Pull Request, которые можно протестировать довольно быстро. Чем больше тестов будет проведено сейчас, тем меньше ошибок вылезет потом. На данный момент 148 (уже 147 на момент написания заметки) PR на GitHub Joomla ждут тестирования.👩‍💻 Open to all. All together.Также вам поможет сделать первые шаги это видео.GitHub JoomlaДа, это вечер пятницы. Но тестирование занимает порой минут 15, а доброе дело сделано. Просто убедитесь, что разработчик чего-то не пропустил и всё работает как ожидается.#joomla #joomla6 #community

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

AmdAveO

  • Захожу иногда
  • 165
  • 43 / 2
Что такое каноническая страница? Зачем нужно указывать rel="canonical"?
Спойлер
[свернуть]

Сегодня в первый раз открыл для себя Joomla 3.х (сказывается отсутствие времени). Подтолкнула меня к этому Taatshi.

Вобщем поставил себе тестовую версию тройки и понял, что незря отношусь с недоверием к разного рода плагинам.
В этой версии Joomla добавлена генерация ссылки canonical при помощи системного sef-плагина.
Похвальное начинание НО, результат плачевный. Во всех тестовых материалах, где я нашел ссылку canonical, была прописана ссылка на раздел материала, а не на сам материал.
В плане поисковой оптимизации это тихий ужас. Поисковики просто выкинут страницы материалов и оставят в индексе только страницы разделов. (Если конечно я в этом что-то понимаю)

Насколько я знаю, эта ошибка уже упомянута в багтрекере разработчиков, и однажды будет исправлена.
А пока суд да дело, я решил использовать проверенный на предыдущих версиях способ генерации canonical в шаблонах материалов, и поделиться с теми, кому это пригодится.
Тем более, что шаблоны мало зависят от обновлений с последующими сюрпризами.

Приступим.

Ссылка Canonical для главной страницы.
Внимание! Этот шаг не обязателен. Его можно использовать если на главной странице используется стандартный компонент материалов com_content.
Открываем файл templates/МОЙ ШАБЛОН/index.php
Спойлер
[свернуть]

Ссылка Canonical для страниц компонента материалов (com_content)
Открываем файл templates/МОЙ ШАБЛОН/html/com_content/archive/default.php
Спойлер
[свернуть]

Открываем файл templates/МОЙ ШАБЛОН/html/com_content/article/default.php
Спойлер
[свернуть]

Открываем файл templates/МОЙ ШАБЛОН/html/com_content/categories/default.php
Спойлер
[свернуть]

Открываем файл templates/МОЙ ШАБЛОН/html/com_content/category/blog.php
Спойлер
[свернуть]

Открываем файл templates/МОЙ ШАБЛОН/html/com_content/category/default.php
Спойлер
[свернуть]

Открываем файл templates/МОЙ ШАБЛОН/html/com_content/featured/default.php
Спойлер
[свернуть]

//------------------------------------------------------------------------------------------------------------------------------------------//

Для тех у кого нет файлов-шаблонов в templates/МОЙ ШАБЛОН/html/com_content/ и они не знают где их взять
Спойлер
[свернуть]

Не забываем!
1. Следить за обновлениями поста. Возможны правки!
2. Нашли ошибку? Пишите сюда, попробуем разобраться.
3. При обновлении заменяем весь код находящийся между строками
Код
// ------------ Start Canonical-Mod
и
Код
// ------------ End Canonical-Mod
« Последнее редактирование: 25.10.2012, 22:09:16 от AmdAveO »
Просить не буду! Сами дадите, когда совесть замучает. R336340187313
*

Taatshi

  • Гуру
  • 5258
  • 481 / 2
  • Верстаем и кодим. Обращайтесь ;)
Артур, ты забыл написать, как избавляться от родного rel canonical

У новичков могут возникать вопросы по этому поводу.
ВЕРСТКА, САЙТЫ ПОД КЛЮЧ, УДАЛЕНИЕ ВИРУСОВ, МИГРАЦИЯ НА JOOMLA 3, ОБНОВЛЕНИЕ  |  ОТЗЫВЫ 
Связь: telegram - Taatshi, почта - Taatshi на яндексе, Skype - Taatshi
*

AmdAveO

  • Захожу иногда
  • 165
  • 43 / 2
Лена, родной canonical сбрасывается автоматом.
Эти строки в коде
Код
// Удаляем ссылку каноникал добавленную системным sef-плагином
foreach (JFactory::getDocument()->_links as $key=>$link) {
if (($link['relation'] == 'canonical')) {
unset(JFactory::getDocument()->_links[$key]);
break;
}
}

Цитата: frisian
1. как бы ничего что даже разработчики не рекомендуют сейчас использовать Joomla 3 на боевых проэктах?
Да как бы и ничего. Только зачем тогда в народ выкладывать, да еще релизом называть?
Или ты тут в защитников решил поиграть? Только я не прокурор. ::)

Цитата: frisian
2. Почему не написать свой плагин? зачем столько лишних телодвижений?
За чем дело стало? Пиши свой плагин и не будет лишних телодвижений. ;)
Просить не буду! Сами дадите, когда совесть замучает. R336340187313
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
AmdAveO Ссылка Canonical для главной страницы
JSite::getMenu()->getActive() == JSite::getMenu()->getDefault()
Правильно так:
JSite::getMenu()->getActive()->id == JSite::getMenu()->getDefault()->id
и опять же это частный случай. если ссылка будет формироваться с использованием  query строки то и контент может быть разный. И не обязательно материалом. Мы же данному контенту, может быть совсем разному и не связанному задаем canonical
Далее $docstart = JRequest::getInt('start',0);
А если не start. Компоненты разные бывают и могут использовать разную пагинацию. Вместо JRequest следует мне кажется использовать JInput
$doc->addHeadLink($link, 'canonical'); И плагин тогда стоит отключать родной.
Без каких либо обид. Но плагин здесь уместнее. А делать смысла нет. Разработчики надеюсь сами исправят
*

AmdAveO

  • Захожу иногда
  • 165
  • 43 / 2
frisian, тут как бы два варианта развития событий
1. Тебе оно надо и ты берешь.
2. Тебе оно НЕ надо и ты НЕ берешь.
Как я вижу с выбором у тебя проблем не возникло. Так в чем еще проблемы, у тебя что-то отобрали?

Poznakomlus
Конструктивно.
Можно с id, можно и без. Хотя согласен, с id будет более правильно.
В JInput не вижу особой выгоды. А она есть?
Да, по поводу пагинатора на главной тоже думал, но поскольку речь идет о родном компоненте материалов Joomla, решил его оставить.
Сделаю пометку о других компонентах.

Еще раз о плагине.
1. Он уже есть. Его исправление это вопрос времени.
2. Плагины зависят от приоритета их исполнения. Сдается мне, что это и есть причина косяка в родном плагине. Хотя, могу и ошибаться.
3. Не известно как поведет себя такой плагин с другими компонентами. Не появится ли например в ZOO, две разных ссылки canonical?

Вобщем, у кого есть желание и время, делайте плагин, или дорабатывайте уже имеющийся. Я всегда за!
Только пустословием заниматься не стоит.
Просить не буду! Сами дадите, когда совесть замучает. R336340187313
*

Langoliers

  • Давно я тут
  • 621
  • 67 / 2
  • Если б Я изучал людей, то был бы паразитологом
Большое спасибо! А то у меня пять страниц из индекса выпало, и хоть Я их добавил в вебмастере снова, вовсе убрав rel="canonical" из плагина, восстанавливаются они уже неделю. Такое ощущение, что Яндекс вообще в последнее время работать не хочет.
frisian, ну так напишите плагин, чего хейтера включаете то? Или скажите как родной исправить. Человек в любом случае старался, так что по моему тут не оскорблять надо, а скорее (если это нужно) поправить.
*

AmdAveO

  • Захожу иногда
  • 165
  • 43 / 2
Из всего написанного тобой, я пока вижу толк только в этом
Цитата: frisian
ну кроме того что скоро JRequest вообще будет удален наверно выгоды нет..
За что тебе огромное спасибо!
Каюсь, я не живу в багтрекере Joomla, и не слежу за их новостями. Как-то вот так сложилось.

Есть еще толковые предложения?
« Последнее редактирование: 24.10.2012, 22:35:13 от ELLE »
Просить не буду! Сами дадите, когда совесть замучает. R336340187313
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
frisian не горячись. Веришь я здесь усмотрел применение твоей строчки кода
if(JMenuSite::getInstance('site')->getActive()->home) здесь наверно ей самое место для первого случая
*

AmdAveO

  • Захожу иногда
  • 165
  • 43 / 2
Poznakomlus
Уверен, что все пользователи используют "home" в качестве алиаса для главной страницы? Я встречал и другие.
Или тут "JMenuSite::getInstance('site')->getActive()->home" не спрашивается алиас?
Может всетаки тут подсмотреть?
« Последнее редактирование: 25.10.2012, 13:25:28 от AmdAveO »
Просить не буду! Сами дадите, когда совесть замучает. R336340187313
*

AmdAveO

  • Захожу иногда
  • 165
  • 43 / 2
Цитата: Poznakomlus
AmdAveO смотрите FAQ форума Joomla 2.5 - проверка на главную страницу
Уже смотрел. Правда не увидел пока причины того, почему это if ($menu->getActive()!= $menu->getDefault()) не работает.
Я сейчас говорю не о том, что лучше, а о том, в каких случаях оно не работает. Кручу это условие на локале и проблемы пока не встретил.

Цитата: Poznakomlus
AmdAveO смотрите FAQ форума Joomla 2.5 - проверка на главную страницу
кто сказал, что это алиас <?php echo '<pre>'.var_dump(JMenuSite::getInstance('site')->getActive()).'</pre>'; ?>
Никто не сказал. Я спросил.

Цитата: Poznakomlus
техническая информация которую вы привели не актуальная
Это просто утверждение или факт?

Цитата: Poznakomlus
ну и вы должны понимать, что вам не главная нужна а все страницы которые "цепляются" к активному меню главной
Стал бы я спрашивать про алиас не понимая этого?

Не имеет абсолютно никакого смысла. Хозяин сайта сам должен решать какой странице добавить тег (на подобии description)
Абсолютно не согласен с этим.
Я знаю с десяток авторов которых абсолютно не волнует техническая сторона работы.
Некоторых не заставишь и description прописать, а не то чтобы еще делать выбор ссылки canonical.
Тут просто нужно сделать возможным выбор подключения/отключения canonical в плагине.
Просить не буду! Сами дадите, когда совесть замучает. R336340187313
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Наверно стоит объяснить почему порнография.
1. С каких таких побуждений мы привязываем ссылки к меню
2. Может стоит посмотреть в меню как ссылки формируются. Найди 3 отличия
Открываем файл templates/МОЙ ШАБЛОН/html/com_content/categories/default.php
...
JFactory::getDocument()->addHeadLink('http://' . $_SERVER['SERVER_NAME'] . JRoute::_(ContentHelperRoute::getCategoryRoute($this->parent->id)). $docpagenr, 'canonical', 'rel', '');
...
Открываем файл templates/МОЙ ШАБЛОН/html/com_content/category/blog.php
...
JFactory::getDocument()->addHeadLink('http://' . $_SERVER['SERVER_NAME'] . JRoute::_(ContentHelperRoute::getCategoryRoute($this->category->id)). $docpagenr, 'canonical', 'rel', '');
...
Открываем файл templates/МОЙ ШАБЛОН/html/com_content/category/default.php
...
JFactory::getDocument()->addHeadLink('http://' . $_SERVER['SERVER_NAME'] . JRoute::_(ContentHelperRoute::getCategoryRoute($this->category->id)). $docpagenr, 'canonical', 'rel', '');
*

AmdAveO

  • Захожу иногда
  • 165
  • 43 / 2
Poznakomlus
Это объяснение или просто вопросы без вопросительных знаков?
Честно говоря, не понятна их цель.
Просить не буду! Сами дадите, когда совесть замучает. R336340187313
*

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
это говорит о том, что вы привели решение совсем не понимая, что и о чем пишите
разберитесь для начала как формируются ссылки в Joomla потом выдавайте их за решения
Ссылка на документ может формироваться по разному.
Документ привязан к меню(ваш вариант). Категория/документ(ContentHelperRoute::getArticleRoute($id, $catid, $this->language);)? документ ('index.php?option=com_content&view=article&id='.$id)
Так вот, два последних варианта наиболее больше соответствуют каноническим ссылкам/ Но это никак не вариант сменю. Про категории уже написал выше
*

Taatshi

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

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Канонические ссылки для Joomla 3

Плагин специально повесил на событие onBeforeCompileHead, чтобы не отслеживать порядок размещения по отношению к системному. Он обрабатывает onAfterRoute() (системный). Присоединяйся, ведь плагин нужен будет всем. Конструктивная критика всегда приветствуется
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Помогите с БАГом в панели администратора Joomla 3

Автор akteon25

Ответов: 2
Просмотров: 1045
Последний ответ 26.02.2025, 16:41:56
от akteon25
Версии РНР и Joomla 3

Автор Ebelous

Ответов: 8
Просмотров: 2822
Последний ответ 27.01.2025, 20:38:45
от pavelrer
Trouble Upgrading from Joomla 3.8 to 3.9

Автор melissa00

Ответов: 0
Просмотров: 1662
Последний ответ 26.07.2024, 10:03:51
от melissa00
SP polls в Joomla 3.8.2

Автор wawont

Ответов: 2
Просмотров: 3325
Последний ответ 22.02.2024, 21:03:15
от Zegeberg
Исправление уязвимости в Joomla 3.10.12

Автор Sulpher

Ответов: 8
Просмотров: 3008
Последний ответ 12.01.2024, 22:15:52
от stepan39