Новости Joomla

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

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

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

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

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

artMelnikov

  • Захожу иногда
  • 57
  • 3 / 0
Привет, друзья!

Подскажите, пожалуйста, как можно скрыть модуль баннеров для определенного IP?
Конкретнее.
На сайте есть баннеры. Как сделать, чтоб начальство, заходящее на сайт со статического IP не видело их. Я придумал прописать в коде модуля баннера проверку IP и условие:
если IP = 1.1.1.1, то ничего
иначе показать баннер.

Но что конкретно писать не знаю. похожих тем не нашел. Подскажите, пожалуйста.
Может есть более рациональный способ, хз. Очень надеюсь на Вашу помошь.
« Последнее редактирование: 11.11.2011, 10:08:52 от artMelnikov »
*

artMelnikov

  • Захожу иногда
  • 57
  • 3 / 0
Подскажите, пожалуйста, хотя бы скрипт проверки пароля, а условие сам как-нибудь напишу.
*

SinBad

  • Завсегдатай
  • 1879
  • 187 / 0
  • Мнне 40 лет, мне 40 лет, ума так и не нажил!
Подскажите, пожалуйста, хотя бы скрипт проверки пароля, а условие сам как-нибудь напишу.

<?php
 if ($_SERVER['REMOTE_ADDR'] != '1.1.1.1')
  //здесь вывод позиции вашего моудуля
 else
  echo 'Насяльника гамно! Баннера не увидишь.';

?>
...Фет для них песни поёт. Фет не прикольный поэт - Фету никто не даёт.
*

artMelnikov

  • Захожу иногда
  • 57
  • 3 / 0
 :laugh:
Круто! Спасибо большое. попробую.
*

artMelnikov

  • Захожу иногда
  • 57
  • 3 / 0
Ребята и девчата, если кто шарит, подскажите, пожалуйста.
Уже и так и так крутил-вертел этот скрипт и туда вставлял и сюда. Ничего не выходит.
Может можете описать по подробнее, что делать, если конечно делали такой хак.
Очень прошу помочь.
Может есть готовое решение.
Я не очень понял с выводом позиции. Это получается в index.php надо там где позиции определяются? Но тогда я в эту позицию ничего не помещу. а если надо в позицию Left вставить баннер, то для айпи 1.1.1.1 этой позиции вообще не будет и всего, что там есть.
Я пробовал в код модуля mod_banners вставлять. Пробовал вставлять это условие в модуль mod_custom (произвольный HTML код).
Со знанием языка у меня проблемы, поэтому прошу о помощи Вас.
Заранее Спасибо!
*

SinBad

  • Завсегдатай
  • 1879
  • 187 / 0
  • Мнне 40 лет, мне 40 лет, ума так и не нажил!
В модули типа mod_custom бесполезно вставлять php код, так как он не интерпретируется в них, для этих целей служит mod_php.

Но его применение думаю нелогично, лучше создадим свою позицию для баннера. Если будет непонятно, посмотрите темы про создание шаблонов для Joomla и соотвественно позиции в шаблоне.

Итак открываем index.php. Ищем позицию в которой хотелось бы разместить наш модуль баннера. Например это позиция user1.

Цитировать
<?php if($this->countModules('user1')) : ?>
   <jdoc:include type="modules" name="user1" style="xhtml" />
<?php endif; ?>

Рядом с ней создаем новую позицию и заключаем ее в условие, например bannerpos и выглядеть это будет примерно вот так:

Код
<?php if($this->countModules('user1')) : ?>
   <jdoc:include type="modules" name="user1" style="xhtml" />
<?php endif; ?>

<?php if($this->countModules('bannerpos')) :
    if ($_SERVER['REMOTE_ADDR'] != '1.1.1.1') { ?>
         <jdoc:include type="modules" name="bannerpos" style="xhtml" />

    <?php }
endif; ?>

Учтите что нужно соблюдать структуру HTML при вставке позиции модуля, чтобы верстка "не поплыла", т.е. если позиция модуля заключена в ячейку таблицы <td>...</td> (как в оригинальном шаблоне rhuk_milkyway)  то и нашу позицию тоже заключаем в ячейку. Ну это так, небольшое отступление.

Идем дальше. Открываем файл templateDetails.xml в папке шаблона и ищем строки

Код
	<positions>
<position>breadcrumb</position>
<position>left</position>
<position>right</position>
...
</positions>

Добавляем в конце нашу позицию, чтобы выглядело так:

Код
	<positions>
<position>breadcrumb</position>
<position>left</position>
<position>right</position>
...
<position>bannerpos</position>
</positions>

Идем в модуль баннеров и переназначаем позицию bannerpos.

Либо вторйо вариант, я не знаю что вы правили в модуле баннеров, но если сделать это условие в этом файле \modules\mod_banners\tmpl\default.php
то баннеры так же не будут выводится, то есть так:

