Новости Joomla

Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод...

Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод...

👩‍💻 Как триггерить события для плагинов на манер Joomla 5+?В Joomla 6 должны удалить метод triggerEvent(), с помощью которого раньше вызывались события для плагинов. Теперь чтобы в своём коде вызвать событие для плагина и получить от него результаты нужно:- создать объект класса события- передать в него параметры

use Joomla\CMS\Event\AbstractEvent;use Joomla\CMS\Factory;use Joomla\CMS\Plugin\PluginHelper;// Грузим плагины нужных группPluginHelper::importPlugin('system');// Создаём объект события$event = AbstractEvent::create('onAfterInitUniverse', [    'subject' => $this,    'data'    => $data, // какие-то данные    'article' => $article, // ещё материал вдовесок    'product' => $product, // и товаров подвезли]);// Триггерим событиеFactory::getApplication()->getDispatcher()->dispatch(    $event->getName(), // Тут можно строку передать 'onAfterInitUniverse'    $event);// Получаем результаты// В случае с AbstractEvent это может быть не 'result',// а что-то ещё - куда сами отдадите данные.// 2-й аргумент - значение по умолчанию, // если не получены результаты$results = $event->getArgument('result', []);
Плюсы такого подхода - вам не нужно запоминать порядок аргументов и проверять их наличие. Если вы написали свой класс события, то в плагине можно получать аргументы с помощью методов $event->getArticle(), $event->getData(), $event->getProduct() и подобными - реализуете сами под свои нужды. Если такой класс события написали, то создаёте экземпляр своего класса события и укажите его явно в аргументе eventClass
use Joomla\Component\MyComponent\Administrator\Event\MyCoolEvent;$event = MyCoolEvent::create('onAfterInitUniverse', [    'subject'    => $this,    'eventClass' => MyCoolEvent::class, // ваш класс события    'data'       => $data, // какие-то данные    'article'    => $article, // ещё материал вдовесок    'product'    => $product, // и товаров подвезли]);
Ожидаемо, что класс вашего события будет расширять AbsractEvent или другие классы событий Joomla.🙁 Есть неприятный нюанс - нельзя просто так вызывать событие и ничего не передать в аргументы. Аргумент subject обязательный. Но если вы всё-таки не хотите туда ничего передавать - передайте туда пустой stdClass или объект Joomla\registry\Registry.
@joomlafeed#joomla #php #webdev

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

gdX

  • Глобальный модератор
  • 995
  • 128 / 0
  • Открыт к заказам по дизайну
Подскажите, как лучше организовать ссылки на сайте, транслитом или правильным переводом слов?
Т. е. что лучше воспринимается поисковиками, moloko.html или milk.html?
*

antony2606

  • Давно я тут
  • 633
  • 46 / 4
  • Работаем!
Делайте транслитом, так логичнее и для ПС (для русской выдачи) и для людей


UPD. И для справки*:
чпу никак не влияет на поисковую выдачу и воспринимается в любом виде одинаково! чпу - на то и ЧЕЛОВЕКОПОНЯТНЫЙ URL

*можете попробовать оспорить это
« Последнее редактирование: 10.06.2014, 16:18:26 от antony2606 »
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Мне как-то заявили: "что, по русски написать не мог? переводи тогда!" С тех пор перевожу, пока никто не жаловался.
*

Sulpher

  • Живу я здесь
  • 2130
  • 402 / 16
  • Шаблоны и расширения Joomla
Мне как-то заявили: "что, по русски написать не мог? переводи тогда!" С тех пор перевожу, пока никто не жаловался.
А какая разница для конечного пользователя как выглядит URL? Он ведь использует для навигации меню. Слышал, что ЧПУ играет роль, так ли это подтвердить не могу, но обычно делаю транслитом русские слова.
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Современные пользователи привыкли к хрому, который реальный адрес вообще скрывает, а пишет что-то вроде: имя сайта -> содержимое h1 страницы (не знаю точно, как точно Chrome это делает, но вообще это, имхо, лучше любых чпу, и от самого сайта мало зависит, был бы h1=) ).
Пользователи с опытом 90-х смотрят на содержимое адресной строки куда гораздо чаще.
*

gdX

  • Глобальный модератор
  • 995
  • 128 / 0
  • Открыт к заказам по дизайну
Современные пользователи привыкли к хрому, который реальный адрес вообще скрывает, а пишет что-то вроде: имя сайта -> содержимое h1 страницы (не знаю точно, как точно Chrome это делает, но вообще это, имхо, лучше любых чпу, и от самого сайта мало зависит, был бы h1=) ).
Пользователи с опытом 90-х смотрят на содержимое адресной строки куда гораздо чаще.
Так как тема расположена в категории SEO, поэтому мне интересна организация ссылки для поисковиков, а не для посетителей сайта.
Посетителям вообще должно быть пофиг на ссылки.))
*

