DLE Country Filter v2.0

Категория: Модули DLE » Модуль для DLE 13.1, 13.0, 12.1, 12.0, 11.3, 11.2, 11.1, 11.0, 10.6, 10.5, 10.4, 10.3, 10.2, 10.1, 10.0, 9.8
DLE Country Filter v2.0
Представляем модуль для DLE Country Filter v2.0 - для добавления новых тегов фильтрации контента по IP-адреса в зависимости от страны посетителя. Фильтрация выполняется на основе базы данных IP адресов. Модуль Country Filter для DLE позволяет скрыть или показывать информацию на сайте пользователям по адресам IP. К примеру для пользователей из Украины не будет доступна информация в полной или краткой новости, а их РФ будет.

Требования: версия PHP 5.1 и выше



Режим отладки/проверки работы модуля
DLE Country Filter v2.0

Файл: /engine/modules/sitelogin.php
Что бы отладить/проверить работу модуля Country Filter v2.0, в самом начале этого файла заменить:

$_IP = get_ip();


на нужный IP, например:

$_IP = "192.168.0.1";


Внимание! В целях безопасности не стоит это делать на общедоступном сайте!

Для проверки определённой страны, нужно в файле: /engine/modules/show.full.php
Перед правками вставленными по инструкции установки модуля добавить:

echo $member_id['user_country'];


и если вверху страницы полной новости выведется не страна для которой скрывается, в данном случае RU, то надо перелогинится на сайт, или если отлаживалось подменой IP, как описано выше, то удалить эту отладку, либо наоборот, в случае локальной проверки, вписать IP нужной страны.
DLE Country Filter v2.0

Удалить правки что вносились по инструкции установки модуля в файл: /engine/classes/templates.class.php
Создать доп.поле:
Название: country
Описание: Скрыть от стран
Тип: одна строка
Использовать при желании (можно оставить поле пустым)

В новости указать символьный код страны, или стран через запятую от которых надо скрыть часть контента
Пример использования в шаблоне
[url=http://www.dle9.com/]дле[/url]


[xfgiven_country][not-country=[xfvalue_country]] доп.поле не пустое, видят все, кроме [xfvalue_country] [/not-country][/xfgiven_country]
[xfnotgiven_country] доп.поле пустое, видят все [/xfnotgiven_country]


Внимание! Теги модуля после этого будут работать только в текстах и шаблонах краткой, полной и кустом новостей, в остальных шаблонах сайта теги модуля не будут отработаны.

Пример удаления тегов attachment с текста полной новости со списком стран через доп.поле

Доп.поле используется созданное в прошлом примере.
Файл: /engine/modules/show.full.php
Перед правками вставленными по инструкции установки модуля добавить:

#****** Country Filter *** remove attachment ******#
		if( $xfieldsdata['country'] != "" ) {
			if( in_array( $member_id['user_country'], explode( ",", $xfieldsdata['country'] ) ) ) {
				$tpl->result['content'] = preg_replace( "#\[attachment=(.+?)\]#is", "", $tpl->result['content'] );
			}
		}


Модуль Country Filter v2.0 добавляет в DLE функционал фильтрации контента в зависимости от страны посетителя.

Модуль Country Filter добавляет для текста новостей и шаблонов теги:

[country=RU] отображать блок только для посетителей с России [/country]
[country=RU,UA] отображать блок только для посетителей с России и Украины [/country]
[not-country=RU] скрыть блок от посетителей из России [/not-country]
[not-country=RU,UA] скрыть блок от посетителей из России и Украины [/not-country]


и т.д. можно задавать код любой из стран или их список через запятую

Данные теги можно использовать как непосредственно в тексте новостей(краткой, полной и выводимых тегом custom) так и в файлах шаблона дле.

Совместимая версия DataLife Engine : 8.3- DLE 10.4, возможно будет работать на DLE 10.5
Автор: MSW источник

Скачать модули для дле, а также подробное описание модуля Country Filter v2.0 :
Представляем модуль для DLE Country Filter v2.0 - для добавления новых тегов фильтрации контента по IP-адреса в зависимости от страны посетителя. всё лучшее у нас форумы, хаки, модули, шаблоны.
  • 80
Рубрика: DLE модули » Бесплатные
Ранее » DLE Billing + МегаКасса« Далее OneDLE Управление сайтом через Android
Нажмите на ссылку, чтобыОставить комментарий
  • № :1
  • 26 июля 2015 19:39
Hello,How can use the Country Filter under xfiles?

e.g:

[xfgiven_iframe]
<div style="position:relative;padding-bottom:56.25%;padding-top:25px;
height:0;width:100%;min-width:100%"> <div id="player_box"> <iframe src="[xfvalue_iframe]" frameborder="0" allowfullscreen style="position:absolute;top:0;left:0;width:100%;height:
100%"></iframe> </div> </div> [/xfgiven_iframe]