Код
<?php // no direct access
defined('_JEXEC') or die('Restricted access');
 if ($_SERVER['REMOTE_ADDR'] != '1.1.1.1') {  ?>
<div class="bannergroup<?php echo $params->get( 'moduleclass_sfx' )?>">

<?php if ($headerText) : ?>
<div class="bannerheader"><?php echo $headerText ?></div>
<?php endif;

foreach($list as $item) :

?><div class="banneritem<?php echo $params->get( 'moduleclass_sfx' )?>"><?php
echo modBannersHelper::renderBanner($params, $item);
?><div class="clr"></div>
</div>
<?php endforeach; ?>

<?php if ($footerText) : ?>
<div class="bannerfooter<?php echo $params->get( 'moduleclass_sfx' )?>">
<?php echo $footerText ?>
</div>
<?php endif; ?>
</div>
<?php } ?>
...Фет для них песни поёт. Фет не прикольный поэт - Фету никто не даёт.
*

artMelnikov

  • Захожу иногда
  • 57
  • 3 / 0
:D Спасибо большое, SinBad! Вы просто Человечище! Очень признателен за полный ответ!
2 вариант идеален для меня. Всё получилось! Работает на УРА!
1 вариант тоже пригодится.
А как указать несколько IP-адресов? Просто несколько условий сделать?
« Последнее редактирование: 11.11.2011, 10:12:36 от artMelnikov »
*

SinBad

  • Завсегдатай
  • 1879
  • 187 / 0
  • Мнне 40 лет, мне 40 лет, ума так и не нажил!
:D Спасибо большое, SinBad! Вы просто Человечище! Очень признателен за полный ответ!
2 вариант идеален для меня. Всё получилось! Работает на УРА!
1 вариант тоже пригодится.
А как указать несколько IP-адресов? Просто несколько условий сделать?
да можно типа такого условия
Код
($_SERVER['REMOTE_ADDR'] != '1.1.1.1' || $_SERVER['REMOTE_ADDR'] != '1.1.1.2' || $_SERVER['REMOTE_ADDR'] != '1.1.1.3')
...Фет для них песни поёт. Фет не прикольный поэт - Фету никто не даёт.
*

artMelnikov

  • Захожу иногда
  • 57
  • 3 / 0
да можно типа такого условия
Код
($_SERVER['REMOTE_ADDR'] != '1.1.1.1' || $_SERVER['REMOTE_ADDR'] != '1.1.1.2' || $_SERVER['REMOTE_ADDR'] != '1.1.1.3')
Так не работает. Просто не сверяется этими адресами и баннер показывается.
Не знаю на сколько это синтаксически правильно, но вот так сработало:
Код
if ($_SERVER['REMOTE_ADDR'] != '1.1.1.1') if ($_SERVER['REMOTE_ADDR'] != '1.1.1.2')
*

SinBad

  • Завсегдатай
  • 1879
  • 187 / 0
  • Мнне 40 лет, мне 40 лет, ума так и не нажил!
Так не работает. Просто не сверяется этими адресами и баннер показывается.
Не знаю на сколько это синтаксически правильно, но вот так сработало:
Код
if ($_SERVER['REMOTE_ADDR'] != '1.1.1.1') if ($_SERVER['REMOTE_ADDR'] != '1.1.1.2')
)нет, это просто я неправильно написал логику условия, нужно условие И поставить, а не ИЛИ, т.е. так:
Код
($_SERVER['REMOTE_ADDR'] != '1.1.1.1' && $_SERVER['REMOTE_ADDR'] != '1.1.1.2' && $_SERVER['REMOTE_ADDR'] != '1.1.1.3')
...Фет для них песни поёт. Фет не прикольный поэт - Фету никто не даёт.
*

artMelnikov

  • Захожу иногда
  • 57
  • 3 / 0
)нет, это просто я неправильно написал логику условия, нужно условие И поставить, а не ИЛИ, т.е. так:
Код
($_SERVER['REMOTE_ADDR'] != '1.1.1.1' && $_SERVER['REMOTE_ADDR'] != '1.1.1.2' && $_SERVER['REMOTE_ADDR'] != '1.1.1.3')

Так работает. Всё ништяк!  :D Еще раз, большое спасибо!
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

[Решено] Проблема с авторизацией Invalid Token

Автор treX

Ответов: 100
Просмотров: 97067
Последний ответ 06.10.2019, 16:55:45
от PaLyCH
модуль Newsflash: как вывести дату?

Автор joomloid

Ответов: 5
Просмотров: 3663
Последний ответ 03.04.2019, 12:25:27
от pH43
Как отредактировать модуль mod_yoo_slider?

Автор vitaliy4us

Ответов: 0
Просмотров: 2575
Последний ответ 06.12.2017, 16:14:45
от vitaliy4us
Как проверить форму обратной связи [Решено]

Автор mafiozzzza

Ответов: 8
Просмотров: 6845
Последний ответ 30.05.2017, 11:34:11
от darkghost
Модуль "Случайное изображение"

Автор irina 4444

Ответов: 16
Просмотров: 8563
Последний ответ 26.05.2017, 12:47:56
от gvg