--=REKLAMA=--

Jak wstawić do komponentu Kontakty mapkę Google

Z Joomla!WikiPL

Wersja Zwiastun (dyskusja | edycje) z dnia 17:30, 21 lis 2013

(różn.) ← poprzednia wersja | przejdź do aktualnej wersji (różn.) | następna wersja → (różn.)

Chcemy na stronie pokazującej dane teleadresowe (korzystającej ze standardowego komponentu Kontakty) umieścić mapkę Google. Jak to zrobić?

  1. Zainstalować wybrany dodatek np. Plugin Googlemaps.
  2. Skonfigurować go, wpisać wymagany Google API key i włączyć.
  3. Wyedytować plik: components/com_contact/views/contact/tmpl/default.php.
  4. Zaraz pod wpisem:
    defined( '_JEXEC' ) or die( 'Restricted access' );

    dodać:

    $params =& $GLOBALS['mainframe']->getParams('com_content');
    $dispatcher       =& JDispatcher::getInstance();
    JPluginHelper::importPlugin('content');
    $row = new stdClass();
    $row->text = "{mosmap width='500'|height='400'|lat='52.052312'|lon='4.447141'|zoom='3'| zoomType='Large'|zoomNew='0'|mapType='Satellite'| showMaptype='1'|overview='0'|text='sv DWO'|lang='pl'}";
    $row->title = "";
    $dispatcher->trigger('onPrepareContent', array (&$row, & $params, 0 ));

    "{mosmap width='500'|height='400'|lat='52.052312'|lon='4.44 7141'|zoom='3'| zoomType='Large'|zoomNew='0'|mapType='Satellite'| showMaptype='1'|overview='0'|text='sv DWO'|lang='pl'}"
    jest przykładowym kodem wywołującym mapkę w artykule.

  5. Trzeba podjąć decyzję, w którym miejscu wyświetlić naszą mapę. Wybrałam miejsce, gdzie pokazywany jest obrazek kontaktu - zamiast niego (w konfiguracji komponentu powinno być zaznaczone - pokaż).

    Zmieniony wpis:

    <?php if ( $this->contact->image && $this->contact->params->get( 'show_image' ) ) : ?>
    <div style="float: right;">
    <?php 
    //echo JHTML::_('image', 'images/stories' . '/'.$this->contact->image, JText::_( 'Contact' ), array('align' => 'middle')); 
    echo $row->text;
    ?>
     </div>
    <?php endif; ?>
    gdzie $row->text; jest naszą mapką (wyświetlanie obrazka zostało zakomentowane).
  6. Pozostaje tylko tak zmieniony plik zapisać - korzystając z techniki nadpisywania szablonów - jako:
    templates/nasz_szablon/html/com_contact/contact/default.php.
© Autor: [[Użytkownik:Jola|Jola]]. Materiał zostal udostępniony na licencji JEDL.

Dziękujemy za wkład

» Stefan Wajda [zwiastun],