PHPackages                             burnbright/silverstripe-shop-geocoding - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. burnbright/silverstripe-shop-geocoding

ActiveSilverstripe-vendormodule[Utility &amp; Helpers](/categories/utility)

burnbright/silverstripe-shop-geocoding
======================================

Geocoding support for SilverShop.

2.1.0(3y ago)71.6k12[1 issues](https://github.com/silvershop/silvershop-geocoding/issues)BSD-3-ClausePHPCI failing

Since Feb 13Pushed 12mo ago3 watchersCompare

[ Source](https://github.com/silvershop/silvershop-geocoding)[ Packagist](https://packagist.org/packages/burnbright/silverstripe-shop-geocoding)[ RSS](/packages/burnbright-silverstripe-shop-geocoding/feed)WikiDiscussions main Synced today

READMEChangelog (1)Dependencies (9)Versions (12)Used By (0)

SilverShop Geocoding
====================

[](#silvershop-geocoding)

Adds geocoding support to SilverShop. Work out address coordinates, based on entered address.

Makes use of the [geocoder-php/Geocoder](https://github.com/geocoder-php/Geocoder) library.

[![Latest Stable Version](https://camo.githubusercontent.com/a079339493b18bea56b66094e129c1795e2d562b4df36858b417277245287ce2/68747470733a2f2f706f7365722e707567782e6f72672f73696c76657273686f702f67656f636f64696e672f762f737461626c652e706e67)](https://packagist.org/packages/silvershop/geocoding)[![Latest Unstable Version](https://camo.githubusercontent.com/99cb07ecf5cc34e00fc28b842df60d8e8b7bd9cdf23bdc4773cf1e2a6ead4b82/68747470733a2f2f706f7365722e707567782e6f72672f73696c76657273686f702f67656f636f64696e672f762f756e737461626c652e706e67)](https://packagist.org/packages/silvershop/geocoding)[![CI](https://github.com/silvershop/silvershop-geocoding/actions/workflows/ci.yml/badge.svg)](https://github.com/silvershop/silvershop-geocoding/actions/workflows/ci.yml)[![Total Downloads](https://camo.githubusercontent.com/a13f64cd15aabde9ab9d3ad0dfc571d186bc1f4995299d27186ae15930d4650d/68747470733a2f2f706f7365722e707567782e6f72672f73696c76657273686f702f67656f636f64696e672f646f776e6c6f6164732e706e67)](https://packagist.org/packages/silvershop/geocoding)

Installation
------------

[](#installation)

```
composer require silvershop/geocoding
```

Configuration
-------------

[](#configuration)

A default configuration is provided, but you can define your own.

In \_config.php:

```
$geocoder = new \Geocoder\Geocoder();
$adapter  = new \Geocoder\HttpAdapter\CurlHttpAdapter();
$geocoder->registerProvider(
	new \Geocoder\Provider\ChainProvider(array(
		new \Geocoder\Provider\HostIpProvider($adapter),
		new \Geocoder\Provider\GoogleMapsProvider($adapter)
	))
);
AddressGeocoding::set_geocoder($geocoder);
```

To test ips locally, you can configure a 'test ip' in your config:

```
Address:
  test_ip: 202.160.48.114
```

Add `relocateuser=1` to a url to rerun the geocoder.

### Disable address coordinates geocoding

[](#disable-address-coordinates-geocoding)

By default an address's latitude and longitude is automatically retrieved on save if it has not already been worked out. This behavior can be disabled like this:

```
Address:
  enable_geocoding: false
```

### Disable automatic visitor ip geocoding

[](#disable-automatic-visitor-ip-geocoding)

By default this module geocodes the ip of every visitor. This behaviour can be disabled like this:

```
Page:
  geocode_visitor_ip: false
```

Warning
-------

[](#warning)

Relying on 3rd-party geocoding services can potentially slow down your website, especially if the external service comes under heavy load. You may want to consider setting up your own geocoding server instance.

Map fall back
=============

[](#map-fall-back)

If an address can't be geocoded, then provide a fallback checkout step for designating the coordinates with a google map field.

Be sure to add the checkout step to yaml config. After billing address will probably work best:

```
CheckoutPage:
  steps:
    'membership' : 'CheckoutStep_Membership'
    'contactdetails' : 'CheckoutStep_ContactDetails'
    'shippingaddress' : 'CheckoutStep_Address'
    'billingaddress' : 'CheckoutStep_Address'
    'addresslocation' : 'CheckoutStep_AddressLocationFallback' #here
    'shippingmethod' : 'CheckoutStep_ShippingMethod'
    'paymentmethod' : 'CheckoutStep_PaymentMethod'
    'summary' : 'CheckoutStep_Summary'
```

###  Health Score

40

—

FairBetter than 88% of packages

Maintenance34

Infrequent updates — may be unmaintained

Popularity26

Limited adoption so far

Community18

Small or concentrated contributor base

Maturity70

Established project with proven stability

 Bus Factor2

2 contributors hold 50%+ of commits

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~348 days

Recently: every ~806 days

Total

11

Last Release

986d ago

Major Versions

1.2.3 → 2.0.02016-06-12

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/1356335?v=4)[Jeremy Shipman](/maintainers/jedateach)[@jedateach](https://github.com/jedateach)

---

Top Contributors

[![wilr](https://avatars.githubusercontent.com/u/101629?v=4)](https://github.com/wilr "wilr (23 commits)")[![jedateach](https://avatars.githubusercontent.com/u/1356335?v=4)](https://github.com/jedateach "jedateach (18 commits)")[![AntonyThorpe](https://avatars.githubusercontent.com/u/1023740?v=4)](https://github.com/AntonyThorpe "AntonyThorpe (3 commits)")[![TheBnl](https://avatars.githubusercontent.com/u/1334195?v=4)](https://github.com/TheBnl "TheBnl (2 commits)")[![wernerkrauss](https://avatars.githubusercontent.com/u/1043925?v=4)](https://github.com/wernerkrauss "wernerkrauss (1 commits)")

---

Tags

geocodingaddresssilverstripeIPshopecommerce

### Embed Badge

![Health badge](/badges/burnbright-silverstripe-shop-geocoding/health.svg)

```
[![Health](https://phpackages.com/badges/burnbright-silverstripe-shop-geocoding/health.svg)](https://phpackages.com/packages/burnbright-silverstripe-shop-geocoding)
```

###  Alternatives

[sylius/addressing-bundle

Addressing and zone management for Symfony applications.

33221.4k3](/packages/sylius-addressing-bundle)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
