Herodotus Pro / Documentation

Multilingual Support

Herodotus includes translation files, locale-aware caching and WPML configuration for multilingual setups.

WPML

The plugin includes a wpml-config.xml file that automatically configures WPML to:

  • Translate the herodotus_post Custom Post Type
  • Translate the herodotus_category taxonomy
  • Copy/translate the date meta fields (_herodotus_day, _herodotus_month, _herodotus_year)

No manual WPML configuration is needed.

How It Works with WPML

  1. Create events in your default language.
  2. Use WPML's translation editor to create translated versions.
  3. The date meta fields are automatically copied to translations.
  4. Each language version is cached separately.

Polylang

Herodotus registers standard WordPress post types and taxonomies that can be enabled in Polylang. Check the language and date metadata of a translated sample event before relying on its output.

  1. After activating Herodotus, go to Languages → Settings in Polylang.
  2. Under Custom Post Types and Taxonomies, ensure herodotus_post and herodotus_category are enabled.
  3. Create events and assign languages as you normally would.

Included Translations

The plugin ships with translations for:

Language Locale Bundled translation
Georgian ka_GE Included
Russian ru_RU Included
Ukrainian uk Included
French fr_FR Included
German de_DE Included
Spanish es_ES Included
Italian it_IT Included
Turkish tr_TR Included

Contributing Translations

You can contribute translations via the WordPress.org GlotPress translation system.

  1. Go to the Herodotus translation project on GlotPress.
  2. Select your language.
  3. Suggest translations for untranslated strings.
  4. Once approved, they'll be included in future releases.

Text Domain

The plugin uses the text domain: herodotus

All translatable strings use standard WordPress i18n functions:

  • __('string', 'herodotus')
  • _e('string', 'herodotus')
  • esc_html__('string', 'herodotus')

Pro Translation Fields

The Pro WPML configuration copies Priority, Upcoming Event and its derived date, source URL and location coordinates. Source name and location name are translatable prose. Pro uses the separate herodotus-pro text domain.

Bundled translations can lag behind newly added strings. Inclusion is not a promise of 100% completeness for every current string. Verify both the visible translation and copied date fields after translating an event.