Title: French Typo
Author: Jason Rouet
Published: <strong>19 نوفمبر، 2025</strong>
Last modified: 30 مارس، 2026

---

البحث عن الإضافات

![](https://ps.w.org/french-typo/assets/icon.svg?rev=3399308)

# French Typo

 بواسطة [Jason Rouet](https://profiles.wordpress.org/jaz_on/)

[تنزيل](https://downloads.wordpress.org/plugin/french-typo.1.2.1.zip)

 * [تفاصيل](https://ar.wordpress.org/plugins/french-typo/#description)
 * [المراجعات](https://ar.wordpress.org/plugins/french-typo/#reviews)
 *  [التنصيب](https://ar.wordpress.org/plugins/french-typo/#installation)
 * [التطوير](https://ar.wordpress.org/plugins/french-typo/#developers)

 [الدعم](https://wordpress.org/support/plugin/french-typo/)

## الوصف

French Typo automatically applies French typography rules to your content. Choose
regular or thin non-breaking spaces in Settings > French Typo and save to add spaces
before punctuation (`;`, `:`, `!`, `?`, `%`, `«`, `»`); until you do, punctuation
spacing stays off. It replaces `(c)` with `©`, `(r)` with `®`, and `(tm)` / `(TM)`
with `™`. It can normalize common French ordinal abbreviations (`1ère`  `1re`, `
3ème`  `3e`, etc.) when that option is enabled (on by default until you save settings
without it).

Rules apply to posts, pages, excerpts, taxonomies, archives, comments, widgets, 
menus, RSS feeds, REST API, custom fields, breadcrumbs, and SEO metadata. Most areas
can be enabled or disabled in settings. SEO titles, meta descriptions, and Open 
Graph/Twitter strings from Yoast SEO, Rank Math, or SEOPress are not gated by the
same toggles as post title and content; breadcrumbs use their own option.

#### Features

 * Non-breaking spaces before punctuation marks
 * Optional French ordinal abbreviations (`1ère`  `1re`, `3ème`  `3e`, hyphenated“
   n-ième”  `nième`, etc.), with the same raw HTML boundaries as other rules
 * Special character replacements (`(c)`  `©`, `(r)`  `®`)
 * Configurable: regular or thin non-breaking spaces
 * Comprehensive coverage: all WordPress content areas
 * Granular control: enable or disable each area individually
 * SEO integration: Yoast SEO, Rank Math, SEOPress
 * Custom fields support: ACF and Meta Box
 * Respects HTML and shortcodes

### Author & Credits

**Jason Rouet**
 * Website: [jasonrouet.com](https://jasonrouet.com) * Email: [bonjour@jasonrouet.com](https://ar.wordpress.org/plugins/french-typo/bonjour@jasonrouet.com?output_format=md)*
WordPress.org: [profiles.wordpress.org/jaz_on/](https://profiles.wordpress.org/jaz_on/)

You can support this project on [Ko-fi](https://ko-fi.com/jasonrouet) or [GitHub Sponsors](https://github.com/sponsors/jaz-on).

This plugin is a fork of **French Typo** created by Gilles Marchand (master_shiva),
completely rebuilt since March 2024 with the help of [Jean-Baptiste Audras](https://profiles.wordpress.org/audrasjb/).
Inspired by [TypoFR](https://wordpress.org/plugins/typofr/), [Orthotypo](https://wordpress.org/plugins/orthotypo-orthotypographie-automatique/),
and [Consistency](https://wordpress.org/plugins/consistency/).

## لقطات الشاشة

 * [[
 * Plugin settings page

## التنصيب

 1. Upload the plugin files to `/wp-content/plugins/french-typo`, or install through
    the WordPress plugins screen.
 2. Activate the plugin.
 3. Configure options in `Settings > French Typo`.

## الأسئلة المتكررّة

### Does this plugin modify existing content?

No. Typography rules are applied on-the-fly when content is displayed, without modifying
the original content in the database.

### What’s the difference between regular and thin non-breaking spaces?

Regular spaces (`&nbsp;`) are standard and prevent line breaks. Thin spaces (`&#
8239;`) are narrower and may not display correctly depending on the font or browser.

### Can I disable certain features?

Yes. You can disable non-breaking spaces or character replacements, and choose which
content areas to process (SEO plugin title/meta/social strings are separate from
those checkboxes; see description).

### Does typography run inside code, scripts, or textareas?

No. Narrow spaces, (c)/(r)/(tm) replacements, and optional ordinal abbreviations
are skipped inside script, style, pre/code (nested), and textarea, and in embedded
CSS (e.g. SVG). The Verse block stays typographic unless it is also a Code block.
See the plugin documentation on GitHub for details.

### Does the plugin change English ordinals (1st, 2nd) or “1ème”?

No. English-style ordinals and non-standard `1ème` are left as typed. Disable **
Ordinal abbreviations** under Settings > French Typo if you prefer to keep forms
like `3ème` in French text.

## المراجعات

![](https://secure.gravatar.com/avatar/d6d5bf81bb8a30a52c9a8b9ede2b0da1c1d4a7e54f8ef25c727a39ea7902c5fe?
s=60&d=retro&r=g)

### 󠀁[L’extension indispensable pour le texte](https://wordpress.org/support/topic/lextension-indispensable-pour-le-texte/)󠁿

 [SeeRealMy](https://profiles.wordpress.org/cyrilmailhes/) 30 مارس، 2026

Fini les “?” et les “:” qui finissent orphelins en début de ligne… Et pas seulement…
La gestion des espaces insécables et des espaces fines sur le web est généralement
mise de côté, et c’est bien domage. Ce plugin (paramétrable) rectifie le tir. Plus
besoin d’insérer manuellement dans le code des “&nbsp;” ! MERCI

![](https://secure.gravatar.com/avatar/a2b1728422e32ad81c22480dfb5c59f410553886310214604e127404333f6ad5?
s=60&d=retro&r=g)

### 󠀁[Just perfect](https://wordpress.org/support/topic/just-perfect-701/)󠁿

 [chaplin89](https://profiles.wordpress.org/chaplin89/) 17 مارس، 2026 1 reply

Je pensais devoir coder ça moi-même mais tu as fait ça parfaitement. Juste merci
😉

![](https://secure.gravatar.com/avatar/e62272b18152f1b30e33cfb2fc7df89dff3811b6d085f8e1c45fb25019fe91b0?
s=60&d=retro&r=g)

### 󠀁[Simple, efficent and very useful ! Thanks](https://wordpress.org/support/topic/simple-efficent-and-very-useful-thanks/)󠁿

 [Béryl de La Grandière](https://profiles.wordpress.org/beryldlg/) 20 نوفمبر، 2025
1 reply

Merci Jason, super initiative, ça manquait !Je regarde ta todo et j’ai quelques 
remarques à ajouter Concernant les abréviations de nombres ordinauxpremier donne
bien 1er mais première donne 1re et non 1ère Deuxième et troisième donnent 2e et
3e dans tous les cas, pas de 2ème ou 3ème Sinon les numéraux indéfinis s’abrègent
en nième nième et xième, ce qui est calqué sur leur prononciation.

 [ إقرأ جميع المراجعات 3 ](https://wordpress.org/support/plugin/french-typo/reviews/)

## المساهمون والمطوّرون

“French Typo” هو برنامج مفتوح المصدر. وقد ساهم هؤلاء الأشخاص بالأسفل في هذه الإضافة.

المساهمون

 *   [ Jason Rouet ](https://profiles.wordpress.org/jaz_on/)
 *   [ Jb Audras ](https://profiles.wordpress.org/audrasjb/)
 *   [ Julio Potier ](https://profiles.wordpress.org/juliobox/)
 *   [ Béryl de La Grandière ](https://profiles.wordpress.org/beryldlg/)

لقد تم ترجمة ”French Typo“ إلى لغة واحدة. شكراً إلى جميع [المُترجمين](https://translate.wordpress.org/projects/wp-plugins/french-typo/contributors)
لمُساهماتهم.

[ترجمة ”French Typo“ إلى لغتك.](https://translate.wordpress.org/projects/wp-plugins/french-typo)

### مُهتم بالتطوير؟

[تصفّح الشفرة](https://plugins.trac.wordpress.org/browser/french-typo/)، تحقق من
[مستودع SVN](https://plugins.svn.wordpress.org/french-typo/)، أو الاشتراك في [سجل التطوير](https://plugins.trac.wordpress.org/log/french-typo/)
بواسطة [RSS](https://plugins.trac.wordpress.org/log/french-typo/?limit=100&mode=stop_on_copy&format=rss).

## سجل التغييرات

Full history for all versions: [CHANGELOG.md](https://github.com/jaz-on/french-typo/blob/main/CHANGELOG.md)
on GitHub.

#### 1.2.1

 * Fixed: Settings page HTML for narrow-space and special-character help — tag names
   in angle brackets are escaped so the form and save button render correctly (browsers
   no longer interpret `script` / `textarea` / etc. as live tags).
 * Changed: Regenerated `languages/french-typo.pot` for those admin strings; dropped
   bundled `fr_FR` PO from the repo (translations on translate.wordpress.org).
 * Documentation: WordPress compatibility note for this release; see GitHub PR [#7](https://github.com/jaz-on/french-typo/pull/7).
 * Compatibility: Tested up to WordPress 7.0

#### 1.2.0

 * Added: Optional French ordinal abbreviations (`1ère`  `1re`, `3ème`  `3e`, `n-
   ième`  `nième`, etc.); see GitHub [issue #3](https://github.com/jaz-on/french-typo/issues/3)(
   idea from [Beryl](https://github.com/beryl-dlg) on [WordPress.org](https://profiles.wordpress.org/beryldlg/)).
   Included in PR [#6](https://github.com/jaz-on/french-typo/pull/6).
 * Added: Plugins admin screen — row meta links for French Typo (GitHub, WordPress.
   org support, Ko-fi, documentation on GitHub, 5-star review).
 * Added: Regenerated `languages/french-typo.pot` and French (`fr_FR`) translations
   for those meta link labels and settings strings.
 * Added: Stack-based raw regions — typography skipped inside `<pre>`, `<code>`,`
   <script>`, `<style>`, and `<textarea>` (nested-safe). Gutenberg Verse stays typographic
   unless `wp-block-code` is on the same `<pre>`.
 * Added: `(tm)` / `(TM)`  ™ with the same special-characters option as `(c)` / `(
   r)`.
 * Added: Documentation — streamlined root `README.md`; `docs/test-post-content.
   md` for manual QA; `docs/configuration.md` (legacy `sanitized` option), `docs/
   faq.md` (where typography runs), `docs/architecture.md` (`textarea` in raw markup);
   admin copy aligned for Posts and pages, RSS/REST toggles, and raw HTML regions.
 * Fixed: No narrow spaces or `(c)` / `(r)` / `(tm)` / `(TM)` replacements inside
   those raw regions (e.g. Elementor SVG `<style>`, code samples).
 * Fixed: Cache key includes typography options to avoid stale output after a settings
   change.
 * Fixed: Options sanitization no longer adds a stray `sanitized` flag or reuses
   a static cache across validate calls.
 * Improved: Settings labels and help text (Posts and pages section, raw markup,
   RSS/REST combined toggles).
 * Credits: Julio Potier (`juliobox`) and Beryl (`beryldlg`, [profile](https://profiles.wordpress.org/beryldlg/))
   added to plugin contributors on WordPress.org; reflected in the Contributors 
   header above.
 * Removed: Obsolete root `TODO.md` (task tracking moved to other locations).
 * Compatibility: Tested up to WordPress 7.0

## ميتا Meta

 *  Version **1.2.1**
 *  Last updated **قبل 3 أسابيع**
 *  Active installations **100+**
 *  WordPress version ** 6.0 أو أعلى **
 *  Tested up to **7.0**
 *  PHP version ** 7.4 أو أعلى **
 *  Languages
 * [English (US)](https://wordpress.org/plugins/french-typo/) و [French (France)](https://fr.wordpress.org/plugins/french-typo/).
 *  [ترجمة إلى لغتك](https://translate.wordpress.org/projects/wp-plugins/french-typo)
 * Tags
 * [français](https://ar.wordpress.org/plugins/tags/francais/)[French](https://ar.wordpress.org/plugins/tags/french/)
   [text-formatting](https://ar.wordpress.org/plugins/tags/text-formatting/)[typography](https://ar.wordpress.org/plugins/tags/typography/)
 *  [عرض متقدم](https://ar.wordpress.org/plugins/french-typo/advanced/)

## التقييم

 5 من 5 نجوم.

 *  [  3 5-star reviews     ](https://wordpress.org/support/plugin/french-typo/reviews/?filter=5)
 *  [  0 4-star reviews     ](https://wordpress.org/support/plugin/french-typo/reviews/?filter=4)
 *  [  0 3-star reviews     ](https://wordpress.org/support/plugin/french-typo/reviews/?filter=3)
 *  [  0 2-star reviews     ](https://wordpress.org/support/plugin/french-typo/reviews/?filter=2)
 *  [  0 1-star reviews     ](https://wordpress.org/support/plugin/french-typo/reviews/?filter=1)

[Your review](https://wordpress.org/support/plugin/french-typo/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/french-typo/reviews/)

## المساهمون

 *   [ Jason Rouet ](https://profiles.wordpress.org/jaz_on/)
 *   [ Jb Audras ](https://profiles.wordpress.org/audrasjb/)
 *   [ Julio Potier ](https://profiles.wordpress.org/juliobox/)
 *   [ Béryl de La Grandière ](https://profiles.wordpress.org/beryldlg/)

## الدعم

لديك شيء لتقوله؟ بحاجة الى مساعدة؟

 [عرض منتدى الدعم](https://wordpress.org/support/plugin/french-typo/)

## تبرع

هل ترغب في تقديم دعم متقدم لهذه الإضافة؟

 [ تبرع لهذه الإضافة ](https://ko-fi.com/jasonrouet)