Новости Joomla

Вышли релизы безопасности Joomla 5.3.4 и Joomla 4.4.14

Релиз безопасности Joomla 5.3.4

Проект Joomla спешит сообщить о выпуске Joomla 5.3.4 и Joomla 4.4.14. Это релиз безопасности для серии Joomla 5.3 и релиз безопасности для серии Joomla 4.4.

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

Руст

  • Захожу иногда
  • 76
  • 3 / 0
Друзья, ставлю показ модуля только на категории а он показывается и на страницах видеоматериалов, как быть?
*

Shustry

  • Moderator
  • 6434
  • 745 / 3
Поставить плагин AdvancedModulesManager. Там более гибкие настройки вывода модулей. В том числе можно указывать, наследовать ли настройки пункта меню или нет. Просто, если вы привязали модуль к определённому пункту меню стандартным способом, а потом перешли, например, на материал, у которого нет своего пункта меню, «активность» пункта сохраняется. В общем, ставьте AdvancedModulesManager и будет вам щастье.
*

Руст

  • Захожу иногда
  • 76
  • 3 / 0
Спасибо Друг! Только я поставил эту штуку, ставлю чтоб не показывал во вложенных а он все равно показываеться  :'(
*

Shustry

  • Moderator
  • 6434
  • 745 / 3
Да незачно. Там есть множество других фильтров. Например, можете явно запретить вывод модуля для видеоматериалов по какому-нибудь критерию. Смотря как у вас видеоматериалы эти выводятся. Опишите подробнее пожалуйста.
*

Руст

  • Захожу иногда
  • 76
  • 3 / 0
Стоит этот компонент com_allvideoshare

Смотрите тут справа текст http://globalsuntech.com/video/steny


И тут отображаеться http://globalsuntech.com/video/steny/video/kak-pravilno-shtukaturit-steny-po-mayakam


Вот настройки http://awesomescreenshot.com/0612c1uz02
*

Shustry

  • Moderator
  • 6434
  • 745 / 3
Это плагин. В статье он контент-плагином выводится. Тут можно это поле заюзать в модульменеджере:



А дальше разные варианты можно пробовать. Например, назначить статье альтернативный шаблон и тогда условие будет примерно таким: JRequest::getVar('tmpl') == 'video'. Или получить контент из буфера Joomla и проверить простой регуляркой наличие плеера. Или по id материалов/категорий выделить.
*

Руст

  • Захожу иногда
  • 76
  • 3 / 0
Спасибо Вам!

А почему такой код не работает? Мне проще сасунуть его в файл отвечающий за вывод категории и все, только не работает.

<?php if ($_SERVER["REQUEST_URI"] != '/video/steny') {?>
текст
<?php } else {?> <?php } ?>
*

Shustry

  • Moderator
  • 6434
  • 745 / 3
Пожалуйста. Так у вас не полный URI в условии. Тогда уж надо preg_match добавить. Ещё, для получения URI есть свои методы у Joomla. JURI
 
*

Руст

  • Захожу иногда
  • 76
  • 3 / 0
я и полный ставил не помогло. а как правильно?
*

Shustry

  • Moderator
  • 6434
  • 745 / 3
Вообще, раз вы заюзали оверрайд, то проще по альасу категории тогда может условие делать??
$this->item->category_alias == 'video'

А текущий URL это JURI::current()
*

Руст

  • Захожу иногда
  • 76
  • 3 / 0
<?php if ($this->item->category_alias == 'video') {?>
текст
<?php } else {?> <?php } ?>

Сделал так, подскажите пожалуйста что не так, я не силен в коде, пробую методом тыка :) не получаться.

А если такое написать <?php echo $this->item->category_alias; ?>

то ничего не выводиться, похоже переменная пуста, или я не понимаю...
*

Shustry

  • Moderator
  • 6434
  • 745 / 3
Сперва сделайте вот так:

var_dump($this->item);

