{"id":320538,"date":"2026-06-02T15:55:14","date_gmt":"2026-06-02T15:55:14","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/evertongue\/"},"modified":"2026-06-02T16:03:01","modified_gmt":"2026-06-02T16:03:01","slug":"evertongue","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/evertongue\/","author":14317743,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.1","stable_tag":"1.0.1","tested":"7.0","requires":"6.4","requires_php":"8.1","requires_plugins":null,"header_name":"Evertongue","header_author":"Photricity Web Design","header_description":"Simple, scalable WordPress translation that stays fast and manageable, whether you have 5 languages or 50.","assets_banners_color":"551f62","last_updated":"2026-06-02 16:03:01","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/photricity.com\/pay\/","header_plugin_uri":"https:\/\/photricity.com\/wordpress-plugins\/evertongue\/","header_author_uri":"https:\/\/photricity.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":39,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.1":{"tag":"1.0.1","author":"photricity","date":"2026-06-02 16:03:01"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3558330,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3558330,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3558330,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3558330,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.1"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3558258,"resolution":"1","location":"assets","locale":"","width":1200,"height":1000},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3558258,"resolution":"2","location":"assets","locale":"","width":1200,"height":1000},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3558258,"resolution":"3","location":"assets","locale":"","width":1200,"height":1000},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3558258,"resolution":"4","location":"assets","locale":"","width":1200,"height":1000},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3558258,"resolution":"5","location":"assets","locale":"","width":1200,"height":1000}},"screenshots":{"1":"Evertongue dashboard with language overview and go-live notice.","2":"Languages screen with flags, sort order, and quick actions.","3":"Page translation editing with searchable combobox.","4":"Settings screen for switcher defaults and automatic switchers.","5":"Front-end language switcher combobox on a translated page."}},"plugin_section":[],"plugin_tags":[104,1385,1734,99,2333],"plugin_category":[48],"plugin_contributors":[265486],"plugin_business_model":[],"class_list":["post-320538","plugin","type-plugin","status-publish","hentry","plugin_tags-i18n","plugin_tags-language","plugin_tags-localization","plugin_tags-multilingual","plugin_tags-translation","plugin_category-language-tools","plugin_contributors-photricity","plugin_committers-photricity"],"banners":{"banner":"https:\/\/ps.w.org\/evertongue\/assets\/banner-772x250.png?rev=3558330","banner_2x":"https:\/\/ps.w.org\/evertongue\/assets\/banner-1544x500.png?rev=3558330","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/evertongue\/assets\/icon-128x128.png?rev=3558330","icon_2x":"https:\/\/ps.w.org\/evertongue\/assets\/icon-256x256.png?rev=3558330","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/evertongue\/assets\/screenshot-1.png?rev=3558258","caption":"Evertongue dashboard with language overview and go-live notice."},{"src":"https:\/\/ps.w.org\/evertongue\/assets\/screenshot-2.png?rev=3558258","caption":"Languages screen with flags, sort order, and quick actions."},{"src":"https:\/\/ps.w.org\/evertongue\/assets\/screenshot-3.png?rev=3558258","caption":"Page translation editing with searchable combobox."},{"src":"https:\/\/ps.w.org\/evertongue\/assets\/screenshot-4.png?rev=3558258","caption":"Settings screen for switcher defaults and automatic switchers."},{"src":"https:\/\/ps.w.org\/evertongue\/assets\/screenshot-5.png?rev=3558258","caption":"Front-end language switcher combobox on a translated page."}],"raw_content":"<!--section=description-->\n<p>Evertongue helps WordPress sites carry one message across many languages without the overhead of a heavyweight multilingual system.<\/p>\n\n<p>It was built for teams who need more than a handful of translations. Many popular translation plugins work well for a few languages, then become hard to manage as the language list grows. Evertongue keeps the workflow intentionally simple: real WordPress pages and posts, predictable language URLs, focused string translation, and switchers that remain usable when your audience spans dozens of languages.<\/p>\n\n<p>Inspired by Revelation 5:9, \"every tribe and tongue and people and nation,\" Evertongue is for mission-driven teams working to make their message accessible to a global audience.<\/p>\n\n<h4>What Evertongue does<\/h4>\n\n<ul>\n<li>Translate pages and posts as whole posts using the standard Gutenberg\/classic editor<\/li>\n<li>Translate theme\/site strings captured at runtime via the gettext filter<\/li>\n<li>Default language at the site root, others under <code>\/{code}\/<\/code><\/li>\n<li>Identical slugs across every language for a given page or post<\/li>\n<li>Auto-swapping menu items with fallback to the default language<\/li>\n<li><code>evertongue_switcher()<\/code> template tag with list or searchable combobox<\/li>\n<li>hreflang alternate links and og:locale metadata on translated pages and posts<\/li>\n<li>WPML and Polylang importers for migrating languages, content, and strings<\/li>\n<li>PO file export\/import for round-tripping strings<\/li>\n<\/ul>\n\n<h4>What Evertongue does not try to be<\/h4>\n\n<p>Evertongue is not an all-in-one localization suite. It does not try to handle every edge case, automatic translation workflow, or site-specific integration inside the core plugin. The goal is a clean foundation for multilingual content that stays understandable, maintainable, and fast as your language count grows.<\/p>\n\n<h3>Usage<\/h3>\n\n<p>Add languages under Evertongue \u2192 Languages. Configure your default. Translate pages and posts from the editor sidebar (Gutenberg) or side meta box (Classic).<\/p>\n\n<p>Render the language switcher in your theme:<\/p>\n\n<pre><code>&lt;?php if ( function_exists( 'evertongue_switcher' ) ) evertongue_switcher(); ?&gt;\n<\/code><\/pre>\n\n<p>Use <code>style =&gt; 'combobox'<\/code> for a searchable dropdown.<\/p>\n\n<p>For users who prefer not to edit theme code, enable the floating button or footer list under Evertongue \u2192 Settings \u2192 Automatic switchers.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin files to <code>\/wp-content\/plugins\/evertongue<\/code>, or install through the WordPress Plugins screen.<\/li>\n<li>Activate the plugin through the Plugins screen.<\/li>\n<li>Open <strong>Evertongue \u2192 Languages<\/strong> and add your languages, then set a default.<\/li>\n<li>Use <strong>Evertongue \u2192 Settings<\/strong> to configure switchers, SEO tags, and setup mode while you migrate content.<\/li>\n<li>Translate pages and posts from the editor, or import existing translations under <strong>Import \/ export<\/strong>.<\/li>\n<li>When you are ready for public multilingual URLs, turn off setup mode (or click <strong>Go live<\/strong> on the dashboard notice).<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20evertongue%20work%20alongside%20wpml%20or%20polylang%3F\"><h3>Does Evertongue work alongside WPML or Polylang?<\/h3><\/dt>\n<dd><p>Yes, during migration. Setup mode keeps Evertongue's front-end routing and string translation off while you import content. When WPML remains active after go-live, Evertongue automatically defers front-end behavior to avoid conflicts. However, Evertongue is designed to work independently, without other translation plugins active.<\/p><\/dd>\n<dt id=\"who%20can%20manage%20languages%20and%20imports%3F\"><h3>Who can manage languages and imports?<\/h3><\/dt>\n<dd><p>Users with the <code>evertongue_manage<\/code> capability (administrators by default) can manage languages, settings, and WPML\/Polylang imports. Users with <code>evertongue_translate<\/code> (editors by default) can translate content, manage strings, and import PO files.<\/p><\/dd>\n<dt id=\"what%20happens%20when%20i%20uninstall%20the%20plugin%3F\"><h3>What happens when I uninstall the plugin?<\/h3><\/dt>\n<dd><p>By default, Evertongue leaves your languages, translations, and strings in the database. To remove all plugin data on uninstall, enable <strong>Remove plugin data on uninstall<\/strong> under Evertongue \u2192 Settings before deleting the plugin.<\/p><\/dd>\n<dt id=\"where%20is%20the%20default%20language%20url%3F\"><h3>Where is the default language URL?<\/h3><\/dt>\n<dd><p>The default language uses your normal site URLs at the root. Other languages are served under <code>\/{language-code}\/<\/code> with the same slug structure as the default.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Updated WPML import path resolution to use WordPress directory APIs.<\/li>\n<li>Admin notices are now scoped to Evertongue screens.<\/li>\n<li>Replaced rename() calls with WP_Filesystem::move()<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial public release.<\/li>\n<\/ul>","raw_excerpt":"Carry your message across every language. Lightweight, scalable WordPress translation for reaching a truly global audience.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/320538","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=320538"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/photricity"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=320538"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=320538"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=320538"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=320538"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=320538"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=320538"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}