
Custom post types are where a lot of WordPress sites keep their most structured, business-critical content: portfolio items, real estate listings, team member profiles, events, recipes, case studies. Unlike standard posts and pages, custom post types are often built by a theme or plugin with their own label sets, admin UI and associated taxonomies and fields, which means translating them correctly requires more than running the visible content through a translation model.
What a Custom Post Type Actually Consists Of
| Component | Translation Handling |
|---|---|
| Post title and content | Translated the same way as standard posts and pages. |
| Registered labels (singular/plural name, menu labels) | Admin-facing labels are typically left in the site administrator’s language rather than translated per front-end visitor. |
| Custom taxonomies | Translated the same way as standard categories and tags, with translated posts re-linked to translated terms. |
| Attached custom fields | Translated field by field based on field type, the same approach used for ACF fields generally. |
| Archive and single templates | Any hardcoded text in the template itself, like “Related Listings,” needs translation through the theme’s own localization system, separate from content translation. |
Why CPT Archives Need Extra Attention
Custom post type archive pages, the URL that lists all items of a given type, often have their own slug, like /listings/ or /portfolio/, which should be translated the same way category and page slugs are, following the logic in our guide to translating WordPress URLs and slugs automatically. Missing this leaves a translated site with individual listing pages in the target language but an archive URL that is still in the source language, which is inconsistent and confusing for both visitors and search engines.
Handling Fields Attached to Custom Post Types
Most real-world custom post types pair with ACF or a similar custom fields plugin to store structured data: price, location, specifications, dates. These fields need the same field-type-aware translation approach covered in our guide to translating ACF custom fields with AI, since a custom post type without its attached fields translated is only partially localized even if the main content reads correctly.
How GPTranslate Handles Custom Post Types
GPTranslate treats registered custom post types as first-class translation targets, translating their content, taxonomies, attached custom fields and archive slugs together as one coherent unit rather than requiring separate configuration for each piece. This is part of the same dynamic content translation workflow used across the platform.
Frequently Asked Questions
Do custom post type labels need translation for every visitor language?
Registered labels are primarily admin-facing and used in the WordPress dashboard, so they are usually left in the site administrator’s language; what matters for visitors is the translated content, templates and taxonomy labels they actually see on the front end.
What happens to custom post type relationships across languages?
Relationship fields connecting one custom post type entry to another, or to a regular post, should point to the translated version of the related item for each language, the same principle covered for ACF relationship fields generally.
Conclusion
Custom post types hold some of the most valuable, structured content on many WordPress sites, and translating them completely means covering content, taxonomies, attached fields and archive URLs together, not just the visible title and body. Treating a custom post type as a single translation unit, rather than translating its pieces separately and hoping they stay in sync, is what keeps this kind of content fully localized.