И смотрите, что массив возвращает. Может там вообще другой альас.
*

Руст

  • Захожу иногда
  • 76
  • 3 / 0
*

Shustry

  • Moderator
  • 6434
  • 745 / 3
Так, ща сам проверю. ^^. Какой файл редактируете, напишите полный путь свой пожалуйста.
*

Руст

  • Захожу иногда
  • 76
  • 3 / 0
/components/com_allvideoshare/views/category/tmpl/default.php  этот файл отвечает за вывод категорий.
*

Shustry

  • Moderator
  • 6434
  • 745 / 3
%)
Листинг файла тогда пожалуйста в студию.
*

Руст

  • Захожу иногда
  • 76
  • 3 / 0
Код
<?php

/*
 * @version $Id: default.php 2.2.0 2014-01-18 $
 * @package Joomla
 * @copyright   Copyright (C) 2012-2014 MrVinoth
 * @license     GNU/GPL http://www.gnu.org/licenses/gpl-2.0.html
*/

defined('_JEXEC') or die('Restricted access');

$category = $this->category;

if(!$this->user && $category->access == 'registered') {
echo JText::_('YOU_NEED_TO_REGISTER_TO_VIEW_THIS_PAGE');
return;
}

$config = $this->config;
$videos = $this->videos;
$categories = $this->categories;
$header = ( substr(JVERSION,0,3)!= '1.5' )? 'page_heading' : 'page_title';
$link = 'index.php?option=com_allvideoshare&view=video&slg=';
$catlink = 'index.php?option=com_allvideoshare&view=category&slg=';
$qs = '';
$qs .= JRequest::getCmd('orderby')? '&orderby=' . JRequest::getCmd('orderby') : '';
$qs .= JRequest::getInt('Itemid')  ? '&Itemid=' . JRequest::getInt('Itemid') : '';
$row = 0;
$column = 0;
$isResponsive = ($config[0]->responsive == 1)? 'class="avs_responsive"' : '';

$document = JFactory::getDocument();
$document->addStyleSheet( JRoute::_("index.php?option=com_allvideoshare&view=css"),'text/css',"screen");
$document->addStyleSheet( JURI::root(). "components/com_allvideoshare/css/allvideoshareupdate.css",'text/css',"screen");

?>
<?php if($this->params->get('show_'.$header, 1)) : ?>
<h2> <?php echo $category->name; ?> </h2>
<?php endif; ?>
<div id="avs_gallery<?php echo $this->escape($this->params->get('pageclass_sfx')); ?>" <?php echo $isResponsive; ?>>
  <?php
  if(!count($videos)) echo JText::_('ITEM_NOT_FOUND');
  for ($i=0, $n=count($videos); $i < $n; $i++) {   
$clear = '';
    if($column >= $this->cols) {
$clear  = '<div class="avs_clear"></div>';
$column = 0;
$row++;
}
$column++;
echo $clear;
  ?>
  <div class="avs_thumb" style="width:<?php echo $this->thumb_width; ?>px;" onclick='javascript:location.href="<?php echo JRoute::_($link.$videos[$i]->slug.$qs); ?>"'>
  <div class="avs_thumb_inner">
    <div class="avs_img_container">
    <img class="arrow" src="<?php echo JURI::root(); ?>components/com_allvideoshare/assets/play.png" border="0" />
    <img class="image" src="<?php echo $videos[$i]->thumb; ?>" style="width:<?php echo $this->thumb_width; ?>px; height:<?php echo $this->thumb_height; ?>px;" title="<?php echo JText::_('CLICK_TO_VIEW').' : '.$videos[$i]->title; ?>" border="0" />
    </div>
    <span class="title"><?php echo $videos[$i]->title; ?></span>
    <span class="views"><strong><?php echo JText::_('VIEWS'); ?> : </strong><?php echo $videos[$i]->views; ?></span>
  </div>
  </div>
  <?php } ?>
  <div style="clear:both"></div>
  <div id="avs_pagination<?php echo $this->escape($this->params->get('pageclass_sfx')); ?>"><?php echo $this->pagination->getPagesLinks(); ?></div>
 
  <!-- Sub Categories -->
  <?php if ( count($categories) ) : ?>
  <h2><?php echo JText::_('SUB_CATEGORIES'); ?></h2>
  <div class="avs_gallery<?php echo $this->escape($this->params->get('pageclass_sfx')); ?>">
    <?php
