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

press13

  • Осваиваюсь на форуме
  • 42
  • 0 / 0
Здравствуйте куда разместить код социальных сетей что бы он был где страница материала  под материалом сразу: заранее спасибо

<script type="text/javascript">(function() {
  if (window.pluso)if (typeof window.pluso.start == "function") return;
  if (window.ifpluso==undefined) { window.ifpluso = 1;
    var d = document, s = d.createElement('script'), g = 'getElementsByTagName';
    s.type = 'text/javascript'; s.charset='UTF-8'; s.async = true;
    s.src = ('https:' == window.location.protocol ? 'https' : 'http')  + '://share.pluso.ru/pluso-like.js';
    var h=d[g]('body')[0];
    h.appendChild(s);
  }})();</script>
<div class="pluso" data-background="#ebebeb" data-options="medium,square,line,horizontal,counter,theme=01" data-services="vkontakte,odnoklassniki,facebook,twitter,google,moimir,email,print"></div>
*

ShfVD

  • Давно я тут
  • 871
  • 65 / 0
Создайте модуль HTML, вставьте туда код, а модуль установите в нужную позицию,
если нет, создайте, на форуме об этом много
*

Kostelano

  • Давно я тут
  • 525
  • 52 / 1
Подниму тему.

Не интересует html-модуль с кодом, хочу просто в каждой статье внизу (например, перед комментариями jcomments) разместить полосу кнопок pluso. Как это сделать?

Копался в файлах article в в шаблоне, добавлял, пробовал - не получилось. Что-то упустил.

Помогите советом.
*

beliyadm

  • Легенда
  • 9758
  • 1665 / 66
  • Севастополь, Россия
Не интересует html-модуль с кодом, хочу просто в каждой статье внизу (например, перед комментариями jcomments) разместить полосу кнопок pluso. Как это сделать?
Есть два варианта:
1 - залезть в шаблон материала и добавить код - получится (что упустили мы не понимать) - хардкодно но проще
2 - написать плагин контента для вставки кода и опубликовать в админке его выше нежели плагин комментов - правильней но сложней в реализации
Все истины, которые я хочу вам изложить, — бесстыдная ложь. Сделать всё хорошо
TLG: @Beliyadm
*

barmaleos

  • Захожу иногда
  • 238
  • 19 / 1
Подниму тему.

Не интересует html-модуль с кодом, хочу просто в каждой статье внизу (например, перед комментариями jcomments) разместить полосу кнопок pluso. Как это сделать?

Копался в файлах article в в шаблоне, добавлял, пробовал - не получилось. Что-то упустил.

Помогите советом.

Вот это нужно поместить между тегами <head></head>(эта конструкция обычно находится в файле index.php  в корневом каталоге шаблона)

<script type="text/javascript">(function() {
  if (window.pluso)if (typeof window.pluso.start == "function") return;
  if (window.ifpluso==undefined) { window.ifpluso = 1;
    var d = document, s = d.createElement('script'), g = 'getElementsByTagName';
    s.type = 'text/javascript'; s.charset='UTF-8'; s.async = true;
    s.src = ('https:' == window.location.protocol ? 'https' : 'http')  + '://share.pluso.ru/pluso-like.js';
    var h=d[g]('body')[0];
    h.appendChild(s);
  }})();</script>

А вот это нужно поместить в то место в шаблоне материала где хочется увидеть блок кнопок)

<div class="pluso" data-background="#ebebeb" data-options="medium,square,line,horizontal,counter,theme=01" data-services="vkontakte,odnoklassniki,facebook,twitter,google,moimir,email,print"></div>

И все))
*

Kostelano

  • Давно я тут
  • 525
  • 52 / 1
Сам код размещается, я немного уточню что хотел )).

Просто у меня получается разместить код и в полном варианте статьи и в ее анонсе (в категории блог). А хочу я получить кнопки ТОЛЬКО в конце полной новости.

Вот как задать условие что ли, чтобы кнопки появлялись именно в полной новости...

Вариант - запихать код сюда:

Код
	<?php if ($previous || $next) : ?>
<ul class="uk-pagination">
<?php if ($previous) : ?>
<li class="uk-pagination-previous">
<?php echo $previous; ?>
<i class="uk-icon-angle-double-left"></i>
</li>
<?php endif; ?>

