Новости Joomla

Загадочный параметр $live_site в configuration.php Joomla

Загадочный параметр $live_site в configuration.php Joomla

👩‍💻 Загадочный параметр $live_site в configuration.php Joomla. Зачем он нужен?Давным-давно, когда Joomla ещё была маленькой, в неё внедрили параметр $live_site. В ней хранился домен текущего сайта на случай, если Joomla не могла его определить из-за неверной настройки сервера. Нужно это было для разных SEO-компонентов, для использования редиректов и т.д.Со временем для работы собственно сайта этот параметр перестал быть нужным. Уже в начале 2010-х стали встречаться рекомендации оставлять этот параметр пустым, дабы оный не привёл к лишним проблемам и путанице. Тем более, в web-админке нет места, где его можно указать или посмотреть его значение. Только в configuration.php, а туда смотрят не часто.Однако, параметр всё же остался в ядре Joomla. Зачем он нужен? А нужен он в 2-х случаях:- для работы класса Joomla\CMS\Uri\Uri, который часто используется в коде Joomla для работы методов

Uri::root() и
Uri::base(), а значит может влиять и на работу в том числе ajax-скриптов.- для работы Joomla в CLI - командной строке сервера. В случае если вы используете в вашем CLI-плагине методы опять-таки класса Uri, то CLI ничего не знает о текущем домене, так как запускается вне web-сервера. Поэтому домен нужно указывать принудительно. Либо с помощью параметра командной строки
--live-site, например,
—live-site=https://site.ru/. Со слешем на конце, иначе в CLI адрес сайта станет
https://site.rujoomla.php.Либо в параметре
$live_site в файле configuration.php, так как
CliApplication берёт настройку оттуда, если параметр команды не указан или пуст.⚠️ Иначе в качестве хоста и url класса Uri будет установлено
https://joomla.invalid/set/by/console/application. В самом же коде команды получить параметр
$live_site можно из объекта приложения

