如何显示在Advance Custom Fields Wordpress插件中创建的具有不同位置的多个Google Maps?

时间:2019-01-24 06:00:24

标签: wordpress google-maps

我已经在其字段组区域的“高级自定义字段(ACF)”插件中创建了两个“地图”字段,请查看屏幕截图Advanced Custom Fields Google Map field group 但是在前端,当我尝试根据Google Maps自定义字段代码添加代码时,只有一个地图没有显示第二个https://www.advancedcustomfields.com/resources/google-map/

Try to show second Google Map but not working

2 个答案:

答案 0 :(得分:0)

希望您有ACF Pro版本:) 然后您可以使用转发器字段 创建转发器字段“ locations”,然后仅在一个名称为“ location”的字段内,并使用示例“将多个标记渲染到地图上”中的代码

答案 1 :(得分:0)

是的,我能够弄清楚这一点。不需要任何其他不同的设置,只需要在ACF字段组区域中添加一个字段,并通过与第一个字段相同的设置在前端显示该字段,而只需更改位置变量名称并传递即可其中的第二个字段值。下面是完整的代码示例,以不同的HTML元素显示第一张地图和第二张地图。

第一张地图:

    <?php
                        $location = get_field('map');

                        if( !empty($location) ):
                        ?>
                        <div class="acf-map">
                            <div class="marker" data-lat="<?php echo $location['lat']; ?>" data-lng="<?php echo $location['lng']; ?>"></div>
                        </div>
            <?php endif; ?>

第二张地图:

    <?php
        $location_second = get_field('map_second');
            if( !empty($location_second) ):
    ?>
    <div class="acf-map">
        <div class="marker" data-lat="<?php echo $location_second['lat']; ?>" data-lng="<?php echo $location_second['lng']; ?>"></div>
    </div>
    <?php endif; ?>

由于我在ACF插件中创建了两个地图字段,第一个地图字段的名称为Map,第二个地图字段名称为Map Second,因此它们将在上述代码中用作map和map_second。