<?php if ($next) : ?>
<li class="uk-pagination-next">
<?php echo $next; ?>
<i class="uk-icon-double-angle-right"></i>
</li>
<?php endif; ?>
</ul>
<?php endif; ?>

Так прокатывает, но вынужден включить поддержку навигации по страницам (предыдущий материал - следующий материал). Короче, пока не то что нужно.
*

barmaleos

  • Захожу иногда
  • 238
  • 19 / 1
Я вас не совсем понимаю..
Для того что бы у вас кнопки появились только на шаблоне материала категории(краткого  ее отображения, анонса) вы и должны код разместить именно там.
Шаблон называется - blog_item.php и находится по пути /components/com_content/views/category/tmpl/
Ну или, если у вас шаблоны вывода переопределены, то в каталоге HTML вашего шаблона.
Все, никаких подводных камней там быть не должно...
Соответственно, если надо отобразить кнопки в шаблоне материала, то код размещаем в шаблоне default.php по пути /components/com_content/views/article/tmpl/ или, если шаблоны вывода переопределены, то то в каталоге /html/com_content/article/ вашего шаблона

Сорри, вкралась досадная ошибка, погорячился просто.
Исправил...
« Последнее редактирование: 27.08.2014, 23:17:16 от barmaleos »
*

Kostelano

  • Давно я тут
  • 525
  • 52 / 1
Спасибо за помощь. Я хочу, чтобы кнопки соц. сетей были ТОЛЬКО в полной новости. Вот файл article.php, он переопределен в шаблоне.

Код
<article class="uk-article" <?php if ($permalink) echo 'data-permalink="'.$permalink.'"'; ?>>

<?php if ($image && $image_alignment == 'none') : ?>
<a href="<?php echo $url; ?>" title="<?php echo $image_caption; ?>"><img src="<?php echo $image; ?>" alt="<?php echo $alt; ?>"></a>
<?php endif; ?>

<?php if ($title) : ?>
<h1 class="uk-article-title">
<?php if ($title_link) : ?>
<a href="<?php echo $url; ?>" title="<?php echo $title; ?>"><?php echo $title; ?></a>
<?php else : ?>
<?php echo $title; ?>
<?php endif; ?>
</h1>
<?php endif; ?>

<?php echo $hook_aftertitle; ?>

<?php if ($author || $date || $category) : ?>
<p class="uk-article-meta">

<?php

$author   = ($author && $author_url)? '<a href="'.$author_url.'">'.$author.'</a>' : $author;
$date     = ($date && $datetime)? '<time datetime="'.$datetime.'" pubdate>'.JHtml::_('date', $date, JText::_('DATE_FORMAT_LC3')).'</time>' : JHtml::_('date', $date, JText::_('DATE_FORMAT_LC3'));
$category = ($category && $category_url)? '<a href="'.$category_url.'">'.$category.'</a>' : $category;

if($author && $date) {
printf(JText::_('TPL_WARP_META_AUTHOR_DATE'), $author, $date);
} elseif ($author) {
printf(JText::_('TPL_WARP_META_AUTHOR'), $author);
} elseif ($date) {
printf(JText::_('TPL_WARP_META_DATE'), $date);
}

if ($category) {
echo ' ';
printf(JText::_('TPL_WARP_META_CATEGORY'), $category);
}

?>

</p>
<?php endif; ?>

<?php if ($image && $image_alignment != 'none') : ?>
<a class="uk-align-<?php echo $image_alignment; ?>" href="<?php echo $url; ?>" title="<?php echo $image_caption; ?>"><img src="<?php echo $image; ?>" alt="<?php echo $alt; ?>"></a>
<?php endif; ?>

<?php echo $hook_beforearticle; ?>

<div>
<?php echo $article; ?>
</div>

<?php if ($tags) : ?>
<p><?php echo JText::_('TPL_WARP_TAGS').': '.$tags; ?></p>
<?php endif; ?>

<?php if ($more) : ?>
<p>
<a href="<?php echo $url; ?>" title="<?php echo $title; ?>"><?php echo $more; ?></a>
</p>
<?php endif; ?>

<?php if ($edit) : ?>
<p><?php echo $edit; ?></p>
<?php endif; ?>

<?php if ($previous || $next) : ?>
<ul class="uk-pagination">
<?php if ($previous) : ?>
<li class="uk-pagination-previous">
<?php echo $previous; ?>
<i class="uk-icon-angle-double-left"></i>
</li>
<?php endif; ?>

