Title: French Typo
Author: Jason Rouet
Published: <strong>19 November 2025</strong>
Last modified: 22 September 2026

---

Search plugins

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

# French Typo

 De [Jason Rouet](https://profiles.wordpress.org/jaz_on/)

[Download](https://downloads.wordpress.org/plugin/french-typo.1.2.4.zip)

 * [Details](https://lij.wordpress.org/plugins/french-typo/#description)
 * [Reviews](https://lij.wordpress.org/plugins/french-typo/#reviews)
 *  [Installation](https://lij.wordpress.org/plugins/french-typo/#installation)
 * [Development](https://lij.wordpress.org/plugins/french-typo/#developers)

 [Supòrto](https://wordpress.org/support/plugin/french-typo/)

## Description

French Typo applies French typography rules to your content **as it is displayed**.
Your text stays exactly as you wrote it in the editor — only the rendered output
is enriched.

**What it does:**

 * Adds non-breaking spaces before `: ; ! ? %` and around `« »`
 * Replaces `(c)` with `©`, `(r)` with `®`, `(tm)` / `(TM)` with `™`
 * Optionally normalizes French ordinals: `1ère`  `1re`, `3ème`  `3e`, `n-ième`  `
   nième`
 * Works across posts, pages, widgets, menus, comments, RSS, REST, ACF / Meta Box
   fields, and SEO output (Yoast, Rank Math, SEOPress)
 * On multilingual sites, can apply rules to French content only (Polylang and WPML
   auto-detected)

**What it does not do:**

 * Touch your raw HTML, code blocks, scripts, styles, or `<textarea>` content
 * Modify what’s stored in the database

#### Settings highlights

 * Regular (`&nbsp;`) or thin (`&#8239;`) non-breaking spaces
 * Enable / disable each content area (title, content, excerpt, widgets, RSS, REST,
   etc.)
 * Language restriction: off (default), auto French, or pick specific locales

### Author & Credits

**Jason Rouet**
 * Website: [jasonrouet.com](https://jasonrouet.com) * Email: [bonjour@jasonrouet.com](https://lij.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 [Buy Me a Coffee](https://buymeacoffee.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/).

## Screenshots

[⌊Plugin settings page⌉⌊Plugin settings page⌉[

Plugin settings page

## Installation

 1. Install through the WordPress plugins screen, or upload to `/wp-content/plugins/
    french-typo`.
 2. Activate the plugin.
 3. Configure in **Settings > French Typo**.

## FAQ-e

### Does this plugin modify my content?

No. The text saved in the database is never altered. French Typo intercepts the 
output just before display and adds the typography rules there. Deactivate the plugin
and your content comes back unchanged.

### Regular or thin non-breaking spaces?

Regular (`&nbsp;`) is universally supported. Thin (`&#8239;`) is typographically
purer for `: ;` but may render too narrow or as a missing glyph on older fonts and
browsers.

### Can I limit rules to French content only?

Yes. In **Settings > French Typo > Language restriction**, choose **Auto** to apply
only to `fr_*` locales, or **Custom** to pick specific locales. Polylang and WPML
are detected per post; otherwise the site locale is used.

### Will it run inside code blocks, scripts, or “?

No. Typography is skipped inside `<script>`, `<style>`, `<pre>`, `<code>` (nested),`
<textarea>`, and embedded CSS (e.g. inline SVG). Gutenberg’s Verse block stays typographic
unless it is also a Code block.

### Does it change English ordinals (`1st`, `2nd`) or non-standard forms like `1ème`?

No. Only the French forms listed in the description are converted.

### My theme or editor already inserts non-breaking spaces. Will French Typo duplicate them?

No (since 1.2.2). All non-breaking space variants — `&nbsp;`, `&#160;`, `&#xA0;`,`&#
8239;`, `&#x202F;`, and literal U+00A0 / U+202F — are detected and collapsed to 
a single canonical entity.

## Reviews

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

### 󠀁[Ne fonctionne pas](https://wordpress.org/support/topic/ne-fonctionne-pas-50/)󠁿

 [carosch](https://profiles.wordpress.org/carosch/) 14 July 2026 1 reply

Bonjour, Je viens de tester le plugin, il fait disparaitre les couleurs et images
de fond. désinstallé immédiatement.

![](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 March 2026 1 reply

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 March 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 November 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.

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

## Contributors & Developers

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

Contributors

 *   [ 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” has been translated into 1 locale. Thank you to [the translators](https://translate.wordpress.org/projects/wp-plugins/french-typo/contributors)
for their contributions.

[Translate “French Typo” into your language.](https://translate.wordpress.org/projects/wp-plugins/french-typo)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/french-typo/), check
out the [SVN repository](https://plugins.svn.wordpress.org/french-typo/), or subscribe
to the [development log](https://plugins.trac.wordpress.org/log/french-typo/) by
[RSS](https://plugins.trac.wordpress.org/log/french-typo/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

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

#### 1.2.4

 * Fixed: Settings page — the “Ordinal abbreviations” option is visible and can 
   be toggled again.
 * Fixed: Settings page — clearer labels for the “Language restriction” fields.
 * Fixed: Shortcode attributes (e.g. `[gallery caption="Merci !"]`) are no longer
   altered by typography rules before the shortcode runs.

#### 1.2.3

 * Fixed: HTML entities in plain-text titles (e.g. `Foo &#038; Bar`) had a narrow
   no-break space inserted before their trailing `;`, which downstream `esc_html()`
   then re-encoded into visible `&#038;#038 ;` (e.g. in Yoast breadcrumbs). Entity
   protection now runs on any text containing `&`, not only on text containing tags.(
   [#10](https://github.com/jaz-on/french-typo/issues/10))

## Mêta

 *  Version **1.2.4**
 *  Last updated **2 weeks ago**
 *  Active installations **100+**
 *  WordPress version ** 6.0 or higher **
 *  Tested up to **7.1.3**
 *  PHP version ** 7.4 or higher **
 *  Languages
 * [English (US)](https://wordpress.org/plugins/french-typo/) e [French (France)](https://fr.wordpress.org/plugins/french-typo/).
 *  [Translate into your language](https://translate.wordpress.org/projects/wp-plugins/french-typo)
 * Tags
 * [français](https://lij.wordpress.org/plugins/tags/francais/)[French](https://lij.wordpress.org/plugins/tags/french/)
   [text-formatting](https://lij.wordpress.org/plugins/tags/text-formatting/)[typography](https://lij.wordpress.org/plugins/tags/typography/)
 *  [Advanced View](https://lij.wordpress.org/plugins/french-typo/advanced/)

## Ratings

 4 out of 5 stars.

 *  [  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)
 *  [  1 1-star review     ](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/)

## Contributors

 *   [ 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/)

## Supòrto

Issues resolved in last two months:

     1 out of 2

 [View support forum](https://wordpress.org/support/plugin/french-typo/)

## Donate

Would you like to support the advancement of this plugin?

 [ Donate to this plugin ](https://buymeacoffee.com/jasonrouet)