Подбрано за Уеб дизайн, SEO оптимизация и Joomla

Adsmanager for Joomla 1.5 tips and tricks

Plugins for adsmanager

Google maps for AdsManager 2.5 RC2

 

Бърз и лесен и най-важното, безплатен начин да показваме карти от гугъл мапс по сайтове за обяви. Решението е крайно опростено, не изисква Google Maps API, защото показва само статични карти.

Плъгина може да изтеглите от тук:  plugin for Ads manager.

За да показва картите обаче вашият код на Adsmanager се нуждае от съвсем лек хак, както и от добавяне на допълнителни 3 полета (fields) към всяка обява. Те служат за интерфейс с потребители - всеки потребител може да указва дали желае или не показвана на карта, вида и - адрес или гугъл географски ккординати.

Имената на допълнителните полета трябва да са с фиксирано наименование.  ad_map,ad_latitude,ad_longitude, като   ad_longitude служи и за алтернативно въвеждане на адрес, вместо географски координати. Желателно е полетата да се конфигурират като невидими - тоест виждат се само при добавяне на нова обява или редакцията и. (Position Display избираме - No Display).

Ad_latitude и ad_longitude са обикновени текстови полета (Text Fields), конфигурирани за максимална дължина 60 символа, докато ad_map задължително трябва да е от тип radio button и конфигурирано като задължително поле (Required = Yes).  Целта е да получим radio button група с 3 опции - без карта, карта с адрес и карта с географска ширина и дължина.  Ако потребителят избере "Без Карта" то полето ще получи стойност 0, съответно 1 или 2 ако избера да се показва карта в обявата му.

4Това става като добавите 3 стойности в дефиницията на полето, за "Без Карта","Карта с Адрес" и "Карта с географски координати", както е показано на картинката.

 

 

 

 

 

 

 

 

 

 

След като сме дефинирали допълнителните полета, е необходимо лекичко да "хакнем" и php кода на Adsmanager за да показва той картата.

Отваряме за редакция /components/com_adsmanager/adsmanager.html.php

Намираме някъде към ред 1100..1200 следният код:{ code lang:html4strict}

<div class="adsmanager_spacer"></div>
</div>
</div>

{ /code}

и вмъкваме между div номер 3 и div номер 2 следният код:

if ( $row->ad_map >= 1 ) 
{
?>
<div class='adsmap'>
<?php
$param = new stdClass;
$param->latitude = $row->ad_latitude;
$param->longtitude = $row->ad_longitude;
$param->marker ='';  
$dispatcher =& JDispatcher::getInstance();
$i3=JPluginHelper::importPlugin('adsmanager','adsmanagergooglemaps',true);
$row2= new stdClass;
$row2->text = '';
$results = $dispatcher->trigger('JoomlaCoreUndocumentedEvent-ShowMap', array (&$row2, &$param, 0)); 
echo $row2->text;  
?>
</div>
<?php
}
?>

{ code lang:php id:4}{ /code}


Запазваме файла и системата е готова да показва карти. Това е . Този div с клас adsmap служи, ако желаете естествено допълнително да остилите вашата показваема карта. При настройките на плъгина може да задавате цвят, zoom  ширина и височина в пиксели на всички показвани в обявите карти.

 
Ипотпал
За мен

Известен съм като "Тихомир Ипотпалиев (ипотпал)" и се занимавам със консултиране и чат пак като web designer. Изработвам сайтове на Joomla, както и темплейти за WordPress, Drupal. Любима музика - техно. Обожавам и пиша фентъзи и фантастика, както и чета много книги. Любими градове са ми София, Пловдив, Варна и Бургас. Убеждения - крайно десни.

Rss за Уеб дизайн и SEO
RSS канали - блог и новини
Блог
Ипотпал новини
Статистика
Посетители днес: 66
Посетители общо: 69676
Прегледани страници:: 164895
От начална дата: 06-07-2010
Случайна статия