<?php if ($next) : ?>
<li class="uk-pagination-next">
<?php echo $next; ?>
<i class="uk-icon-angle-double-right"></i>
</li>
<?php endif; ?>
</ul>
<?php endif; ?>

<?php echo $hook_afterarticle; ?>

</article>

Так вот, куда бы здесь не пихал код PLUSO, он продублируется как в формате анонса статьи, так и в полной новости. А нужны кнопки только в полной новости.
*

barmaleos

  • Захожу иногда
  • 238
  • 19 / 1
Сайт покажите.
Сорри, присмотрелся и увидел, что вы используете шаблон от Yootheme.
Они немного отличаются от обычных. Используется warp.
Все шаблоны находятся по адресу:
/www/templates/ВАШ_ШАБЛОН/warp/systems/joomla/layouts/
Кстати, совсем недавно тоже поднимал вопрос кнопок соцсетей, но применительно к использованию ВАРПа.
Если интересно, тема тут:
http://joomlaforum.ru/index.php/topic,299682.0.html
По итогу получилось так:
http://471972.comfo.web.hosting-test.net/index.php/portfolio/test-4
Кажется, это именно то, что вам нужно...
Решение с помощью кнопок от PLUSO - идентичное. На нем и проверялось все...
« Последнее редактирование: 28.08.2014, 03:15:36 от barmaleos »
*

Kostelano

  • Давно я тут
  • 525
  • 52 / 1
РЕШЕНИЕ!

Как я уже пытался выяснить выше, нужно было условие, которое проверяет является просматриваемый материал полным вариантом или анонсом.

Открываем файл /templates/yoo_vida/layouts/article.php, в самом низу заключаем скрипт от share.pluso.ru в условие: <?php if ($hook_afterarticle) : ?>.

Таким образом, полный кусок кода:

Код
	<?php if ($hook_afterarticle) : ?>
<script type="text/javascript">(function() {
if (window.pluso)if (typeof window.pluso.start == "function") return;
if (window.ifpluso==undefined) { window.ifpluso = 1;
var d = document, s = d.createElement('script'), g = 'getElementsByTagName';
s.type = 'text/javascript'; s.charset='UTF-8'; s.async = true;
s.src = ('https:' == window.location.protocol ? 'https' : 'http')  + '://share.pluso.ru/pluso-like.js';
var h=d[g]('body')[0];
h.appendChild(s); }})();
</script>

<div class="pluso" data-background="transparent" data-options="medium,square,line,horizontal,counter,theme=04" data-services="vkontakte,odnoklassniki,facebook,twitter,google,googlebookmark,yazakladki,moimir,bookmark,email"></div>
<?php endif; ?>

На фронтенде получаем кнопки только в полной статье перед формой комментариев.

*

barmaleos

  • Захожу иногда
  • 238
  • 19 / 1
Рад за вас, что все получилось. Упорство и настойчивость всегда пробьют дорогу)
К сожалению не смог вовремя ответить, отвлекли...
Но, похоже на то, что вы используете один из шаблонов Yootheme на 7 WARP. А в нем дело обстоит немножко проще. Там функции взаимодействия с социальными сетями вынесены в отдельный файл(social.js)
Стоило бы поковырять их... И тогда была бы возможность управлять этими кнопками непосредственно с настроек шаблона...
Не притягивая к себе на сайт чужие скрипты.
Еще раз удачи вам и привет землякам!  *DRINK*

Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Передирект страницы панели управления

Автор aviyar

Ответов: 6
Просмотров: 12470
Последний ответ 09.04.2025, 11:53:35
от aviyar
Проблема с редактированием материалов

Автор olesya

Ответов: 15
Просмотров: 3343
Последний ответ 12.07.2020, 12:46:06
от NataliS
Ошибка при сохранении страницы

Автор gaa001

Ответов: 3
Просмотров: 1888
Последний ответ 05.11.2019, 14:14:37
от gaa001
Последние посещенные страницы пользователем

Автор Fedor Vlasenko

Ответов: 18
Просмотров: 8325
Последний ответ 06.08.2019, 13:41:48
от pH43
Код вывести название страницы

Автор qvaro

Ответов: 1
Просмотров: 1444
Последний ответ 24.11.2018, 18:33:07
от beliyadm