Новости Joomla

Перевод и публикация интервью на греческом портале Joomla Утро, просматриваешь входящие письма и...

Перевод и публикация интервью на греческом портале Joomla 🇬🇷Утро, просматриваешь входящие письма и изучаешь новости и внезапно обнаруживаешь, что инициатива, которую ты начал, подхватывается другими людьми. 🎉Недавно я взял интервью у Билла (Василиса) Коциаса - руководителя студии, читающего лекции в университете и популяризатора Joomla в Греции.Это интервью из журнала NorrNext, в оригинале на английском, теперь доступно на греческом языке и опубликовано на портале joomla.gr. 🎉До чего же приятно… 😇😊 Работа замечена и с ней посчитали необходимым ознакомить аудиторию страны, в которой Билл читает лекции. И это солнечная Греция - страна, страна, с которой Россию многое связывает. 🇬🇷🇷🇺🕊Смотрю на греческий алфавит и тут же рисуются картины белоснежных зданий в окружении винограда и амфор, красивых женщин в сандалиях и мужественных воинов, охраняющих покой полисов, в которых ученые мужи работают над трудами, позже вошедшими в века. Красиво! 😇Но вернемся к интервью. Из него вы узнаете, что в Греции доля Joomla среди CMS занимает порядка 30-40%. По моему мнению это - самый высокий показатель во всем мире. Также чтение лекций о Joomla в университетах позволит привести новых пользователей и к тому же молодое поколение. Ну и огромное кол-во сертификтатов Билла на стене (смотрим фото в статье) свидетельствует о том, что Joomla может применяться как профессиональный инструмент. 🇬🇷 Интервью на греческом портале (joomla.gr)🌐 Оригинальное интервью (на английском)Что насчет перевода на русский? Увы, времени всего 24 часа в сутках. Я продолжаю готовить новые интервью. Возможно, после завершения выпуска журнала, рассмотрю перевод некоторых интервью на русский. Но я об этом не говорил. 😊 В блоге @eugenius_blog публикую анонсы интересных событий из мира Joomla, интервью, уроки и полезные советы, а также делюсь мыслями:, связанными с разработкой и веб-дизайном.

Обработка HTTP ответа в Joomla 6+. Изменения по сравнению с Joomla 3 - Joomla 5

👩‍💻 Обработка HTTP ответа в Joomla 6+. Изменения по сравнению с Joomla 3 - Joomla 5.В Joomla для выполнения внешних запросов из PHP к сторонним API используется класс Joomla\Http\Http напрямую или же Joomla\Http\HttpFactory, который возвращает для работы преднастроенный по умолчанию класс Http. О работе с HTTP-запросами подробно рассказывалось в статье 2021 года Создание внешних запросов с использованием HttpFactory (Joomla). Некоторые изменения касаются работы с ответами на запросы. Например, наш запрос:
use Joomla\Http\HttpFactory;$http = (new HttpFactory)->getHttp($options, ['curl', 'stream']);$response = $http->get('https://any-url.ru/api/any/endpoint');
Раньше можно было получить код ответа или тело ответа как свойство $response - $response->code или $response->body. Однако, Joomla, начиная с Joomla 4 во многом переходит на стандарты PSR. В частности для работы с HTTP-ответами - на PSR-7. Также хорошая статья на Хабре о PSR-7: PSR-7 в примерах.
Прямое обращение к свойствам code, headers, body объявлено устаревшим в Joomla 6.0.0 и обещают удалить в Joomla 7.0.0.
Вместо этого нужно работать с HTTP-ответом по стандартам PSR-7. Код ответа.Было $response->code. Стало $response->getStatusCode().Заголовки ответа.Было $response->headers. Стало $response->getHeaders().Тело ответа.Было $response->body. Стало (string)$response->getContents().В тело ответа теперь приходит не строка, а поток - объект класса Laminas\Diactoros\Stream. Поэтому его нужно привести к строке (если это json, к примеру): (string)$response->getContents(). Чаще всего в коде Joomla встречается именно такой вариант. Однако, есть и вариант с перемещением указателя чтения на начало потока:
// Получили ответ в виде потока$stream = $response->getBody();// "перемотали" на начало$stream->rewind();// Получили строковый ответ$json = $stream->getContents();
В итоге результат одинаковый.@joomlafeed#joomla #разработка #php

Quantum Manager нужен сообществу, а автору нужна ваша поддержка!

Quantum Manager нужен сообществу, а автору нужна ваша поддержка!Файловый менеджер Quantum — одно...

