Дмитрий
Дмитрий
Только там в моем случае, параметры страницы админки. Еще раз, компонент. В административной части у нгего нужно получать эти параметры для введенного пользователем адреса страницы фронта. Если в этом случае пользоваться Factory::getAppliction()->input, то получим параметры текущей страницы административной части компонента. Почему я и начал изврат с роутером, чтоб получить JApplication для фронта (site), а не для админки (Administrator)
Дмитрий
Дмитрий
посмотрите как работает в джумле распарсинг
Дмитрий
Route::parse()
Дмитрий
чето такое там лежит
Дмитрий
надо в сорцы идти
Дмитрий
Юзер при настройке компонента в АДМИНКЕ вводит адрес страницы из фронта и этот адрес надо распарсить.
Дмитрий
надо в сорцы идти
Вот я пошел и в результате параметры получил ,но не те. Страница товара VIRTUEMART? а парситься как com_content и features :)/ Почему и вынес сюда вопрос.
Дмитрий
Может кто сталкивался с подобным...
Дмитрий
$router->parse($uri)
public static function getRouter($name = null, array $options = array())
{
if (!isset($name))
{
$app = \JFactory::getApplication();
$name = $app->getName();
}
$options['mode'] = \JFactory::getConfig()->get('sef');
try
{
$router = \JRouter::getInstance($name, $options);
}
catch (\Exception $e)
{
return;
}
return $router;
}
Дмитрий
@SDima06 ну вот
Дмитрий
метод из CMSApplication
Дмитрий
нужно вызвать роутер инстанцировать от application
Дмитрий
$router = \JRouter::getInstance('site');
$result = $router->parse('url')
Дмитрий
namespace JRouter нормальный подкажет шторм
Дмитрий
Попробую, спасибо.
Дмитрий
Тоже самое... Так же определяет com_content и featured для любых компонентов из фронта. Приходится еще добавлять перед инициализацией роутера $app = CMSApplication::getInstance('site');
$app->loadLanguage(); Иначе ругается, что не загружены языки
Igor
Дмитрий
Igor
Дмитрий
Igor
Попробую...
Кстати вопрос, что вы хотите сделать я понял. Но мне теперь интрестно зачем
Елена
Дмитрий
Кстати вопрос, что вы хотите сделать я понял. Но мне теперь интрестно зачем
Делаю компонент оптимизации загрузки страниц. Оптимизация проводится в разрезе компонент-представление. Для каждого такого разреза есть набор параметров. Предзаполнить эти параметры и планирую таким образом. Т.е. вводится адрес тестовой страницы и по нему заполняется набор параметров, которые пользователь уже редактирует...
Igor
Дмитрий
Да все сделано уже ,осталось получить 2 параметра компонент и представление страницы и тут затык на ровном месте :)
Igor
Igor
К примеру одна и та же категория com_content может иметь разные адреса в зависимости от макета
Дмитрий
Это понятно, скорее всего буду расширять "идентификацию". Пока так...
Дмитрий
Igor
Дмитрий
Во фронте и в админке они разные в результате. Надо что-то другое похоже выдумывать.
Vladimir
Дмитрий
Понял, мне кажется, что это не лучшее решение в плане универсальности 🤔
Igor
Igor
Без него его знания запрос выполнятся не будет.
Да и вообще если честно csrf для распрасинга ссылок не нужно.
Тут даже сложно предстваить вектор атаки. разве что ddos но тут ставится уже серверная защита
Дмитрий
Дмитрий
@Septdir +
Sergey
Тут нет Ванги
Дмитрий
Тогда просто спасибо 😀
RINAT
Серия статей по созданию своего SMS-шлюза на PHP от компании RUVDS
https://habr.com/ru/company/ruvds/blog/554868/ - часть 1
https://habr.com/ru/company/ruvds/blog/555422/ - часть 2
Vladimir
Vladimir
Надо запомнить. Давно меня такая мысль гложет
Dmitry
Ищем специалистов?😑
Vladimir
Vladimir
Dmitry
Да думал, может что ответит
Sergey
Joomla-дайджест за 2-й квартал 2022 года
Что в этом дайджесте? 1 млн уников в сутки на сайте-новостнике на Joomla, немного статистики, маркетинговых исследований, обзоры, электронная коммерция. 46 (+66) расширений Joomla, 8 ресурсов для разработки, Joomla 4 REST API и мобильные приложения, 8 статей и переводов, события из жизни Joomla-сообщества.
Читать дайджест на Хабре
Rufina
Всем привет. Пожалуйста, помогите мне. Я собираюсь написать скрипт, как приложение CLI, который будет запускаться через крон. Я создаю файл по аналогии с cli/joomla.php, файл называется productLoader.php. Сейчас я нахожусь на стадии, чтобы просто проверить запуск этого файла через консоль и получаю ошибку http://joxi.ru/ZrJqdjzUMkgjoA А это фрагмент кода, где происходит ошибка http://joxi.ru/GrqevBjikbOPLr🙏
Sergey
Rufina
J4.1.5
Rufina
а что я должна подключить в USE??
Sergey
@Septdir @tsymbalmitia
Sergey
Сейчас подскажут.
Vladimir
Но вообще вы пишете код с использованием ООП и спрашиваете что писать в use…
Vladimir
Возьмите любой файл как образец - посмотрите что там
Sergey
Sergey
И он не презентабелен в данном случае.
Sergey
Так как команды, функции лежат в другом месте, а не в этом файле
Rufina
ведь там ошибка, что класс CliApplication не из того неймспейса подключен... А из какого??
Rufina
Sergey
Rufina
я прочитала эти материалы https://docs.joomla.org/J4.x:Writing_A_CLI_Application
https://docs.joomla.org/J4.x:CLI_example_-_Onoffbydate#The_Command_Line
Там описывается создание новых команд и запуск их плагинами
Но я не поняла, если я просто хочу запустить php скрипт из консоли, зачем я буду создавать некие новые команды? без плагина нельзя?
Sergey
Да, верно. Одна точка входа и добавление команд с помощью системного плагина. Не надо файлы штамповать.
Sergey
Rufina
да
Sergey
да
В таком случае Вам надо подключать апи Joomla. В тройке да, копировали файлы-примеры и делали по своему. А в четверке это перенесли в плагины.
Rufina
вот так подключить? require_once(__DIR__ .'/api/index.php');
Sergey
Поройтесь в libraries/src/Console
Sergey
А подключение брать из joomla.php.
Sergey
Но зачем, если точка входа должна быть одна
Sergey
Ведь Вы можете свои CLI повесить на крон с помощью Task Scheduler из админки