RatePress
RatePress Docs

Getting Started

  • Introduction
  • Getting Started

Core Features

  • Rating System
  • Templates
  • Blocks & Shortcodes

Advanced Features

  • Notifications
  • Confetti Effects

Languages

  • Translation System

Developer Guide

  • Architecture
  • API Reference
GitHubLive Demos

RatePress

The modern rating plugin for WordPress. Built with clean architecture, designed for performance, and loved by developers.

Documentation

  • Get Started
  • Technical Architecture
  • Templates
  • Translations

Resources

  • Download
  • Support
  • Contact
  • Review Us

© 2025 RatePress. All rights reserved.

Made with passion by Code Idealists

InternationalizationCommunity Driven

Translation System

Community-powered internationalization for RatePress. Contribute translations, help make the plugin accessible worldwide, and join our global community of translators.

Start ContributingView Repository

System Architecture

How RatePress handles translations dynamically

Remote Repository

Translations stored in a dedicated GitHub repository, automatically updated and maintained by the community.

On-Demand Loading

Plugin automatically downloads translations based on WordPress locale, keeping the core plugin lightweight.

Auto-Updates

Translation files are versioned and updated automatically when new strings are added to the source code.

The POT (Portable Object Template) file is automatically generated from the source code and serves as the foundation for all translations.

How It Works

The translation loading process

1

Locale Detection

WordPress determines the current language using determine_locale().

2

Translation Check

Plugin checks if translations exist locally in core/languages/.

3

Download if Needed

If missing or outdated, downloads MO, PO, and JSON files from the remote repository.

4

Load Translations

WordPress loads the translations using load_plugin_textdomain().

Contributing Translations

Help make RatePress accessible in your language

New to GitHub? No problem! Follow these step-by-step instructions to contribute your first translation.
1Fork the Repository

Go to the RatePress Languages Repository and click "Fork".

Fork Repository
2Clone Your Fork

Clone your forked repository to your local machine:

git clone https://github.com/novincode/ratepress-languages.git cd ratepress-languages
3Generate PO File

Create a PO file for your language (replace YOUR_LOCALE with your locale, e.g., fr_FR):

./script/generate-po.sh YOUR_LOCALE

This creates languages/YOUR_LOCALE/ratepress-YOUR_LOCALE.po

4Translate the PO File

Open the PO file with a translation editor like Poedit, or use the Quick Translation method below.

Translate all the msgid strings to your language in the msgstr fields.

5Generate MO and JSON Files

Compile your translations:

./script/generate-mo.sh YOUR_LOCALE ./script/generate-json.sh YOUR_LOCALE
6Test Locally

Copy the generated files to your RatePress plugin's core/languages/ folder and test in WordPress.

cp languages/YOUR_LOCALE/* /path/to/wp-ratepress/languages/
7Submit Your Translation

Commit your changes and create a pull request:

git add . git commit -m "Add YOUR_LANGUAGE translation" git push origin main

Then create a Pull Request on GitHub. You'll be credited as a contributor!

Quick Translation with AI

Accelerate your translation process

AI-Powered Translation Workflow
1

Generate PO File

./script/generate-po.sh YOUR_LOCALE
2

Send to AI for Translation

Copy the content of your PO file and ask an AI like ChatGPT or Claude to translate all the msgid strings to your language.

3

Review and Save

Review the AI translations, make any necessary corrections, and save the PO file.

4

Generate Final Files

./script/generate-mo.sh YOUR_LOCALE ./script/generate-json.sh YOUR_LOCALE
Pro tip: When asking AI to translate, provide context about RatePress being a WordPress rating plugin to ensure accurate translations.

Refreshing Translations

Force reload translations from the repository

To refresh or update your local translations, simply delete the existing files in core/languages/. The plugin will automatically download the latest versions on the next page load.

rm -rf /path/to/wp-ratepress/languages/*

This is useful when new translations are added or updated in the repository.

Available Languages

Current translation status

Check the languages.json file in the repository for the most up-to-date list of supported languages and their completion status.

View Languages JSON

Join Our Translation Community

Help make RatePress accessible to users worldwide. Your contributions will be recognized and appreciated by the global WordPress community.

Get StartedContribute on GitHub
Contributors credited
Community driven
Automatic updates