ELLE

  • Глобальный модератор
  • 4506
  • 893 / 0
Современные пользователи привыкли к хрому, который реальный адрес вообще скрывает, а пишет что-то вроде: имя сайта -> содержимое h1 страницы
наверное это не классический Chrome, а какая-то его вариация)
Спойлер
[свернуть]

 по теме - транслит
*

NortonFox

  • Захожу иногда
  • 441
  • 43 / 0
Так как тема расположена в категории SEO, поэтому мне интересна организация ссылки для поисковиков, а не для посетителей сайта.
У меня на одном сайте есть страница с отзывами от посетителей, адрес у нее такой — имя сайта/reviews (что в переводе конечно же — отзывы).
А в выдаче эта страница уже принимает адрес как - «отзывы». То есть поисковик хорошо понимает название страницы по ее URL.

Картинка 1


Картинка 1
Я знаю только то, что ничего не знаю
*

antony2606

  • Давно я тут
  • 633
  • 46 / 4
  • Работаем!
У меня на одном сайте есть страница с отзывами от посетителей, адрес у нее такой — имя сайта/reviews (что в переводе конечно же — отзывы).
А в выдаче эта страница уже принимает адрес как - «отзывы». То есть поисковик хорошо понимает название страницы по ее URL.

Картинка 1


Картинка 1


Это ничего не значит) Быстрая ссылка формируется с помощью тегов H1 и заголовка страницы
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
наверное это не классический Chrome, а какая-то его вариация)
Спойлер
[свернуть]
Сори, так делает я.браузер, я его вместо гуглохроиа для тестов юзаю - пошустрее будет.

Так как тема расположена в категории SEO, поэтому мне интересна организация ссылки для поисковиков, а не для посетителей сайта.
Посетителям вообще должно быть пофиг на ссылки.))
А разве поисковики сейчас смотрят на URL? Им как бы вроде подавай sitetitle+h1/h2
*

NortonFox

  • Захожу иногда
  • 441
  • 43 / 0
Re: Ссылки сайта. Транслит или перевод?
« Ответ #10 : 18.06.2014, 12:35:09 »
Это ничего не значит) Быстрая ссылка формируется с помощью тегов H1 и заголовка страницы
И то и то выглядит вот так "Отзывы об услугах компании «.......» - Доставка воды, кулеры для воды"
Я знаю только то, что ничего не знаю
*

ELLE

  • Глобальный модератор
  • 4506
  • 893 / 0
Re: Ссылки сайта. Транслит или перевод?
« Ответ #11 : 18.06.2014, 12:35:28 »
AlekVolsk, у каждого есть рекомендации, всё доступно в их хэлпах
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Ссылки сайта. Транслит или перевод?
« Ответ #12 : 18.06.2014, 12:57:26 »
И кстатии в рекомендациях Google намекают, что ЧПУ url не только для пользователей хорошо но лучше индексируются. Там можно использовать ключевики, которые может и не имеют большого веса но все же.. 
интернет-блог: http://websiteprog.ru
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Ссылки сайта. Транслит или перевод?
« Ответ #13 : 18.06.2014, 12:59:25 »
AlekVolsk, у каждого есть рекомендации, всё доступно в их хэлпах
Тогда, исходя из вашей реплики, ТС изначально не по адресу? Ему тогда сразу в хелпа поисковиков? Или я Вас неправильно понял?

