WPMMCC

Description

WPMMCC is a powerful multilingual plugin that helps you create and manage multilingual WordPress websites. It supports both directory-based URLs (example.com/en/, example.com/zh/) and WordPress Multisite configurations.

Key Features

Content Translation

  • Automatic translation of posts, pages, and custom post types
  • Support for multiple translation providers (Google, DeepL, Baidu, Youdao, OpenAI)
  • Bulk translation with progress tracking
  • Translation rules for fine-grained control
  • Field-level translation configuration

Theme Translation

  • Scan theme files for translatable strings
  • Automatic translation of theme text
  • Support for PHP, JavaScript, Twig templates
  • Database string scanning
  • Theme template tags support

Site Group Management

  • Organize sites into language groups
  • Directory-based multilingual structure
  • Multisite network support
  • Main site and child site configuration
  • Per-group translation settings

SEO & URL Management

  • Automatic hreflang tag generation
  • Canonical URL management
  • Multilingual XML sitemaps
  • URL localization for directory sites
  • SEO plugin compatibility

Task Queue System

  • Background processing for large translations
  • Action Scheduler integration
  • Task progress monitoring
  • Retry mechanism for failed tasks
  • Configurable batch processing

Use Cases

  • Create a multilingual corporate website
  • Build an international e-commerce store
  • Manage a multilingual blog network
  • Localize WordPress themes
  • Translate existing content to new languages

Requirements

  • WordPress 5.0 or higher
  • PHP 7.2 or higher
  • MySQL 5.7 or MariaDB 10.2
  • PHP extensions: openssl, json, mbstring, curl

External Services

This plugin connects to third-party translation and AI services to provide translation functionality. No data is sent to any service until you explicitly configure and use that translation provider. Below is a list of all external services used:

Google Translate API

  • Purpose: Automatic translation of content
  • Data sent: Text content to be translated, source and target language codes
  • When: When user initiates translation using Google as the provider
  • Service URL: https://translation.googleapis.com/language/translate/v2
  • Terms of Service: https://cloud.google.com/terms/service-terms
  • Privacy Policy: https://policies.google.com/privacy

DeepL API

  • Purpose: Automatic translation of content
  • Data sent: Text content to be translated, source and target language codes
  • When: When user initiates translation using DeepL as the provider
  • Service URL: https://api.deepl.com/v2/translate or https://api-free.deepl.com/v2/translate
  • Terms of Service: https://www.deepl.com/pro-license
  • Privacy Policy: https://www.deepl.com/privacy

Baidu Translate API

  • Purpose: Automatic translation of content
  • Data sent: Text content to be translated, source and target language codes
  • When: When user initiates translation using Baidu as the provider
  • Service URL: https://fanyi-api.baidu.com/api/trans/vip/translate
  • Terms of Service: https://fanyi-api.baidu.com/doc/5
  • Privacy Policy: https://fanyi-api.baidu.com/doc/21

Youdao Translate API

  • Purpose: Automatic translation of content
  • Data sent: Text content to be translated, source and target language codes
  • When: When user initiates translation using Youdao as the provider
  • Service URL: https://openapi.youdao.com/api
  • Terms of Service: https://ai.youdao.com/doc.s#guide
  • Privacy Policy: https://ai.youdao.com/doc.s