Файловый менеджер Quantum — одно из самых популярных решений для Joomla, созданное разработчиком из сообщества Joomla, Дмитрием Цымбалом (@tsymbalmitia). Он делает Quantum удобным, безопасным и современным, обновляет его, исправляет уязвимости и отвечает пользователям — всё это в свободное от основной работы время.

Теперь настал момент для следующего шага: развитие проекта требует больше времени и ресурсов.

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

jimka

  • Захожу иногда
  • 119
  • 3 / 0
[Решено] Модули в AdsManager
« : 08.11.2012, 06:06:20 »
всем привет!
использую компонент AdsManager 2.7 RC4
вопрос такой: как сделать отображение модуля только на главной странице компонента (страница со списком категорий)?
пробовал решить проблему с использованием Advanced Module Manager, ничего не вышло.
прошу вашей помощи, заранее спасибо!
« Последнее редактирование: 24.06.2013, 01:22:03 от jimka »
*

AL_ALEX

  • Глобальный модератор
  • 855
  • 112 / 1
Re: Модули в AdsManager
« Ответ #1 : 08.11.2012, 06:11:35 »
В настройках модуля "Привязка к пунктам меню"
*

jimka

  • Захожу иногда
  • 119
  • 3 / 0
Re: Модули в AdsManager
« Ответ #2 : 08.11.2012, 16:13:13 »
AL_ALEX, этот вариант не подходит, тк модуль получается сквозной и отображается на всех страницах категорий..
 
*

Grendy

  • Захожу иногда
  • 247
  • 26 / 0
Re: Модули в AdsManager
« Ответ #3 : 09.11.2012, 13:29:27 »
AL_ALEX, этот вариант не подходит, тк модуль получается сквозной и отображается на всех страницах категорий..
 

Ну а как вы хотели, если ссылки на "все страницы категорий" у вас идут именно с этой страницы? Привязали - вот и отображается.

Отключайте модуль и встраивайте нужный код в шаблон front компонента AdsManager. На главной странице информация будет отображаться, на других - нет.
Плюс в репутацию больше говорит о благодарности, чем слово "Спасибо" в теме, которую повторно, возможно, никогда уже не посетишь.
*

jimka

  • Захожу иногда
  • 119
  • 3 / 0
Re: Модули в AdsManager
« Ответ #4 : 12.11.2012, 03:50:46 »
Grendy, спасибо, так и сделал! ;)
*

dnatima

  • Осваиваюсь на форуме
  • 12
  • 0 / 0
Re: Модули в AdsManager
« Ответ #5 : 12.11.2012, 20:53:03 »
Grendy, спасибо, так и сделал! ;)
У меня такая же проблема, не можешь поделиться опытом? Уже неделю мучаюсь. Спасибо!
*

jimka

  • Захожу иногда
  • 119
  • 3 / 0
Re: Модули в AdsManager
« Ответ #6 : 13.11.2012, 17:49:56 »
в com_adsmanager\front\default.php в нужном месте разместить код

Код
<?php
$style = -2;
$position = "придумать позицию";

   $document   = &JFactory::getDocument();
   $renderer   = $document->loadRenderer('module');
   $params      = array('style'=>$style);

   $contents = '';
   foreach (JModuleHelper::getModules($position) as $mod)  {
      $contents .= $renderer->render($mod, $params);
   }

    echo $contents; // do something with the module output
?>

и в templateDetails.xml прописать позицию.
*

dnatima

  • Осваиваюсь на форуме
  • 12
  • 0 / 0
Re: Модули в AdsManager
« Ответ #7 : 13.11.2012, 21:51:01 »
в com_adsmanager\front\default.php в нужном месте разместить код

Код
<?php
$style = -2;
$position = "придумать позицию";

   $document   = &JFactory::getDocument();
   $renderer   = $document->loadRenderer('module');
   $params      = array('style'=>$style);

   $contents = '';
   foreach (JModuleHelper::getModules($position) as $mod)  {
      $contents .= $renderer->render($mod, $params);
   }

    echo $contents; // do something with the module output
?>

и в templateDetails.xml прописать позицию.

Куда и как ставить этот код, не получается вывести этот модель(mainbottom-b)