И кстатии в рекомендациях Google намекают, что ЧПУ url не только для пользователей хорошо но лучше индексируются. Там можно использовать ключевики, которые может и не имеют большого веса но все же.. 
Ключевики в URL? Я опять что-то не понял? Разъясните, пожалуйста.
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Ссылки сайта. Транслит или перевод?
« Ответ #14 : 18.06.2014, 13:17:05 »
ну а что мешает в url указать ключевое слово, пусть и в транслите.. другое дело что лучше этим не злоупотреблять иначе будет выглядеть как переспам
интернет-блог: http://websiteprog.ru
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Ссылки сайта. Транслит или перевод?
« Ответ #15 : 18.06.2014, 13:20:01 »
Мне непонятно, как поисковик поймет, что часть URL - это ключевик, посредством get? или как?
*

zomby6888

  • Завсегдатай
  • 1473
  • 171 / 3
Re: Ссылки сайта. Транслит или перевод?
« Ответ #16 : 18.06.2014, 13:23:57 »
Думаешь поисковик не умеет парсить URL?) Я не знаю как они работают, да и никто не знает, но они настолько умные что читают даже javascript скрипты на cтранице я где то читал..
интернет-блог: http://websiteprog.ru
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: Ссылки сайта. Транслит или перевод?
« Ответ #17 : 18.06.2014, 13:38:09 »
В конгрессе штатов законопроект лежит, уже года три как, о вживлении в тело человека идентификационного чипа, тапа паспорт+вод.права и иже с ними... Как начнут вживлять - по вайфаю будут находить и днк считывать... И Google всем этим рулить будет, умный блин...

По теме: имхо, все же перевод, поисковики английский хорошо знают (гугл вообще на нем разговаривает), быстрее поймут, нежели транслит непереводимой национальной лексики (встречалось, однако).
*

ELLE

  • Глобальный модератор
  • 4506
  • 893 / 0
Re: Ссылки сайта. Транслит или перевод?
« Ответ #18 : 18.06.2014, 13:41:03 »
AlekVolsk, все зависит от того на какую аудиторию у вас контент. На аудиторию Google или яндекса, на англ или русскоязычный сегмент
Самый элементарный эксперимент как запросы "работа" и "job" воспринимаются этими поисковиками по-разному
*

Webb

  • Захожу иногда
  • 304
  • 19 / 2
  • rusinmd
Re: Ссылки сайта. Транслит или перевод?
« Ответ #19 : 18.06.2014, 23:28:35 »
Подскажите, как лучше организовать ссылки на сайте, транслитом или правильным переводом слов?
Т. е. что лучше воспринимается поисковиками, moloko.html или milk.html?
Если ресурс англоязычный milk, если рус - moloko.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как найти и определить сервис раскрутки сайта?

Автор Gosha5767

Ответов: 0
Просмотров: 5003
Последний ответ 08.07.2025, 17:19:50
от Gosha5767
Каким плагином можно закрыть внешние ссылки?

Автор gorbi_U

Ответов: 4
Просмотров: 2696
Последний ответ 25.02.2023, 02:29:35
от olegon
вопрос к решению из FAQ. Вместо отсутствия ссылки отсутствует название активного пункта меню

Автор Loh

Ответов: 5
Просмотров: 2363
Последний ответ 10.04.2022, 11:04:26
от fiksius
Google не индексирует страницы через ajax ссылки

Автор illimited

Ответов: 0
Просмотров: 1363
Последний ответ 31.03.2022, 23:53:05
от illimited
Как вывести в сниппете название статьи, а потом название сайта?

Автор gorbi_U

Ответов: 0
Просмотров: 1099
Последний ответ 18.01.2022, 18:29:22
от gorbi_U