Smart RTL Post
Apply RTL styling to selected posts, pages, and custom post types with Gutenberg support.
Use with caution
Smart RTL Post works, but test it on a staging site before relying on it in 2026. It runs on 50+ sites, is rated 5/5 and was last updated 6 months ago, and scores 60/100 on our health check.
- Small user base (50+ active installs)
- Very few reviews so far
How does it stack up?
Side-by-side on installs, updates, ratings & supportDaily downloads
Download spikes usually follow a new release — each site that auto-updates counts as a download.
Rankings
Where Smart RTL Post stands todayWordPress.org search rankings
Live position in the plugin search, top 100| Keyword | Position |
|---|---|
| arabic | #82 |
| Pashto | #3 |
| right-to-left | #16 |
| rtl | #5 |
| Urdu | #16 |
Version adoption
Share of active sites per release.
Rating breakdown
★★★★★★★★★★ 5 from 2 reviews
About Smart RTL Post
From the official readme · v1.5.1Description
Smart RTL Post allows you to easily apply RTL styling to selected posts, pages, and custom post types.
Features
- Enable RTL per post
- Gutenberg editor support
- Custom post types support
- Lightweight plugin
- Clean uninstall
- No performance impact
-
Custom fonts support
-
Works on Posts and Pages (and any post type via filter hook)
- Native Block Editor (Gutenberg) sidebar panel — no Classic Editor required
- Settings page to choose default direction, font, font size, and line height
- Shortcode
[rtl]your text[/rtl]for inline RTL content inside any post - Google Fonts support: Noto Nastaliq Urdu, Scheherazade New, Amiri, Lateef
- CSS only loaded when actually needed (performance friendly)
- RTL styles scoped to content area only — navigation and header stay unaffected
- Developer-friendly:
smart_rtl_supported_post_typesfilter to add custom post types - Clean uninstall — removes all options and post meta when deleted
Shortcode Usage
Use inside any post or page:
[rtl]Your text here[/rtl]
Add Custom Post Type Support
Add this to your theme’s functions.php:
add_filter( 'smart_rtl_supported_post_types', function( $types ) {
$types[] = 'product';
return $types;
} );
`
License
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 or later.
For more details, visit: https://www.gnu.org/licenses/gpl-2.0.html
Installation
- Upload the
smart-rtl-postfolder to/wp-content/plugins/ - Activate the plugin from the Plugins page in WordPress
- Go to Settings > Smart RTL Post to configure defaults
- Edit any post or page and select the direction from the sidebar
Frequently asked questions
Does this work with the Block Editor (Gutenberg)?
Yes. A native sidebar panel appears in the Document Settings for both Classic Editor and Block Editor.
Can I use it on WooCommerce product pages?
Not by default, but you can easily add any custom post type using the smart_rtl_supported_post_types filter (see Description).
Will this slow down my site?
No. The CSS file is only loaded on pages where RTL direction is actually enabled.
Which fonts are available?
Noto Nastaliq Urdu, Scheherazade New, Amiri, Lateef, and a System Serif (no Google Fonts) option.
Does changing direction break my site navigation?
No. Since v1.3.0 the RTL direction is scoped to post content areas only. Your header, navigation menus, and footer are not affected.
What happens when I delete the plugin?
All options and post meta are automatically removed from the database.
Changelog
1.5.1
- Fixed: CSS inline values (font_size, line_height) explicitly re-sanitized before injection — absint() and range clamp added
- Fixed: WordPress.org submission zip now uses correct folder name ‘smart-rtl-post’ (no version suffix)
- Confirmed: WP_UNINSTALL_PLUGIN check present in uninstall.php
- Confirmed: Plugin slug, Text Domain, and load_plugin_textdomain are all ‘smart-rtl-post’ — consistent
- Confirmed: No raw variable outputs — all echo uses esc_html/esc_attr/esc_url/wp_kses_post
1.5.0
- Added: register_activation_hook — sets default options on clean install using add_option() with autoload=no
- Added: autoload=false on all register_setting() calls (WP 6.0+) — prevents options loading on every page, improves performance
- Added: readme.txt tags now include ‘direction’ and ‘gutenberg’ for better WordPress.org search visibility
- Confirmed: WP_UNINSTALL_PLUGIN security check already present in uninstall.php
- Confirmed: CSS loads conditionally — only on RTL posts or when [rtl] shortcode detected
1.4.2
- Fixed: transition_post_status condition tightened — now only fires when status changes exactly TO publish FROM non-publish (avoids publish→draft, publish→trash edge cases)
- Fixed: Multisite uninstall now uses batch processing (100 sites per loop) — prevents server hang on large networks
- Fixed: Added wp-block-code to CSS RTL selectors
- Fixed: Version bumped in rtl-style.css, block-editor.js, and SMART_RTL_VERSION constant — all in sync
- Fixed: .pot file updated to version 1.4.2; all 20 strings verified with correct text-domain
- Fixed: readme.txt Stable tag matches plugin Version header — WordPress.org consistency
1.4.1
- Fixed: Version comments in rtl-style.css and block-editor.js updated to 1.4.1
- Fixed: wp_insert_post replaced with transition_post_status hook — default direction now only saves on actual publish/schedule, not on every draft save
- Fixed: Multisite support added to uninstall.php — all sub-sites cleaned up on network delete
- Fixed: Added missing Gutenberg block selectors: wp-block-table, wp-block-group, wp-block-columns, wp-block-column, wp-block-cover, wp-block-media-text
- Added: languages/smart-rtl-post.pot translation template file for Urdu/Pashto/Arabic translators
1.4.0
- Fixed: Default direction now saved to database on first publish (was only shown in UI before)
- Fixed: Gutenberg detection now uses reliable use_block_editor_for_post_type() instead of get_current_screen()
- Fixed: line-height setting was registered but never actually applied — now works correctly
- Fixed: Shortcode CSS now loads even in LTR posts (has_shortcode() detection added)
- Fixed: Google Fonts now properly enqueued via wp_enqueue_style (font was named but never loaded)
- Fixed: Shortcode [rtl] inline styles replaced with CSS class for better SEO and performance
- Fixed: .smart-rtl-inline now inherits font-family, font-size, line-height from settings
1.3.1
- Improved
get_current_screen()safety check to prevent rare admin errors - Improved
auth_callbackto use post-specificedit_postcapability (WordPress review standard) - Added
wp_style_is()check beforewp_add_inline_style()for safer CSS injection - Added explicit
load_plugin_textdomain()for non-WordPress.org distributions - Added Settings link in Plugins list page for easier access
For developers
Is this your plugin? Show off the numbers.
Add a live badge to your site, docs or GitHub README. It updates on its own — no account needed.
Best Smart RTL Post alternatives
All arabic plugins →FAQ
Smart RTL Post: quick answers
Straight answers, pulled from live WordPress.org data.
Live data from WordPress.org · checked Oct 2, 2026
Is Smart RTL Post free?
Yes. Smart RTL Post is free to download and use from the official WordPress.org plugin directory.
Is Smart RTL Post safe to use in 2026?
Smart RTL Post works, but test it on a staging site before relying on it in 2026. It runs on 50+ sites, is rated 5/5 and was last updated 6 months ago, and scores 60/100 on our health check.
How many websites use Smart RTL Post?
Smart RTL Post is active on 50+ WordPress websites and has been downloaded 1,128 times since it launched in July 2025. It was downloaded 101 times in the last 30 days.
Does Smart RTL Post work with WordPress 7.1?
Smart RTL Post is officially tested up to WordPress 7.0.6, while the latest release is 7.1.2. It may still work, but try it on a staging site first.
What PHP version does Smart RTL Post need?
Smart RTL Post requires PHP 7.4 or higher. Most hosts run PHP 8.x today, so it works on any modern WordPress hosting.
When was Smart RTL Post last updated?
The latest version, 1.5.1, was released on April 9, 2026 (6 months ago).
Who makes Smart RTL Post?
Smart RTL Post is developed and maintained by Luqman Safay.
What are the best alternatives to Smart RTL Post?
The most popular alternatives to Smart RTL Post are LTR RTL Admin content (4K+ installs), Khattat – Arabic Fonts (500+ installs) and RTL Support for Oxygen Buil… (100+ installs).
Powered by PageForge
Want thousands of pages that rank like these? Build them in an afternoon.
This directory runs on the same engine as PageForge. Turn any spreadsheet, CSV or API into thousands of fast, SEO-ready WordPress pages — with schema, internal links and AI-written copy baked in.
- CSV, Google Sheets & API data sources
- AI content, schema & internal links per page
- Works with Elementor, Gutenberg, Yoast & Rank Math
- Free on WordPress.org — no credit card