protected function doExecute(InputInterface $input, OutputInterface $output): int    {         //...              $live_site = $this->getApplication()->get('live_site');         //...    }
и исходя из этого строить дальнейшую логику.@joomlafeed#joomla #разработка #php #cli

Вышел плагин AllVideos v.7.0 от JoomlaWorks

Вышел плагин AllVideos v.7.0 от JoomlaWorks

Вышел плагин AllVideos v.7.0 от JoomlaWorks.Этот контент-плагин - одно из старейших расширений для Joomla. Его задача - преобразовывать шорт-коды вида

{YOUTUBE}...{/YOUTUBE},
{MP3}parth/to/file.mp3{/MP3} и подобные во встроенные видео или аудио.👩‍💻 v.7.0.0. Что нового?- Добавлена поддержка Youtube Shorts. Просто скопируйте полный url видео и вставьте его внутри тегов
{YOUTUBE}...{/YOUTUBE}.- Поддержка Joomla 5.x без плагина обратной совместимости. PHP 5, PHP 7, PHP 8. - Индексация умным поиском в CLI. В Joomla 5 плагин перестал вызывать ошибку при индексации контента умным поиском через CLI,Заметьте, что этот один и тот же пакет для всех версий Joomla, начиная с 1.5.x и заканчивая 5.x. Технически "под капотом" код плагина по сути не менялся, а для поддержки следующих версий Joomla авторы вставляют "заплатки". Плагин всё ещё использует старую архитектуру файлов и классов Joomla, что, к сожалению, заставляет прибавлять к его описанию слова "пока ещё" - "пока ещё работает".
Страница расширенияGitHub расширенияJoomla Extensions Directory👩‍💻 За ссылку спасибо самому внимательному участнику нашего сообщества - Ринату Кажетову (@rkazhet).@joomlafeed#joomla #расширения

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

elf513

  • Осваиваюсь на форуме
  • 15
  • 0 / 0
Re: Русские социальные закладки в К2
« Ответ #60 : 07.07.2011, 18:11:05 »
Как с файлом item.php разобраться? Ничего в нем поменять не получается(((
« Последнее редактирование: 07.07.2011, 18:21:27 от elf513 »
*

Очередной вебмастер

  • Давно я тут
  • 768
  • 55 / 0
  • лысый умный дядя
Re: Русские социальные закладки в К2
« Ответ #61 : 08.07.2011, 15:18:55 »
Как с файлом item.php разобраться? Ничего в нем поменять не получается(((
Что значит не получается? Открываете блокнотом или Notepad++ и правите!
Сайты на Joomla, разработка и поддержка
----------
Помог ответ - жми плюс!
*

Серенький

  • Осваиваюсь на форуме
  • 20
  • 0 / 0
Re: Русские социальные закладки в К2
« Ответ #62 : 13.02.2012, 13:01:22 »
Подскажите пожалуйста, такая проблема возникла, хотел добавить русские сети в К2 но обнаружилось что файлы item.php немного отличаются, конкретно мне нужно добавить соц. сети в item.php K2 v2.5.4 но пр просмотре кода оказалось что он немного другой. Вот такой код у меня в K2 v2.3 ну это то что было во всех версиях K2

Код
<?php if($this->item->params->get('itemShareLinks')): ?>
  <!-- Item social links -->
<div class="itemSocialLinksBlock">
<span><?php echo JText::_("Social sharing"); ?></span>
<ul class="itemSocialLinks">
<li><a class="googlebuzz" title="<?php echo JText::_("Add to Google Buzz"); ?>" href="http://www.google.com/buzz/post?url=<?php echo $this->item->socialLink; ?>&amp;message=<?php echo urlencode($this->item->title); ?>" target="_blank"><span><?php echo JText::_("Add to Google Buzz"); ?></span></a></li>
<li><a class="facebook" title="<?php echo JText::_("Add to Facebook"); ?>" href="http://www.facebook.com/sharer.php?u=<?php echo $this->item->socialLink; ?>&amp;t=<?php echo urlencode($this->item->title); ?>" target="_blank"><span><?php echo JText::_("Add to Facebook"); ?></span></a></li>
<li><a class="delicious" title="<?php echo JText::_("Add to Delicious"); ?>" href="http://del.icio.us/post?url=<?php echo $this->item->socialLink; ?>&amp;title=<?php echo urlencode($this->item->title); ?>" target="_blank"><span><?php echo JText::_("Add to Delicious"); ?></span></a></li>
<li><a class="digg" title="<?php echo JText::_("Digg this"); ?>" href="http://digg.com/submit?url=<?php echo $this->item->socialLink; ?>&amp;title=<?php echo urlencode($this->item->title); ?>" target="_blank"><span><?php echo JText::_("Digg this"); ?></span></a></li>
<li><a class="reddit" title="<?php echo JText::_("Add to Reddit"); ?>" href="http://reddit.com/submit?url=<?php echo $this->item->socialLink; ?>&amp;title=<?php echo urlencode($this->item->title); ?>" target="_blank"><span><?php echo JText::_("Add to Reddit"); ?></span></a></li>
<li><a class="stumble" title="<?php echo JText::_("Add to StumbleUpon"); ?>" href="http://www.stumbleupon.com/submit?url=<?php echo $this->item->socialLink; ?>&amp;title=<?php echo urlencode($this->item->title); ?>" target="_blank"><span><?php echo JText::_("Add to StumbleUpon"); ?></span></a></li>
<li><a class="myspace" title="<?php echo JText::_("Add to MySpace"); ?>" href="http://www.myspace.com/Modules/PostTo/Pages/?l=3&amp;u=<?php echo $this->item->socialLink; ?>&amp;t=<?php echo urlencode($this->item->title); ?>" target="_blank"><span><?php echo JText::_("Add to MySpace"); ?></span></a></li>
<li><a class="technorati" title="<?php echo JText::_("Add to Technorati"); ?>" href="http://www.technorati.com/faves?add=<?php echo $this->item->socialLink; ?>" target="_blank"><span><?php echo JText::_("Add to Technorati"); ?></span></a></li>
<li class="clr"></li>
</ul>
<div class="clr"></div>
</div>
  <?php endif; ?>

  <?php if($this->item->params->get('itemAttachments') && count($this->item->attachments)): ?>
  <!-- Item attachments -->


А вот код который у меня в K2 v2.5.4

Код
<?php if($this->item->params->get('itemTwitterButton',1) || $this->item->params->get('itemFacebookButton',1) || $this->item->params->get('itemGooglePlusOneButton',1)): ?>
<!-- Social sharing -->
<div class="itemSocialSharing">

<?php if($this->item->params->get('itemTwitterButton',1)): ?>
<!-- Twitter Button -->
<div class="itemTwitterButton">
<a href="https://twitter.com/share" class="twitter-share-button" data-count="horizontal"<?php if($this->item->params->get('twitterUsername')): ?> data-via="<?php echo $this->item->params->get('twitterUsername'); ?>"<?php endif; ?>><?php echo JText::_('K2_TWEET'); ?></a><script type="text/javascript" src="//platform.twitter.com/widgets.js"></script>
</div>
<?php endif; ?>

<?php if($this->item->params->get('itemFacebookButton',1)): ?>
<!-- Facebook Button -->
<div class="itemFacebookButton">
<div id="fb-root"></div>
<script type="text/javascript">
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) {return;}
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_US/all.js#appId=177111755694317&xfbml=1";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
<div class="fb-like" data-send="false" data-width="200" data-show-faces="true"></div>
</div>
<?php endif; ?>

<?php if($this->item->params->get('itemGooglePlusOneButton',1)): ?>
<!-- Google +1 Button -->
<div class="itemGooglePlusOneButton">
<g:plusone annotation="inline" width="120"></g:plusone>
<script type="text/javascript">
  (function() {
  window.___gcfg = {lang: 'en'}; // Define button default language here
    var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
    po.src = 'https://apis.google.com/js/plusone.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
  })();
</script>
</div>
<?php endif; ?>

<div class="clr"></div>
</div>
<?php endif; ?>

  <?php if($this->item->params->get('itemCategory') || $this->item->params->get('itemTags') || $this->item->params->get('itemAttachments')): ?>
  <div class="itemLinks">

<?php if($this->item->params->get('itemCategory')): ?>

Я так понимаю что если раньше все было в одном блоке то теперь они все соц.сети разбили на отдельные блоки.
Подскажите как здесь добавить русские соц. сети и что где надо поменять, просто еще недостаточно знаний PHP потому прошу о помощи.
*

staticlight

  • Moderator
  • 1086
  • 65 / 0
  • Staticlight
Re: Русские социальные закладки в К2
« Ответ #63 : 14.02.2012, 11:13:34 »
Я вот нихрена не знаю php, тут достаточно знать английский язык.
Вчитываемся.

Код
<?php if($this->item->params->get('itemTwitterButton',1) || $this->item->params->get('itemFacebookButton',1) || $this->item->params->get('itemGooglePlusOneButton',1)): ?>  <!-- (мой комментарий, не добавлять в код) если включена опция "показывать соцкнопки" -->

<!-- Social sharing блок соцкнопок как бы -->
<div class="itemSocialSharing">

<?php if($this->item->params->get('itemTwitterButton',1)): ?>  <!-- если включена опция "показывать кнопку Твиттера" -->
<!-- Twitter Button -->
<div class="itemTwitterButton">
<a href="https://twitter.com/share" class="twitter-share-button" data-count="horizontal"<?php if($this->item->params->get('twitterUsername')): ?> data-via="<?php echo $this->item->params->get('twitterUsername'); ?>"<?php endif; ?>><?php echo JText::_('K2_TWEET'); ?></a><script type="text/javascript" src="//platform.twitter.com/widgets.js"></script>
</div>
<?php endif; ?> <!-- конец условия про Птичкер -->



<?php if($this->item->params->get('itemFacebookButton',1)): ?>  <!-- если включена опция "показывать кнопку Цукерберга" -->
<!-- Facebook Button -->
<div class="itemFacebookButton">
<div id="fb-root"></div>
<script type="text/javascript">
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) {return;}
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_US/all.js#appId=177111755694317&xfbml=1";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
<div class="fb-like" data-send="false" data-width="200" data-show-faces="true"></div>
</div>
<?php endif; ?> <!-- конец условия про фэйзбуг-->




<?php if($this->item->params->get('itemGooglePlusOneButton',1)): ?> <!-- Если включена опция "Хочу кнопку +1 к себе на сайтег" -->
<!-- Google +1 Button -->
<div class="itemGooglePlusOneButton">
<g:plusone annotation="inline" width="120"></g:plusone>
<script type="text/javascript">
  (function() {
  window.___gcfg = {lang: 'en'}; // Define button default language here
    var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
    po.src = 'https://apis.google.com/js/plusone.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
  })();
</script>
</div>
<?php endif; ?> <!-- конец условия про G+1 -->

<div class="clr"></div>
</div>
<?php endif; ?> <!-- конец условия про отображение всех соцкнопок -->
 



Резюмируем: добавляем в любое условие (условия) свой код (например, код фконтакта, футубры, своего твиттера, фото бабушки, котэ) и включаем его.

Я сделал так: условия оставил, и заменил все коды Твиттера, фэйсбук заменил на Дурова, кнопку плюсодин русифицировал.
Руководитель отдела сервисного обслуживания систем безопасности.
Устали от com_content - поставьте com_k2.
TRIPLE "F" POWER: Firefox+FireShot+Firebug. Chrome + Ctrl+Shift+I
*

denis174

  • Захожу иногда
  • 256
  • 1 / 0
Re: Русские социальные закладки в К2
« Ответ #64 : 16.03.2012, 11:34:30 »
выпилил все комментарии... поставил Яндекс api
<script type="text/javascript" src="//yandex.st/share/share.js" charset="utf-8"></script>
<div class="yashare-auto-init" data-yashareL10n="ru" data-yashareType="link" data-yashareQuickServices="yaru,vkontakte,facebook,twitter,odnoklassniki,moimir,lj,friendfeed,moikrug"></div>
 - все отображается как надо, но одноклассники не работают... после ввода логина и пароля вываливается ошибка - страница не найдена... хотя с яндекса ( на сайте есть кнопки для проверки) - публикуется все ок.
кто-нибудь сталкивался? можете подсказать?
*

denis174

  • Захожу иногда
  • 256
  • 1 / 0
Re: Русские социальные закладки в К2
« Ответ #65 : 17.03.2012, 09:17:48 »
пробовал сервис однакнопка - тот же результат....
*

gillmor

  • Захожу иногда
  • 53
  • 1 / 0
Re: Русские социальные закладки в К2
« Ответ #66 : 11.04.2012, 17:02:56 »
Тоже искал как решить проблему с социальным обменом в новом K2. Так как в нем поменяли файл item.php и добавили живые кнопки твитера, Google и фэйса, решить проблему способом описанным Серенький не было возможным. Ковырять код и чего-то выдумывать тоже не хотелось. Нашел готовое решение под Joomla 1.5 - 2.5. Два абсолютно бесплатных плагина. Они позволяют легко в любом месте добавить кнопки соц обмена таких сетей как: Вконтакте, одноклассники, твиттер, фэйс, Google, маил, Яндекс и т.д. В плагинах есть множество настроек на русском. В общем вот ресурс где это все взять: http://nauca.com.ua/zametki/komponent-k2-i-knopki-socialnyx-setej-socbuttons/
Правда когда я внедрял этот плагин у меня возникли некоторые трудности, но там комментарии с объяснением автора почитаете разберетесь.
*

ZAIRA

  • Захожу иногда
  • 120
  • 2 / 0
  • буду благорарна за +
Re: Русские социальные закладки в К2
« Ответ #67 : 28.08.2013, 20:19:51 »
В целом ситуация выглядит так: код вставила и сохранила в параметрах К2. Кнопки выводятся, но не на том месте, а  там, где отображается кнопка печать, емэйл. А не меняется ничего после правки кода, когда я пытаюсь вставить их вместо стандартных. Делаю всё, как здесь сказано http://www.opengs.ru/cck-k2/195-kak-dobavit-knopki-russkix-soczialnyx-setej-dlya-k2.html
Очередной вебмастер Вы сказали, что возможно шаблон другой - может это как раз мой случай?

попробуйте вот это http://www.opengs.ru/cck-k2/195-kak-dobavit-knopki-russkix-soczialnyx-setej-dlya-k2.html
*

Mesk911

  • Захожу иногда
  • 78
  • 1 / 0
Re: Русские социальные закладки в К2
« Ответ #68 : 21.04.2016, 20:41:32 »
Я наверное глупый или устал просто...
Ситуация как была в этом топике у koshka1928: перемещаю (или даже удаляю) код, отвечающий за соц.кнопки (сам скрипт предварительно вставил в соответствующее окно в настройках К2), по файлу item.php (у меня установлен только дефолтный шаблон), но на фронтэнде никакой реакции...
Прочитал несколько раз этот топик, всё равно не пойму, в чём проблема...
Если кому то не лень, объясните пожалуйста на пальцах, что сделать, чтобы эти кнопки переместить.
Заранее спасибо!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться