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

Chigolberi

  • Захожу иногда
  • 464
  • 12 / 0
Подскажите как убрать крокозябры ?

*

valagoff

  • Давно я тут
  • 984
  • 110 / 0
Re: Как убрать крокозябры JCE 1.5.7.4 ?
« Ответ #1 : 15.06.2010, 14:14:07 »
Сохранить языковой файл в кодировке UTF-8 without BOM
*

Chigolberi

  • Захожу иногда
  • 464
  • 12 / 0
Re: Как убрать крокозябры JCE 1.5.7.4 ?
« Ответ #2 : 15.06.2010, 14:15:56 »
Сохранить языковой файл в кодировке UTF-8 without BOM
Неподскажиш где он находитса ? Зарание спасибо !
*

Chigolberi

  • Захожу иногда
  • 464
  • 12 / 0
Re: Как убрать крокозябры JCE 1.5.7.4 ?
« Ответ #3 : 15.06.2010, 17:02:48 »
Помогите, неукого такой хрени нет что ли ?
*

valagoff

  • Давно я тут
  • 984
  • 110 / 0
Re: Как убрать крокозябры JCE 1.5.7.4 ?
« Ответ #4 : 15.06.2010, 17:17:06 »
Вот языковые файлы от 1.5.3. Устанавливаются через установка/удаление

[вложение удалено Администратором]
*

Chigolberi

  • Захожу иногда
  • 464
  • 12 / 0
Re: Как убрать крокозябры JCE 1.5.7.4 ?
« Ответ #5 : 15.06.2010, 17:19:56 »
Вот языковые файлы от 1.5.3. Устанавливаются через установка/удаление

Непомогло
*

valagoff

  • Давно я тут
  • 984
  • 110 / 0
Re: Как убрать крокозябры JCE 1.5.7.4 ?
« Ответ #6 : 15.06.2010, 17:23:42 »
Задай кодировку на сайте жестко через .htaccess:
Код
AddDefaultCharset utf-8
*

Chigolberi

  • Захожу иногда
  • 464
  • 12 / 0
Re: Как убрать крокозябры JCE 1.5.7.4 ?
« Ответ #7 : 15.06.2010, 17:24:44 »
Задай кодировку на сайте жестко через .htaccess:
Код
AddDefaultCharset utf-8
А в каком мести вставить строку ?
Код
##
# @version $Id: htaccess.txt 13415 2009-11-03 15:53:25Z ian $
# @package Joomla
# @copyright Copyright (C) 2005 - 2008 Open Source Matters. All rights reserved.
# @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
# Joomla! is Free Software
##


#####################################################
#  READ THIS COMPLETELY IF YOU CHOOSE TO USE THIS FILE
#
# The line just below this section: 'Options +FollowSymLinks' may cause problems
# with some server configurations.  It is required for use of mod_rewrite, but may already
# be set by your server administrator in a way that dissallows changing it in
# your .htaccess file.  If using it causes your server to error out, comment it out (add # to
# beginning of line), reload your site in your browser and test your SEF url's.  If they work,
# it has been set by your server administrator and you do not need it set here.
#
#####################################################

##  Can be commented out if causes errors, see notes above.
Options +FollowSymLinks

#
#  mod_rewrite in use

RewriteEngine On

########## Begin - Rewrite rules to block out some common exploits
## If you experience problems on your site block out the operations listed below
## This attempts to block the most common type of exploit `attempts` to Joomla!
#
## Deny access to extension XML files (uncomment out to activate)
#<Files ~ "\.xml$">
#Order allow,deny
#Deny from all
#Satisfy all
#</Files>
## End of deny access to extension XML files
RewriteCond %{QUERY_STRING} mosConfig_[a-zA-Z_]{1,21}(=|\%3D) [OR]
# Block out any script trying to base64_encode crap to send via URL
RewriteCond %{QUERY_STRING} base64_encode.*\(.*\) [OR]
# Block out any script that includes a <script> tag in URL
RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
# Block out any script trying to set a PHP GLOBALS variable via URL
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
# Block out any script trying to modify a _REQUEST variable via URL
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
# Send all blocked request to homepage with 403 Forbidden error!
RewriteRule ^(.*)$ index.php [F,L]
#
########## End - Rewrite rules to block out some common exploits