У меня вот что в default.php:
Код
<?php if ($this->conf->display_last == 1)
{
$this->displayContents($this->contents,$this->Itemid,$this->nbimages);
}
?>
<h1 class="contentheading"><?php echo JText::_('ADSMANAGER_FRONT_TITLE'); ?></h1>
<div class="adsmanager_fronttext">
<?php echo $this->conf->fronttext; ?>
</div>
<br />
<?php $this->general->showGeneralLink()?>
<div id="home">
<table width="90%" border="0" cellpadding="0" cellspacing="0">
<?php
$this->recurseCategories( 0, 0, $this->cats,$this->Itemid);
?>
</table>
</div>
<?php if ($this->conf->display_last == 2)
{
$this->displayContents($this->contents,$this->Itemid,$this->nbimages);
} $this->general->endTemplate();

И в templateDetails.xml как прописать позицию? Пожалуйста объсните по подробней. Спасибо! У меня AdsManager 2.6.5 и Joomla 2.5.6
*

jimka

  • Захожу иногда
  • 119
  • 3 / 0
Re: Модули в AdsManager
« Ответ #8 : 14.11.2012, 01:59:45 »
в default.php поместите код, что я привел выше в div и присвойте ему какой-нидь id, что бы потом навести красоту было проще.
я вставил после закрытия id=home..
а в templateDetails.xml пропишите <position>ваша позиция</position>
*

dnatima

  • Осваиваюсь на форуме
  • 12
  • 0 / 0
Re: Модули в AdsManager
« Ответ #9 : 14.11.2012, 16:19:06 »
в default.php поместите код, что я привел выше в div и присвойте ему какой-нидь id, что бы потом навести красоту было проще.
я вставил после закрытия id=home..
а в templateDetails.xml пропишите <position>ваша позиция</position>

поместил код в default.php(components\com_adsmanager\views\front\tmpl) теперьон вқглядит так:
Код
<?php if ($this->conf->display_last == 1)
{
$this->displayContents($this->contents,$this->Itemid,$this->nbimages);
}
?>
<h1 class="contentheading"><?php echo JText::_('ADSMANAGER_FRONT_TITLE'); ?></h1>
<div class="adsmanager_fronttext">
<?php echo $this->conf->fronttext; ?>
</div>
<br />
<?php $this->general->showGeneralLink()?>
<div id="home">
<table width="90%" border="0" cellpadding="0" cellspacing="0">
<?php
$this->recurseCategories( 0, 0, $this->cats,$this->Itemid);
?>
</table>
</div>
<?php
$style = -2;
$position = "mainbottom-b";

   $document   = &JFactory::getDocument();
   $renderer   = $document->loadRenderer('module');
   $params      = array('style'=>$style);

   $contents = '';
   foreach (JModuleHelper::getModules($position) as $mod)  {
      $contents .= $renderer->render($mod, $params);
   }

    echo $contents; // do something with the module output
?>
<?php if ($this->conf->display_last == 2)
{
$this->displayContents($this->contents,$this->Itemid,$this->nbimages);
} $this->general->endTemplate();

А position использовал который уже был - "mainbottom-b", поэтому не стал изменять templateDetails.xml.
А в менеджере модулей отключил mod_adsmanager_table в position: mainbottom-b.

А теперь на главной странице все равно это позиция пустой стоит. Помогите пожалуйста.
*

max_1985

  • Давно я тут
  • 611
  • 56 / 0
Re: Модули в AdsManager
« Ответ #10 : 15.11.2012, 00:36:26 »
так получается в главном теле страницы, а если модуль охота загнать в правую или левую часть сайта?
*

jimka

  • Захожу иногда
  • 119
  • 3 / 0
Re: Модули в AdsManager
« Ответ #11 : 16.11.2012, 18:34:01 »
max_1985, для этого есть CSS
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

[Решено]Дублирования ссылки "объвления" в breadcrumb, в компоненте AdsManager

Автор nicklas

Ответов: 4
Просмотров: 3887
Последний ответ 25.04.2024, 23:13:18
от Rinat abzyi
AdsManager вывод нужных полей по отдельности

Автор klekovkinandrey

Ответов: 2
Просмотров: 14411
Последний ответ 06.04.2024, 09:54:15
от Rinat abzyi
AdsManager загрузка файлов

Автор FlexNL

Ответов: 1
Просмотров: 3145
Последний ответ 21.10.2021, 17:20:09
от khan-alex
AdsManager 2.9.13 Есть ли возможность добавить функцию снять с публикации по мимо редактировать и уд

Автор murovoz

Ответов: 11
Просмотров: 13503
Последний ответ 27.03.2020, 22:39:23
от Pavel
Два компонента AdsManager в одном движке

Автор kaman62

Ответов: 12
Просмотров: 28719
Последний ответ 27.03.2020, 22:32:04
от Pavel