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

mister_boy

  • Захожу иногда
  • 178
  • 2 / 0
A/B тестирование тайтлов
« : 04.01.2018, 00:36:37 »
Добрый день!

Никто не знает если ли какое нибудь расширение для Joomla которое может делать A/B тестирование названия страниц?
Искал - не нашел ;(

А WP есть такие:
Бесплатный - https://wordpress.org/plugins/wp-experiments-free/
Платный - https://wpexperiments.com/title-experiments-pro/

Хочу себе такой.
*

ProtectYourSite

  • Живу я здесь
  • 2366
  • 138 / 4
  • Безопасность вебсайтов
Re: A/B тестирование тайтлов
« Ответ #1 : 04.01.2018, 06:03:49 »
Не особо понятен принцип такого тестирования.
Если рандомный тайтл, то как  поисковики будут относиться к такому. Да и они не будут рандомно каждый раз отображать заголовок, закешируют на время и будут показывать одно и то же.
Так что не понятно зачем оно нужно.
*

dmitry_stas

  • Легенда
  • 13151
  • 1234 / 8
Re: A/B тестирование тайтлов
« Ответ #2 : 04.01.2018, 11:04:13 »
не, тут имеется в виду что люди в списке новостей например определяют для себя читать или нет - по заголовку этой новости.
Тут дарят бакс просто за регистрацию! Успей получить!
Все советы на форуме раздаю бесплатно, то есть даром. Индивидуально бесплатно консультирую только по вопросам стоимости индивидуальных консультаций
*

AlekVolsk

  • Гуру
  • 6913
  • 416 / 4
Re: A/B тестирование тайтлов
« Ответ #3 : 04.01.2018, 11:56:34 »
Хочу себе такой.
берем плаг от ВП и перепиливаем его на плаг J, логика уже готовая
*

ChaosHead

  • Гуру
  • 5242
  • 451 / 13
Re: A/B тестирование тайтлов
« Ответ #4 : 04.01.2018, 12:11:42 »
Логика немного не такая: всем кто читает статью меняется рандомно заголовок и проверяются поведенческие факторы, т.к. по мнению разработчиков - плохой заголовок может отбить желание читать статью. Теоретически плагин может чуть-чуть улучшить ваши навыки написания заголовков, если у вас с этим трудности.
Однако проблема в том, что поисковики проиндексируют какой-то один из этих заголовков и будут отображать его в выдаче и у человека может произойти несоответствие того, что он ожидал увидеть и что видит. И из-за этого может тоже быть плохая реакция на статью, а вы будете думать, что это из-за плохого заголовка :/
Так-же не учитывается, что каждый заголовок вам будет давать разную позицию в поисковиках и такое "мигание" может быть принято за автоматически генерируемый контент или что-то не совсем хорошее.
Однако авторы плагинов об этом умалчивают и выдают их за панацею, рисуя красивые (взятые с потолка) цифры по типу - увеличим вовлеченность читателей до 70%!
Эффект конечно есть, я не спорю, но он в пределах 1-5%, если у вас есть хоть какой-то опыт написания статей и заголовков, и вы не называете их по типу "Привет, Мир" или "Статья о всякой всячине".
Тот-же эффект можно получить написав несколько статей и посмотрев на их позиции, как на них переходят из поисковиков и далее делать в духе лучших.
Ну и никакой заголовок не поможет если в статье вода водой и рерайты других рерайтов.
« Последнее редактирование: 04.01.2018, 22:28:31 от ChaosHead »
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: A/B тестирование тайтлов
« Ответ #5 : 04.01.2018, 13:23:10 »
@ChaosHead всё говорит верно, но есть одно маленькое но! Для таких вещей, что бы тот же Google не воспринял что то как автоматически генерируемый контент есть такая штука в Google Analytics, как эксперименты! Делал что то подобное для определения какой вид кнопки привлекает больше пользователя!
В Google настраивалось несколько вариантов банально в стиле: site.ru/page_bla_bla.html?v=1...N и заходе на страницу Google сам решал какой вариант выдать..
минусы подхода в том что нужно во первых для каждой страницы настраивать эксперимент, во вторых для каждого эксперимента ставится свой скрипт!
*

ChaosHead

  • Гуру
  • 5242
  • 451 / 13
Re: A/B тестирование тайтлов
« Ответ #6 : 04.01.2018, 22:30:20 »
В Google настраивалось несколько вариантов банально в стиле: site.ru/page_bla_bla.html?v=1...N и заходе на страницу Google сам решал какой вариант выдать..
минусы подхода в том что нужно во первых для каждой страницы настраивать эксперимент, во вторых для каждого эксперимента ставится свой скрипт!
Не знал кстати про такую фичу, думал только в Adwords эксперименты есть. Надо будет попробовать, поэкспериментировать с дизайном. Спасибо.
*

Aleks.Denezh

  • Живу я здесь
  • 3401
  • 428 / 4
Re: A/B тестирование тайтлов
« Ответ #7 : 04.01.2018, 23:14:15 »
Не знал кстати про такую фичу, думал только в Adwords эксперименты есть. Надо будет попробовать, поэкспериментировать с дизайном. Спасибо.
вот тут:
Спойлер
[свернуть]
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Проблема с генерацией тайтлов

Автор tazhudin

Ответов: 3
Просмотров: 3088
Последний ответ 22.11.2008, 01:12:53
от Canonier