OpenAI API (or compatible)

  • Purpose: AI-powered translation using large language models
  • Data sent: Text content to be translated with translation prompts
  • When: When user initiates translation using LLM provider
  • Service URL: Configurable (default: https://api.openai.com/v1/chat/completions)
  • Terms of Service: https://openai.com/policies/terms-of-use
  • Privacy Policy: https://openai.com/policies/privacy-policy

Note: Users must configure their own API keys for these services. API keys are stored encrypted using AES-256 encryption in your database and are never logged or exposed in plain text.

Privacy Policy

WPMMCC respects your privacy and handles data responsibly:

  • Translation Data: Content sent to translation providers is processed according to each provider’s privacy policy
  • API Keys: Stored encrypted in your database, never transmitted except to the respective provider
  • No Tracking: The plugin does not track usage or send data to our servers
  • Local Processing: All other operations are performed locally on your server

For more information, please review the privacy policies of your chosen translation providers.

Credits

WPMMCC uses the following open-source libraries:

  • Action Scheduler (ASRunner 3.9.99-wpmmcc) – Consolidated build based on Action Scheduler 3.9.0, prefixed tables (wpmmcc_actionscheduler_*), defers to external Action Scheduler instances (e.g. WooCommerce) when present.
  • WordPress Coding Standards – Code quality

Support

Contributing

We welcome contributions! Please see our GitHub repository for:

  • Bug reports
  • Feature requests
  • Pull requests
  • Translation contributions

Screenshots

  • Site Groups management – Create and manage your multilingual site structure screenshot-3.png
  • Translation Rules – Configure translation providers and language pairs screenshot-1.png screenshot-2.png
  • Theme Translation – Scan and translate theme strings screenshot-4.png
  • Task Queue – Monitor background translation progress screenshot-5.png
  • Translation Fields – Configure which fields to translate screenshot-6.png
  • Global Settings – Plugin-wide configuration options screenshot-8.png

Installation

Automatic Installation

  1. Go to Plugins > Add New in your WordPress admin
  2. Search for “WPMMCC”
  3. Click “Install Now” and then “Activate”

Manual Installation

  1. Download the plugin ZIP file
  2. Go to Plugins > Add New > Upload Plugin
  3. Upload the ZIP file and click “Install Now”
  4. Activate the plugin

Configuration

  1. Navigate to WPMMCC > Site Groups to create your first site group
  2. Add sites (languages) to your site group
  3. Configure translation providers in WPMMCC > Translation Rules
  4. Set up translation fields in WPMMCC > Translation Fields
  5. Start translating your content!

FAQ

What translation providers are supported?

WPMMCC supports Google Translate, DeepL, Baidu Translate, Youdao, and OpenAI (GPT models) for automatic translation. You can configure multiple providers and use different ones for different language pairs.

Can I use this with WordPress Multisite?

Yes! WPMMCC fully supports WordPress Multisite. You can use it in two modes:
* Directory mode: Single site with language directories (example.com/en/, example.com/zh/)
* Multisite mode: Each language as a separate site in the network

Does it work with my SEO plugin?

WPMMCC is designed to work alongside popular SEO plugins like Yoast SEO, Rank Math, and others. You can control whether WPMMCC outputs canonical URLs and hreflang tags through the settings, allowing you to avoid conflicts with your SEO plugin.

How does the task queue work?

Large translation jobs are processed in the background using WordPress Action Scheduler. This prevents timeouts and allows you to continue working while translations are processed. You can monitor progress in WPMMCC > Tasks.

Can I translate theme strings?

Yes! The Theme Translation feature scans your theme files for translatable strings and allows you to translate them. It supports PHP files, JavaScript, Twig templates, and even strings stored in the database.

Is my API key secure?

Yes. All API keys and sensitive credentials are encrypted using AES-256 encryption before being stored in the database. They are never logged or exposed in plain text.

What happens to my data if I uninstall the plugin?

By default, all plugin data is retained when you deactivate the plugin. You can choose to delete all data during uninstallation through the settings. We recommend backing up your database before uninstalling.

Can I translate custom post types and taxonomies?

Yes! WPMMCC automatically detects all public post types and taxonomies in your WordPress installation and allows you to configure translation for each one.

How do I handle URL structure for different languages?

In directory mode, each language gets a URL prefix (e.g., /en/, /zh/). The plugin automatically:
* Rewrites URLs to include the language prefix
* Localizes internal links
* Handles redirects for old URLs
* Generates proper canonical and hreflang tags

Reviews

There are no reviews for this plugin.

Contributors & Developers

“WPMMCC” is open source software. The following people have contributed to this plugin.

Contributors

Translate “WPMMCC” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

0.1.1

  • New: Automatic category/tag translation when translating posts
  • New: Display Action Scheduler version info in settings page
  • New: Logging configuration via wp-config.php constants
  • Improved: Term translation filters already-translated terms
  • Fixed: Admin page JavaScript internationalization
  • Changed: Logging disabled by default for production

0.1.0

  • Initial release
  • Site group and site management
  • Content translation (posts, pages, custom post types)
  • Theme translation with file scanning
  • Multiple translation provider support (Google, DeepL, Baidu, Youdao, OpenAI)
  • Task queue with Action Scheduler integration
  • Multilingual XML sitemap generation
  • Hreflang and canonical URL management
  • SEO meta translation
  • Translation rules and field configuration
  • Directory-based URL structure support