Как редактировать стили Google Map в WordPress - PullRequest
0 голосов
/ 13 марта 2019

Мне удалось получить код из Google, который позволяет мне редактировать цвета карты Google, и он у меня есть в моей ручке кода здесь

На данный момент тема у меня естьработает следующим образом: если я щелкну по названию города, откроется соответствующая страница, а затем карта Google покажет это конкретное местоположение и т. д.

Как реализовать код, который у меня есть в моей ручке, всайт WordPress?

В дочерней теме я скопировал содержимое нижнего колонтитула и добавил весь скрипт, а полный нижний колонтитул выглядит следующим образом:

<?php
/**
 * The template for displaying the footer
 *
 * Contains the closing of the #content div and all content after.
 *
 * @link https://developer.wordpress.org/themes/basics/template-files/#template-partials
 *
 * @package siber
 */
?>          
            <?php if(siber_styles()['footer'] == 'show' && siber_styles()['footer_scroll_top'] == 'show' && siber_styles()['header_style'] != 'side') { ?>
                <div class="scroll-top multimedia-element-set-icons-up-arrow-2" id="scroll-top"></div>
            <?php } if(siber_styles()['footer'] == 'show' || siber_styles()['footer'] == 'minified') { ?>
                <footer class="site-footer light main-row">
                    <?php if(siber_styles()['footer'] != 'minified') { ?>
                        <div class="footer-wrap">
                            <div class="container">
                                <div class="row">
                                    <div class="col-xs-12 col-sm-6 col-md-<?php echo esc_attr(siber_styles()['footer_col_1']) ?>">
                                        <div class="logo"><a href="<?php echo esc_url(home_url('/')) ?>"><?php echo wp_kses(siber_styles()['logo_content'], 'post') ?></a></div>
                                        <?php if(is_active_sidebar('footer-1')) { ?>
                                            <?php dynamic_sidebar('footer-1'); ?>
                                        <?php } ?>
                                    </div>
                                    <?php if(is_active_sidebar('footer-2')) { ?>
                                    <div class="col-xs-12 col-sm-6 col-md-<?php echo esc_attr(siber_styles()['footer_col_2']) ?>">
                                        <?php dynamic_sidebar('footer-2'); ?>
                                    </div>
                                    <?php } if(is_active_sidebar('footer-3')) { ?>
                                    <div class="col-xs-12 col-sm-6 col-md-<?php echo esc_attr(siber_styles()['footer_col_3']) ?>">
                                        <?php dynamic_sidebar('footer-3'); ?>
                                    </div>
                                    <?php } if(is_active_sidebar('footer-4')) { ?>
                                    <div class="col-xs-12 col-sm-6 col-md-<?php echo esc_attr(siber_styles()['footer_col_4']) ?>">
                                        <?php dynamic_sidebar('footer-4'); ?>
                                    </div>
                                    <?php } ?>
                                </div>
                            </div>
                        </div>
                    <?php } ?>
                </footer>

            <?php } ?>
        </div>
        <script>
      function initMap() {

        // Create a new StyledMapType object, passing it an array of styles,
        // and the name to be displayed on the map type control.
        var styledMapType = new google.maps.StyledMapType(
          [
            {elementType: 'geometry', stylers: [{color: '#ebe3cd'}]},
            {elementType: 'labels.text.fill', stylers: [{color: '#523735'}]},
            {elementType: 'labels.text.stroke', stylers: [{color: '#f5f1e6'}]},
            {
              featureType: 'administrative',
              elementType: 'geometry.stroke',
              stylers: [{color: '#c9b2a6'}]
            },
            {
              featureType: 'administrative.land_parcel',
              elementType: 'geometry.stroke',
              stylers: [{color: '#dcd2be'}]
            },
            {
              featureType: 'administrative.land_parcel',
              elementType: 'labels.text.fill',
              stylers: [{color: '#ae9e90'}]
            },
            {
              featureType: 'landscape.natural',
              elementType: 'geometry',
              stylers: [{color: '#dfd2ae'}]
            },
            {
              featureType: 'poi',
              elementType: 'geometry',
              stylers: [{color: '#dfd2ae'}]
            },
            {
              featureType: 'poi',
              elementType: 'labels.text.fill',
              stylers: [{color: '#93817c'}]
            },
            {
              featureType: 'poi.park',
              elementType: 'geometry.fill',
              stylers: [{color: '#a5b076'}]
            },
            {
              featureType: 'poi.park',
              elementType: 'labels.text.fill',
              stylers: [{color: '#447530'}]
            },
            {
              featureType: 'road',
              elementType: 'geometry',
              stylers: [{color: '#f5f1e6'}]
            },
            {
              featureType: 'road.arterial',
              elementType: 'geometry',
              stylers: [{color: '#fdfcf8'}]
            },
            {
              featureType: 'road.highway',
              elementType: 'geometry',
              stylers: [{color: '#f8c967'}]
            },
            {
              featureType: 'road.highway',
              elementType: 'geometry.stroke',
              stylers: [{color: '#e9bc62'}]
            },
            {
              featureType: 'road.highway.controlled_access',
              elementType: 'geometry',
              stylers: [{color: '#e98d58'}]
            },
            {
              featureType: 'road.highway.controlled_access',
              elementType: 'geometry.stroke',
              stylers: [{color: '#db8555'}]
            },
            {
              featureType: 'road.local',
              elementType: 'labels.text.fill',
              stylers: [{color: '#806b63'}]
            },
            {
              featureType: 'transit.line',
              elementType: 'geometry',
              stylers: [{color: '#dfd2ae'}]
            },
            {
              featureType: 'transit.line',
              elementType: 'labels.text.fill',
              stylers: [{color: '#8f7d77'}]
            },
            {
              featureType: 'transit.line',
              elementType: 'labels.text.stroke',
              stylers: [{color: '#ebe3cd'}]
            },
            {
              featureType: 'transit.station',
              elementType: 'geometry',
              stylers: [{color: '#dfd2ae'}]
            },
            {
              featureType: 'water',
              elementType: 'geometry.fill',
              stylers: [{color: '#b9d3c2'}]
            },
            {
              featureType: 'water',
              elementType: 'labels.text.fill',
              stylers: [{color: '#92998d'}]
            }
          ],
          {name: 'Styled Map'});

        // Create a map object, and include the MapTypeId to add
        // to the map type control.
        var map = new google.maps.Map(document.getElementById('map'), {
          center: {lat: 55.647, lng: 37.581},
          zoom: 11,
          mapTypeControlOptions: {
            mapTypeIds: ['roadmap', 'satellite', 'hybrid', 'terrain',
                         'styled_map']
          }
        });

        //Associate the styled map with the MapTypeId and set it to display.
        map.mapTypes.set('styled_map', styledMapType);
        map.setMapTypeId('styled_map');
      }
    </script>
        <script async defer
    src="https://maps.googleapis.com/maps/api/js?key=API_KEY&callback=initMap">
    </script>

        <?php wp_footer(); ?>

    </body>
</html>

Когда я загружаю страницу, я вижуследующая ошибка в консоли:

Вы включили Google Maps JavaScript API несколько раз на этой странице.Это может привести к непредвиденным ошибкам.

Если я удаляю КЛЮЧ API напрямую из параметров темы, карта не отображается.

1 Ответ

0 голосов
/ 13 марта 2019

Вы уверены, что скрипт Google Maps включен только один раз?Я подозреваю, что вы загружаете скрипт дважды, поскольку ошибка совершенно очевидна: вы запускаете карты Google несколько раз, но в приведенном выше коде он включен только один раз.Возможно, другой плагин загружает скрипт в другое место вашего кода.

Можете ли вы предоставить ссылку на фактическую страницу?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...