$row = 0;
$column = 0;
  for ($i=0, $n=count($categories); $i < $n; $i++) {   
$clear = '';
    if($column >= $this->cols) {
$clear  = '<div class="avs_clear"></div>';
$column = 0;
$row++;
}
$column++;
echo $clear;
  ?>
<div class="avs_thumb" style="width:<?php echo $this->thumb_width; ?>px;" onclick='javascript:location.href="<?php echo JRoute::_($catlink.$categories[$i]->slug.$qs); ?>"'>
      <div class="avs_thumb_inner">
      <div class="avs_img_container">
        <img class="arrow" src="<?php echo JURI::root(); ?>components/com_allvideoshare/assets/play.png" border="0" />
            <img class="image" src="<?php echo $categories[$i]->thumb; ?>" style="width:<?php echo $this->thumb_width; ?>px; height:<?php echo $this->thumb_height; ?>px;" title="<?php echo JText::_('CLICK_TO_VIEW').' : '.$categories[$i]->name; ?>" border="0" />
        </div>
        <span class="name"><?php echo $categories[$i]->name; ?></span>
      </div>
</div>
    <?php } ?>
    <div style="clear:both"></div>
  </div>
  <?php endif; ?>
*

Shustry

  • Moderator
  • 6434
  • 745 / 3
Сразу после строки вначале:

Код: php
defined('_JEXEC') or die('Restricted access');
вставьте:

Код: php
var_dump($this->category);
*

Руст

  • Захожу иногда
  • 76
  • 3 / 0
*

Shustry

  • Moderator
  • 6434
  • 745 / 3
Ну теперь то всё просто стало. В index.php всего шаблона (тот файл, где вся разметка шаблона, лежит в корне темплейта) и пишите условие:

Код: php
if(JRequest::getVar('option') == 'com_allvideoshare') {
//тут только то, что будет на страницах компонента allvideoshare
}
*

Shustry

  • Moderator
  • 6434
  • 745 / 3
Только, можно же было в AdvManagere сделать тоже самое. ^-^

*

Руст

  • Захожу иногда
  • 76
  • 3 / 0
Простите а текст куда вписать, мне нужно чтоб он только тут отображался /video/steny и все, на других категориях будет другой текст.

То что выше, да можно но текст потом везде отображаеться, в часности на страницах видеоматериалов.
*

Shustry

  • Moderator
  • 6434
  • 745 / 3
Ну можно ещё id добавить в условие. Текст писать туда, где модуль будете выводить.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Как спрятать блок (его код) на странице

Автор darkghost

Ответов: 4
Просмотров: 2636
Последний ответ 28.04.2023, 11:23:43
от fsv
Съезжают модули на странице материала

Автор sibdes

Ответов: 3
Просмотров: 2968
Последний ответ 24.04.2023, 12:50:21
от beliyadm
Как сделать вывод ссылок в обратном порядке (com_weblinks)?

Автор Slava77

Ответов: 0
Просмотров: 816
Последний ответ 24.11.2022, 16:42:09
от Slava77
Вывод материалов блогом с фильтром по меткам

Автор muzzy76

Ответов: 7
Просмотров: 1287
Последний ответ 06.10.2022, 13:57:56
от muzzy76
offcanvas не работает с joomshoping

Автор kibervolk

Ответов: 5
Просмотров: 11180
Последний ответ 01.05.2022, 09:29:57
от kibervolk