GeoTargeting FL Геотаргетинг для Фриланс-биржи

Рейтинг на основе отзывов:
Звезд получено: 0
Oтзывов всего: 0
Средняя оценка: 0
Опубликовано в: Блог пользователей
Гибкий плагин для фриланс-биржи, позволяющий добавить глобальный селектор местоположения для фильтрации на вашем сайте. Данный плагин работает в совместно с locationselector, что позволяет продолжить работу уже с полученными о местоположении пользователей данными. Особенностью данного плагина является поддержка данных, полученных плагином SxGeoIP Функции плагина GeoTargating: Допустим пользователь первый раз заходит на ваш сайт. SxGeoIP определяет его местоположение по ip. Если местоположение определено, то плагин обрабатывает эти данные для дальнейшей работы. Затем пользователю предлагается подтвердить найденный город. (см. ниже) Если пользователь подтвердил указанный город, плагин применяет фильтр по данному городу в модулях которые указаны в настройках (поддерживаемые модули см.ниже) Index Users Projects Folio Market (Для каждого модуля есть отдельный параметр вкл/выкл автоматической фильтрации) При нажатии на "Нет", появляется модальное окно: Данные о выборе сохраняются в cookie, поэтому при переходе по страницам указанный город сохраняется. Если пользователь выбрал только регион, фильтр применится ко всем городам этого региона. (аналогично при выборе Страны). Переключаемая функция вывода выбранного города в titile сайта Например: Title of your site Уфа (если выбран только регион, будет показан регион, аналогично для страны) LocationSelector должен быть установлен для работы плагина GeoTargeting Файлы README и TAGS в архиве обязателно прочитать! Внимание! Есть изменения в шаблоне geotargeting.modal.tpl в форме должан быть эта строка
<input type="hidden" name="geo" value="update"/>
  Порядок установки:
В файле header.tpl после <body> добавляем тэг {HEADER_GEOTARGETING_MODAL}
</head>
<body>
{HEADER_GEOTARGETING_MODAL}



Затем в том же файле ищем строчки
<div id="wrapper" class="container">
    <div class="navbar navbar-inverse navbar-fixed-top">
        <div class="navbar-inner">
            <div class="container">
                         ///вставляем сюда
                    <ul class="nav pull-right">
                        <!-- BEGIN: GUEST -->

После <div class="container"> Вставляем код:
  
<ul class="nav pull-left">
{HEADER_GEOTARGETING}        
</ul>
  В архиве есть пример шабла header.tpl
<!-- BEGIN: HEADER -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ";
<html xmlns="" >
<head>
<title>{HEADER_TITLE}</title> 
<!-- IF {HEADER_META_DESCRIPTION} --><meta name="description" content="{HEADER_META_DESCRIPTION}" /><!-- ENDIF -->
<!-- IF {HEADER_META_KEYWORDS} --><meta name="keywords" content="{HEADER_META_KEYWORDS}" /><!-- ENDIF -->
<meta http-equiv="content-type" content="{HEADER_META_CONTENTTYPE}; charset=UTF-8" />
<meta name="generator" content="Cotonti " />
<link rel="canonical" href="{HEADER_CANONICAL_URL}" />
{HEADER_BASEHREF}
{HEADER_HEAD}
<link rel="shortcut icon" href="favicon.ico" />
<link rel="apple-touch-icon" href="apple-touch-icon.png" />
</head>

<body>

  <!-- IF {PHP.usr.id} == 0 -->
  <div id="AuthModal" class="modal hide fade">
    <div class="modal-header">
      <h3 id="myModalLabel">{PHP.L.Login}</h3>
      </div>
      <div class="modal-body">
        <form class="form-horizontal" action="{HEADER_GUEST_SEND}" method="post">
          <div class="control-group">
            <label class="control-label" for="inputEmail">{PHP.L.users_nameormail}</label>
            <div class="controls">
              <input type="text" name="rusername" id="inputEmail" />
            </div>
          </div>
          <div class="control-group">
            <label class="control-label" for="inputPassword">{PHP.L.Password}</label>
            <div class="controls">
              <input type="password" name="rpassword" id="inputPassword" /><br/>
              <a rel="nofollow" class="link small" href="{PHP|cot_url('users','m=passrecover')}">{PHP.L.users_lostpass}</a>
            </div>
          </div>
          <div class="control-group">
            <div class="controls">
              <label class="checkbox">
              {HEADER_GUEST_COOKIETTL} {PHP.L.users_rememberme}
              </label><br/>
              <button type="submit" class="btn btn-primary btn-large">{PHP.L.Login}</button>
            </div>
          </div>
        </form>
      </div>
      <div class="modal-footer">
      <button class="btn" data-dismiss="modal" aria-hidden="true">{PHP.L.Close}</button>
    </div>
  </div>	
  <!-- ENDIF -->

{HEADER_GEOTARGETING_MODAL}
  	
  <div id="wrapper" class="container">
    <div class="navbar navbar-inverse navbar-fixed-top">
      <div class="navbar-inner">
        <div class="container">
        
          <ul class="nav pull-left">
          {HEADER_GEOTARGETING}         
           </ul>
            
            <ul class="nav pull-right">
              <!-- BEGIN: GUEST -->
              <li><a href="{PHP|cot_url('login')}" data-toggle="modal">{PHP.L.Login}</a></li>
              <li><a href="{PHP|cot_url('users','m=register')}">{PHP.L.Register}</a></li>
              <!-- END: GUEST -->
              
              <!-- BEGIN: USER -->
              <li><a href="{PHP.usr.name|cot_url('users', 'm=details&u='$this)}">{PHP.usr.name}</a></li>
              <li><a href="{PHP|cot_url('users', 'm=profile')}">{PHP.L.Profile}</a></li>
              <!-- IF {PHP.cfg.payments.balance_enabled} -->
              <li><a href="{HEADER_USER_BALANCE_URL}">{PHP.L.payments_mybalance}: {HEADER_USER_BALANCE|number_format($this, '2', '.', ' ')} {PHP.cfg.payments.valuta}</a></li>
              <!-- ENDIF -->
              <li class="dropdown">
                <a class="dropdown-toggle" data-toggle="dropdown" href="#">{PHP.L.projects_projects}<b class="caret"></b></a>
                <ul class="dropdown-menu">
                  <li><a href="{PHP.usr.id|cot_url('users', 'm=details&id='$this'&tab=projects')}">{PHP.L.projects_myprojects}</a></li>
                  <!-- IF {PHP.cot_plugins_active.sbr} -->
                  <li><a href="{PHP|cot_url('sbr')}">{PHP.L.sbr_mydeals}</a></li>
                  <!-- ENDIF -->
                  <!-- IF {PHP|cot_auth('projects', 'any', '1')} -->
                  <li><a href="{PHP|cot_url('projects', 'm=useroffers')}">{PHP.L.offers_useroffers}</a></li>
                  <!-- ENDIF --> 
                </ul>
              </li>
              <li class="dropdown">
                <a class="dropdown-toggle" data-toggle="dropdown" href="#">{PHP.L.market}<b class="caret"></b></a>
                <ul class="dropdown-menu">
                  <li><a href="{PHP.usr.id|cot_url('users', 'm=details&id='$this'&tab=market')}">{PHP.L.market_myproducts}</a></li>
                  <!-- IF {PHP.cot_plugins_active.marketorders} -->
                  <li><a href="{PHP|cot_url('marketorders', 'm=sales')}">{PHP.L.marketorders_mysales}</a></li>
                  <li><a href="{PHP|cot_url('marketorders', 'm=purchases')}">{PHP.L.marketorders_mypurchases}</a></li>
                  <!-- ENDIF --> 
                </ul>
              </li>
              <li>
                <!-- IF {HEADER_USER_PROEXPIRE} -->
                <a href="{PHP|cot_url('plug', 'e=paypro')}" title="{PHP.L.paypro_header_extend}">{PHP.L.paypro_header_expire_short} {HEADER_USER_PROEXPIRE|cot_date('d.m.Y', $this)}</a>
                <!-- ELSE -->
                <a href="{PHP|cot_url('plug', 'e=paypro')}" title="{PHP.L.paypro_header_buy}">{PHP.L.paypro_header_buy}</a>
                <!-- ENDIF -->
              </li>
              <!-- IF {HEADER_USER_PMREMINDER} --><li>{HEADER_USER_PMREMINDER}</li><!-- ENDIF -->
              <li>{HEADER_USER_ADMINPANEL}</li>
              <li>{HEADER_USER_LOGINOUT}</li>
              <!-- END: USER -->
            </ul>
        </div>
      </div>
    </div>
              
    <div id="header" class="row">
      <div class="span4">
        <div class="logo"><a href="{PHP|cot_url('index')}" title="{PHP.cfg.maintitle} {PHP.cfg.separator} {PHP.cfg.subtitle}"><img src="themes/{PHP.theme}/img/logo.png"/></a></div> 
      </div>
      <div class="span5">
        
      </div>
      <div class="span3 textright paddingtop10">
        <!-- BEGIN: I18N_LANG -->
          <!-- BEGIN: I18N_LANG_ROW -->
          <a href="{I18N_LANG_ROW_URL}" class="{I18N_LANG_ROW_CLASS}"><img src="images/flags/{I18N_LANG_ROW_FLAG}.png"/></a> &nbsp;
          <!-- END: I18N_LANG_ROW -->
        <!-- END: I18N_LANG -->
      </div>
    </div>

    <div class="navbar">
      <div class="navbar-inner">
        <ul class="nav">
          <li<!-- IF {PHP.env.ext} == 'index' --> class="active"<!-- ENDIF -->><a href="{PHP|cot_url('index')}">{PHP.L.Home}</a></li>
          <li<!-- IF {PHP.env.ext} == 'projects' --> class="active"<!-- ENDIF -->><a href="{PHP|cot_url('projects')}">{PHP.L.projects_projects}</a></li>
          <li<!-- IF {PHP.env.ext} == 'users' AND ({PHP.group} == {PHP.cot_groups.4.alias} AND {PHP.m} == 'main' --> class="active"<!-- ENDIF -->><a href="{PHP.cot_groups.4.alias|cot_url('users', 'group='$this)}">{PHP.cot_groups.4.name}</a></li>
          <li<!-- IF {PHP.env.ext} == 'users' AND ({PHP.group} == {PHP.cot_groups.7.alias} AND {PHP.m} == 'main' --> class="active"<!-- ENDIF -->><a href="{PHP.cot_groups.7.alias|cot_url('users', 'group='$this)}">{PHP.cot_groups.7.name}</a></li>
          <li<!-- IF {PHP.env.ext} == 'market' AND !{PHP.type} --> class="active"<!-- ENDIF -->><a href="{PHP|cot_url('market')}">{PHP.L.market}</a></li>
        </ul>
      </div>
    </div>
    
    <div id="main" class="content">
<!-- END: HEADER -->
  Для редактирования модального окна и кнопки города предусмотрены 2 шаблона geotargeting.modal.tpl и geotargeting.header.tpl соответственно. Добавляет глобальный селектор местоположения для фильтрации на вашем сайте. Совместно с плагином sxgeoip можно предлагать пользователю выбрать его город, после чего весь контент (можно настроить) фильтруется по выбранному городу. Обязательно должен быть установлен плагин LocationSelector! Если в настройках вы включили автоматическую фильтрацию для какого либо модуля, форма местоположения в поиске этого модуля перестанет работать, поэтому следует удалить тэг {SEARCH_LOCATION} из формы поиска в шаблоне этого модуля. например вы включили авто.фильтрацию для модуля Users. Это значит, что при поиске фрилансеров или работодателей, они будут отфильтрованы по региону/городу который указал пользователь. Поэтому селектор местоположения в поиске следует убрать. * Code=geotargeting * Name=Geo Targeting * Description=Определение города и вывод информации для определенного города/региона/страны * Version=1.5.0 * Date=2015.06.25 * Author=Alexeev vlad * Requires_plugins=locationselector * Recommends_modules=SxGeo IP base v2 Готовые плагины для Cotonti - Веб-разработка на CMS / CMF Cotonti Готовые плагины и модули, услуги по веб-разработке на Cotonti Cotonti, плагины, модули, фриланс биржа, портал товаров и услуг, скачать плагины для Cotonti


Отзывы

Отзывов пока нет


Комментарии (0)

Комментарии отсутствуют
Добавление комментариев доступно только зарегистрированным пользователям

Похожие страницы

GeoTargeting Tiu Геотаргетинг
1 GeoTargeting Tiu Геотаргетинг для Портала товаров и услуг Гибкий плагин для портала товаров и услуг, позволяющий
Модуль «Маркет» для фриланс биржи
2 Модуль «Market» — Витрина товаров и услуг [Документация по модулю «Market» и расширениям, помощь, поддержка, доработки
Настройка ЧПУ для фриланс-биржи на Cotonti
3 Настройка ЧПУ для фриланс-биржи на Cotonti Данный мануал позволяет настроить ЧПУ для вашей фриланс-биржи. ЧПУ также
Market Filter плагин для фриланс-биржи
4 Плагин фильтра предложений товаров и услуг опубликованных в модуле Market на сайте фриланс-биржи, на базе Cotonti
RouteMap Плагин для фриланс-биржи
5 RouteMap Плагин для фриланс-биржи, позволяет добавление маршрута к проекту Плагин позволяет добавлять к проекту

Автор контента

webitproff

Оффлайн

Carbonate Sodium

Последняя авторизация: 04.08.2026 21:49

  • Чем могу помочь?

    Оказываю весь спектр услуг по CMF Cotonti. Разработка открытых и закрытых корпоративных интернет порталов, небольших социальных сетей, торговые площадки, маркетплейсы, биржи фриланса, каталоги товаров оптовых поставщиков, интернет-магазин под заказ, чтобы делать совместные покупки и групповые совместные продажи от имени нескольких продавцов.

  • Разработки на GitHub бесплатно
    • Страница размещена: 17.07.2020 05:15
    • Последнее обновление: 27.02.2026 10:11