ContinentsAndCountries by justb3a

Displays countries and continents.

WARNING: This repository is no longer maintained

This repository will not be updated. The repository will be kept available in read-only mode.

ProcessWire Continents and Countries

Displays countries and continents and their iso codes.

The "value" for each country is the two-letter country code.

As an added bonus, the country names are displayed in the language of the user (sorted by name ASC) if the appropriate translation was added.

Example Frontend

Fieldtype


This module adds a Fieldtype: Select Options Countries.

Field settings:

Example Field Settings

Example


PHP

<?php $countries = $modules->get('ContinentsAndCountries')->findByContinent('eu'); ?>

<select>
  <?php foreach ($countries as $country): ?>
    <option value="<?=$country->code; ?>">
      <?=$country->name; ?>
    </option>
  <?php endforeach; ?>
</select>

Translations


To translate the continents and countries, you must have the ProcessWire Language Support module installed. This is included with ProcessWire, so all you have to do is click to Modules > Language > Language Support > install.

Once you have Language Support installed, you have to add or edit the desired language by going to Setup > Languages > Add New Language. Enter a title and name for the language and save.

Next, you can add the file for the language (have a look at site/modules/ContinentsAndCountries/translations/ if the translation for your language exists) or translate it manually.

Available Methods


  • getContinents()
  • getCountries()
  • getByContinent($continent)
    • $continent has to be one of af, as, eu, na, sa, oc, an
    • (Africa, Asia, Europe, North America, South America, Oceania, Antarctica)

  • findBy($table = 'countries', $select = array(), $options = array())
    • for example: findBy('countries', array('name', 'iso'), array(id => 2))

    • returns:

        array (size=1)
          0 => object(stdClass)[1059]
              public 'name' => string 'Åland-Inseln' (length=13)
              public 'iso' => string 'ALA' (length=3)

Install and use modules at your own risk. Always have a site and database backup before installing new modules.

Twitter updates

  • ProcessWire 3.0.187: This week we have some very useful new additions to both the core Repeater Fieldtype and the ProFields Repeater Matrix Fieldtype. This post covers all the details along with a couple of brief demonstration videos— More
    22 October 2021
  • ProcessWire 3.0.185 (dev) core updates, plus new Session Allow module— More
    17 September 2021
  • Three new ProcessWire Textformatter modules: Find/Replace, Markdown in Markup, and Emoji— More
    3 September 2021

Latest news

  • ProcessWire Weekly #388
    In the 388th issue of ProcessWire Weekly we'll check out the latest core update, introduce two new third party modules, and more. Read on!
    Weekly.pw / 16 October 2021
  • ProcessWire 3.0.184 new master/main version
    This week we have a new master/main version released after a full year in the making. As you might imagine, this new version has a ton of great new stuff and we’ll try to cover much of it here.
    Blog / 27 August 2021
  • Subscribe to weekly ProcessWire news

“We chose ProcessWire because of its excellent architecture, modular extensibility and the internal API. The CMS offers the necessary flexibility and performance for such a complex website like superbude.de. ProcessWire offers options that are only available for larger systems, such as Drupal, and allows a much slimmer development process.” —xport communication GmbH