#  Uncomment following line if your webserver's URL
#  is not directly related to physical file paths.
#  Update Your Joomla! Directory (just / for root)

# RewriteBase /


########## Begin - Joomla! core SEF Section
#
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/index.php
RewriteCond %{REQUEST_URI} (/|\.php|\.html|\.htm|\.feed|\.pdf|\.raw|/[^.]*)$  [NC]
RewriteRule (.*) index.php
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
#
########## End - Joomla! core SEF Section
« Последнее редактирование: 15.06.2010, 17:32:49 от Chigolberi »
*

Chigolberi

  • Захожу иногда
  • 464
  • 12 / 0
Re: Как убрать крокозябры JCE 1.5.7.4 ?
« Ответ #8 : 15.06.2010, 17:58:00 »
Спасибо за внимание, эта какашка только на локалке, на реальном сервери никаких проблем нет.
*

Vostok-All

  • Захожу иногда
  • 172
  • 5 / 0
Re: Как убрать крокозябры JCE 1.5.7.4 ?
« Ответ #9 : 09.07.2010, 15:40:40 »
Сохранить языковой файл в кодировке UTF-8 without BOM


В какую директорию эта зараза прописывается, обыскаля уже...
*

sergeeva

  • Захожу иногда
  • 60
  • 5 / 0
Re: Как убрать крокозябры JCE 1.5.7.4 ?
« Ответ #10 : 14.10.2010, 13:20:54 »
Шел третий день борьбы с Joomla...
Такое ощущение, что на меня навалились все несчастья, которые раньше обходили стороной. Сколько сайтов и все было хорошо. Теперь же каждая проблема нерешаема.... Я в отчаянии уже.
Короче, вот тоже у меня эти кракозябры. Все вышеописанные действия провела. Ничегошеньки не помогло.

Языковые файлы - если их открывать через Дримвивер или другие редакторы - то все буквы нормальные, как только открываю через  фтп-соединение, так кракозябры.
 Ну и естественно в админке, как указано в верхнем посту.  Причем, не везде. Если наводить мышкой на иконки редактора - подсказки русскими буквами всплывают. Окно вставки изображения тоже по русски, а вот окно вставки таблички - кракозябры. При редактировании статьи заголокок статьи тоже кракозябрами.
В общем, как-то выборочно. Не понятно мне.
*

vjcolt

  • Новичок
  • 2
  • 0 / 0
Re: Как убрать крокозябры JCE 1.5.7.4 ?
« Ответ #11 : 23.11.2010, 20:10:29 »
sergeeva
у меня была аналогичная проблема,
если AddDefaultCharset UTF-8 в .htaccess не помогает, то вот в теме по лечению кракозябов, Shustry выложил архив с файлами редактора в кодировке UTF-8.
мне помогло.
P.S. архив распаковать в корень сайта с заменой

http://forcreative.narod.ru/utf_plugins_jce15.rar
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как убрать лишние теги?

Автор Wak

Ответов: 9
Просмотров: 3256
Последний ответ 30.03.2021, 19:43:26
от Wak
Как в JCE для фронтенда убрать то что я выделил красным?

Автор kolhoz

Ответов: 1
Просмотров: 1608
Последний ответ 22.01.2016, 15:43:01
от Alldar
Редактор: JCE Как убрать границы ячеек таблицы?

Автор Deonisiy

Ответов: 2
Просмотров: 1790
Последний ответ 22.12.2015, 22:48:19
от Deonisiy
JCE MediaBox Как убрать title с tooltip

Автор tmpnikl

Ответов: 1
Просмотров: 1357
Последний ответ 18.09.2015, 10:37:17
от tmpnikl
JCE editor как убрать межстрочный интервал?

Автор mills

Ответов: 0
Просмотров: 2105
Последний ответ 24.10.2014, 08:50:28
от mills