Использование модуля GeoIP в XSLT-шаблоне — различия между версиями
Материал из Umicms
Ver (обсуждение | вклад) (Новая страница: «__TOC__ == Общая информация == Модуль GeoIP возвращает данные об IP-адресе посетителя, такие, как …») |
Ver (обсуждение | вклад) |
||
Строка 4: | Строка 4: | ||
== [[XML]] == | == [[XML]] == | ||
− | Если открыть исходный [[XML]] страницы, можно увидеть узел, добавленный модулем [[ | + | Если открыть исходный [[XML]] страницы, можно увидеть узел, добавленный модулем [[GeoIP]]: |
+ | |||
+ | <source lang="xml"> | ||
+ | <geo> | ||
+ | <code>RU</code> | ||
+ | <country>Russia</country> | ||
+ | <region>Leningrad Oblast</region> | ||
+ | <city>Saint Petersburg</city> | ||
+ | <latitude>59.95005</latitude> | ||
+ | <longitude>30.31645</longitude> | ||
+ | </geo> | ||
+ | </source> | ||
== Примеры использования == | == Примеры использования == | ||
+ | Приведу простые для восприятия примеры использования GeoIP и XSLT | ||
+ | |||
+ | === Вывод на странице страны и города === | ||
+ | Выведем в отдельном блоке страну и город пользователя: | ||
+ | |||
+ | <source lang="xml"> | ||
+ | </source> | ||
+ | |||
+ | === Вывод текста в зависимости от страны === | ||
+ | Выведем сообщение, если IP не российский: | ||
+ | |||
+ | <source lang="xml"> | ||
+ | <xsl:template match="geo"> | ||
+ | <xsl:choose> | ||
+ | <xsl:when test="code = 'ru'"> | ||
+ | <xsl:text>Приветствую вас на моём сайте!</xsl:text> | ||
+ | <xsl:apply-templates select="/" /> | ||
+ | </xsl:when> | ||
+ | <xsl:otherwise> | ||
+ | <xsl:text>Sorry, available only from Russia</xsl:text> | ||
+ | </xsl:otherwise> | ||
+ | </xsl:choose> | ||
+ | </xsl:template> | ||
+ | </source> | ||
+ | |||
+ | |||
=== [[GoogleMaps]] === | === [[GoogleMaps]] === |
Версия 13:34, 27 апреля 2010
Содержание
Общая информация
Модуль GeoIP возвращает данные об IP-адресе посетителя, такие, как код страны, страна, область, город, широта и долгота.
XML
Если открыть исходный XML страницы, можно увидеть узел, добавленный модулем GeoIP:
<geo>
<code>RU</code>
<country>Russia</country>
<region>Leningrad Oblast</region>
<city>Saint Petersburg</city>
<latitude>59.95005</latitude>
<longitude>30.31645</longitude>
</geo>
Примеры использования
Приведу простые для восприятия примеры использования GeoIP и XSLT
Вывод на странице страны и города
Выведем в отдельном блоке страну и город пользователя:
Вывод текста в зависимости от страны
Выведем сообщение, если IP не российский:
<xsl:template match="geo">
<xsl:choose>
<xsl:when test="code = 'ru'">
<xsl:text>Приветствую вас на моём сайте!</xsl:text>
<xsl:apply-templates select="/" />
</xsl:when>
<xsl:otherwise>
<xsl:text>Sorry, available only from Russia</xsl:text>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
GoogleMaps
Так же можно отобразить точку на карте GoogleMaps, используя широту и долготу.
Статическая карта
Вот как будет выглядеть карта: