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

Rating based on reviews:
Total stars received: 0
Total reviews: 0
Average rating: 0
Filed under: User Blog
Гибкий плагин для фриланс-биржи, позволяющий добавить глобальный селектор местоположения для фильтрации на вашем сайте. Данный плагин работает в совместно с 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


Reviews

No reviews yet


Comments (0)

No comments yet
Only registered users can post new comments

Similar pages

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

Content author

webitproff

Offline

Sodium Carbonate

Last logged: 2026-07-19 01:57

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

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

  • Разработки на GitHub бесплатно
    • Page published: 2020-07-17 05:15
    • Last update: 2026-02-27 10:11