Title: Custom Permalinks
Author: Sami Ahmed Siddiqui
Published: <strong>1 نوفمبر، 2008</strong>
Last modified: 8 أكتوبر، 2025

---

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

![](https://ps.w.org/custom-permalinks/assets/banner-772x250-rtl.png?rev=1796224)

![](https://ps.w.org/custom-permalinks/assets/icon.svg?rev=1785367)

# Custom Permalinks

 بواسطة [Sami Ahmed Siddiqui](https://profiles.wordpress.org/sasiddiqui/)

[تنزيل](https://downloads.wordpress.org/plugin/custom-permalinks.3.1.2.zip)

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

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

## الوصف

You want to take control of your WordPress site’s URLs? The **Custom Permalinks**
plugin gives you the power to set unique, custom URLs for any post, page, tag, or
category. This means you can design your site’s structure exactly how you envision
it, rather than being limited by WordPress’s default settings. When you set a custom
permalink, the original post URL will be automatically redirected to your new, customized
URL.

### Key Features

 * **Individual Permalink Control**: Assign unique URLs to any post, page, tag, 
   or category.
 * **Site Structure Control**: Gain ultimate control over how your site’s URLs are
   organized.
 * **Post Type Permalink Structures (v3.0.0+)**: Define custom permalink structures
   for each public Post Type using predefined tags, automatically generating URLs
   upon content creation. You can still manually edit any permalink. If left empty,
   default settings will apply.

### Getting Started: Plugin Settings

You can configure Custom Permalinks by navigating to **Settings > Custom Permalinks**
in your WordPress Dashboard.

### Available Tags for Permalink Structures

When setting up your custom permalink structures, you can use a variety of tags 
that will dynamically populate the URL. Here’s a breakdown of what’s available:

 * **%year%**: The year of the post in four digits, eg: 2025
 * **%monthnum%**: Month the post was published, in two digits, eg: 01
 * **%day%**: Day the post was published in two digits, eg: 02
 * **%hour%**: Hour of the day, the post was published, eg: 15
 * **%minute%**: Minute of the hour, the post was published, eg: 43
 * **%second%**: Second of the minute, the post was published, eg: 33
 * **%post_id%**: The unique ID of the post, eg: 123
 * **%category%**: A clean version of the category name (its slug). Nested sub-categories
   will appear as nested directories in the URL..
 * **%author%**: A sanitized version of the post author’s name.
 * **%postname%**: A clean version of the post or page title (its slug). For example,“
   This Is A Great Post!” becomes `this-is-a-great-post` in the URL.
 * **%parent_postname%**: Similar to `%postname%`, but uses the immediate parent
   page’s slug if a parent is selected.
 * **%parents_postnames%**: Similar to `%postname%`, but includes all parent page
   slugs if parents are selected.
 * **%title%**: The title of the post, converted to a slug. For example, “This Is
   A Great Post!” becomes `this-is-a-great-post`. Unlike `%postname%` which is set
   once, `%title%` automatically updates in the permalink if the post title changes(
   unless the post is published or the permalink is manually edited).
 * **%ctax_TAXONOMY_NAME%**: A clean version of a custom taxonomy’s name. Replace`
   TAXONOMY_NAME` with the actual taxonomy name. You can also provide a default 
   slug for when no category/taxonomy is selected by using `??` (e.g., `%ctax_type??
   sales%` will use “sales” as a default).
 * **%ctax_parent_TAXONOMY_NAME%**: Similar to `%ctax_TAXONOMY_NAME%`, but includes
   the immediate parent category/tag slug in the URL if a parent is selected.
 * **%ctax_parents_TAXONOMY_NAME%**: Similar to `%ctax_TAXONOMY_NAME%`, but includes
   all parent category/tag slugs in the URL if parents are selected.
 * **%custom_permalinks_TAG_NAME%**: Developers have the flexibility to define their
   own custom tags(replace `_TAG_NAME` with your desired name). To ensure these 
   tags resolve to the correct permalinks, simply apply the `custom_permalinks_post_permalink_tag`
   filter.

**Important Note:** For new posts, Custom Permalinks will keep updating the permalink
while the post is in draft mode, assuming a structure is defined in the plugin settings.
Once the post is published or its permalink is manually updated, the plugin will
stop automatic updates for that specific post.

### Custom Permalinks: Fine-Tuning with Filters

Custom Permalinks offers a range of **filters** that empower developers to precisely
control its behavior. You can explore all available filters, complete with example
code snippets, in our [GitHub repository](https://github.com/samiahmedsiddiqui/custom-permalinks).

**For Assistance:**

 * **Premium Users:** If you need assistance implementing these filters, please 
   don’t hesitate to reach out to us via our [Premium contact support](https://www.custompermalinks.com/contact-us/).
 * **Other Users:** You can also directly reach out to the plugin author via [LinkedIn](https://www.linkedin.com/in/sami-ahmed-siddiqui/).

### Need Help or Found a Bug?

 * **Support:** For one-on-one email support, consider purchasing [Custom Permalinks Premium](https://www.custompermalinks.com/#pricing-section).
   While some basic support may be provided on the WordPress.org forums, email support
   is prioritized for premium users.
 * **Bug Reports:** If you encounter a bug, please report it on [GitHub](https://github.com/samiahmedsiddiqui/custom-permalinks).
   Make sure to provide complete information to reproduce the issue. GitHub is for
   bug reports, not general support questions.

If you experience any site-breaking issues after upgrading, please report them on
the [WordPress Forum](https://wordpress.org/support/plugin/custom-permalinks/) or
[GitHub](https://github.com/samiahmedsiddiqui/custom-permalinks) with detailed information.
You can always revert to an older version by downloading it from [https://wordpress.org/plugins/custom-permalinks/advanced/](https://wordpress.org/plugins/custom-permalinks/advanced/).

## التنصيب

You have two ways to install Custom Permalinks:

#### From within WordPress

 1. Go to **Plugins > Add New** in your WordPress dashboard.
 2. Search for “Custom Permalinks”.
 3. Click “Install Now” and then “Activate” the plugin from your Plugins page.

#### Manually via FTP

 1. Download the `custom-permalinks` folder.
 2. Upload the `custom-permalinks` folder to your `/wp-content/plugins/` directory.
 3. Activate Custom Permalinks through the “Plugins” menu in your WordPress dashboard.

## المراجعات

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

### 󠀁[Changed the slug but the page turned unavailable](https://wordpress.org/support/topic/changed-the-slug-but-the-page-turned-unavailable/)󠁿

 [dondonkiii](https://profiles.wordpress.org/dondonkiii/) 23 أغسطس، 2025

Did not work… I dont think this is a functional plugin. it has 4 stars in total 
with lots of 1 stars i guess it is what it is. I deleted the plugin and it is fine
now.

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

### 󠀁[caused Posts/Pages to redirect to other posts/pages.](https://wordpress.org/support/topic/caused-posts-pages-to-redirect-to-other-posts-pages/)󠁿

 [saad7777](https://profiles.wordpress.org/saad7777/) 23 سبتمبر، 2024

blog post are redirecting to some other post. i dunno why. but deactivating this
plugin resolved the issue. So the issue must be in the plugin. is there anything
i can do in this situation?

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

### 󠀁[Excellent plugin](https://wordpress.org/support/topic/excellent-plugin-9031/)󠁿

 [nimonogi](https://profiles.wordpress.org/nimonogi/) 21 فبراير، 2024

Excellent plugin. I would really like to see categories included as well.

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

### 󠀁[Plugin can’t be removed](https://wordpress.org/support/topic/plugin-cant-be-removed/)󠁿

 [ddayoverlordwebmaster](https://profiles.wordpress.org/ddayoverlordwebmaster/) 
10 ديسمبر، 2023

Once you have installed this plugin, there is no turning back. These redirections
are causing SEO issues and Google won’t index my website because of them. I faced
multiple URL crashes when I desactivated the plugin.

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

### 󠀁[It caused redirect issues](https://wordpress.org/support/topic/it-caused-redirect-issues/)󠁿

 [alexnenov](https://profiles.wordpress.org/alexnenov/) 6 ديسمبر، 2023

It caused redirect issues and Google stopped indexing many important pages of our
site.

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

### 󠀁[Thank you very much](https://wordpress.org/support/topic/thank-you-very-much-129/)󠁿

 [john0zhuang](https://profiles.wordpress.org/john0zhuang/) 4 يوليو، 2023

Thank you very much, this plugin solves a lot of problems

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

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

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

المساهمون

 *   [ Sami Ahmed Siddiqui ](https://profiles.wordpress.org/sasiddiqui/)

لقد تم ترجمة ”Custom Permalinks“ إلى 18 لغة. شكراً إلى جميع [المُترجمين](https://translate.wordpress.org/projects/wp-plugins/custom-permalinks/contributors)
لمُساهماتهم.

[ترجمة ”Custom Permalinks“ إلى لغتك.](https://translate.wordpress.org/projects/wp-plugins/custom-permalinks)

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

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

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

#### 3.1.2 – Sep 24, 2025

 * Bug:
    - [Prevent adding slash if `home_url()` contains one](https://github.com/samiahmedsiddiqui/custom-permalinks/pull/136)

#### 3.1.1 – Sep 19, 2025

 * Bugs:
    - [PHP 8.x Warnings Admin](https://wordpress.org/support/topic/php-8-x-warnings-admin/)
    - [Polylang Redirect Issue](https://wordpress.org/support/topic/polylang-redirect-issue-2/)
    - [Lost password link conflict](https://wordpress.org/support/topic/lost-password-link-conflict/)
    - [Custom Permalinks is conflicting with Gravity View plugin](https://wordpress.org/support/topic/custom-permalinks-is-conflicting-with-gravity-view-plugin/)

#### 3.1.0 – Aug 01, 2025

**Permalink Generation:**

 * Resolved an issue where the `custom_permalinks_generate_post_permalink` function
   was creating duplicate permalinks with appended numbers when triggered programmatically.
   This ensures a unique, clean URL every time.
 * Updated the `sanitize_text_field` function to prevent the truncation of permalink
   tags, such as `%category%` and `%day%`, guaranteeing your custom permalink structure
   remains intact.

**Performance:**

 * The `save_post` hook will now only run on public post types. This change prevents
   unnecessary processing on post types like “Menus”, which can significantly improve
   performance on sites with complex configurations.

**Maintenance:**

 * Improved internationalization (I18N) support.
 * Fixed a bug where the cache group was not properly clearing when using the flush
   button.

**Language:**

 * Updated the plugin with the latest language packs.

#### 3.0.1 – Jul 22, 2025

Fix PHP warning on `url_to_postid()` filter.

#### 3.0.0 – Jul 22, 2025

This release of Custom Permalinks brings significant enhancements to post type permalink
management, introduces new customization options, and refines the overall user and
developer experience.

**Added**

 * **Post Type Permalink Structures:** Introduced robust functionality to define
   custom permalink structures for each public Post Type directly within the plugin
   settings. This allows for automatic URL generation based on predefined tags upon
   content creation, offering greater flexibility while still allowing manual edits.
 * **New Available Permalink Tags:** Expanded the list of dynamic tags that can 
   be used in permalink structures, including:
    - `%parent_postname%`: For immediate parent page slugs.
    - `%parents_postnames%`: For all parent page slugs.
    - `%title%`: A dynamic slug that updates with post title changes (until published
      or manually edited).
    - `%ctax_parent_TAXONOMY_NAME%`: For immediate parent custom taxonomy slugs.
    - `%ctax_parents_TAXONOMY_NAME%`: For all parent custom taxonomy slugs.
    - `%custom_permalinks_TAG_NAME%`: Allows developers to define and resolve their
      own custom tags.
 * **WP All Import Compatibility:** Added support to generate/update permalinks 
   when importing posts using the WP All Import plugin.
 * **New Filter Examples:** Included clear code examples for `custom_permalinks_post_permalink_tag`
   to set custom values from ACF fields, and for programmatically generating permalinks
   for single posts and entire post types.

**Improved**

 * **Post Caching:** Enhanced post caching mechanisms and optimized cache deletion
   upon updates for better performance.
 * **Permalink Retrieval:** Improved logic to allow fetching posts against customized
   permalinks.
 * **Filter Documentation:** Refined existing filter descriptions and improved code
   formatting for clarity.
 * **Plugin Purpose Clarity:** Updated documentation to explicitly state that original
   post URLs will automatically redirect to the customized URLs, ensuring seamless
   transitions.

#### Earlier versions

 * For the changelog of earlier versions, please refer to the separate changelog.
   txt file.

## ميتا Meta

 *  Version **3.1.2**
 *  Last updated **قبل 6 أشهر**
 *  Active installations **100٬000+**
 *  WordPress version ** 2.6 أو أعلى **
 *  Tested up to **6.8.5**
 *  PHP version ** 7.0 أو أعلى **
 *  Languages
 * [Chinese (Taiwan)](https://tw.wordpress.org/plugins/custom-permalinks/)، [Dutch](https://nl.wordpress.org/plugins/custom-permalinks/)،
   [Dutch (Belgium)](https://nl-be.wordpress.org/plugins/custom-permalinks/)، [English (Australia)](https://en-au.wordpress.org/plugins/custom-permalinks/)،
   [English (Canada)](https://en-ca.wordpress.org/plugins/custom-permalinks/)، [English (New Zealand)](https://en-nz.wordpress.org/plugins/custom-permalinks/)،
   [English (UK)](https://en-gb.wordpress.org/plugins/custom-permalinks/)، [English (US)](https://wordpress.org/plugins/custom-permalinks/)،
   [Galician](https://gl.wordpress.org/plugins/custom-permalinks/)، [Japanese](https://ja.wordpress.org/plugins/custom-permalinks/)،
   [Persian](https://fa.wordpress.org/plugins/custom-permalinks/)، [Russian](https://ru.wordpress.org/plugins/custom-permalinks/)،
   [Spanish (Chile)](https://cl.wordpress.org/plugins/custom-permalinks/)، [Spanish (Colombia)](https://es-co.wordpress.org/plugins/custom-permalinks/)،
   [Spanish (Ecuador)](https://es-ec.wordpress.org/plugins/custom-permalinks/)، 
   [Spanish (Spain)](https://es.wordpress.org/plugins/custom-permalinks/)، [Spanish (Venezuela)](https://ve.wordpress.org/plugins/custom-permalinks/)،
   [Ukrainian](https://uk.wordpress.org/plugins/custom-permalinks/)، و [Urdu](https://ur.wordpress.org/plugins/custom-permalinks/).
 *  [ترجمة إلى لغتك](https://translate.wordpress.org/projects/wp-plugins/custom-permalinks)
 * Tags
 * [address](https://ar.wordpress.org/plugins/tags/address/)[link](https://ar.wordpress.org/plugins/tags/link/)
   [permalink](https://ar.wordpress.org/plugins/tags/permalink/)[redirect](https://ar.wordpress.org/plugins/tags/redirect/)
   [url](https://ar.wordpress.org/plugins/tags/url/)
 *  [عرض متقدم](https://ar.wordpress.org/plugins/custom-permalinks/advanced/)

## التقييم

 4.1 من 5 نجوم.

 *  [  80 5-star reviews     ](https://wordpress.org/support/plugin/custom-permalinks/reviews/?filter=5)
 *  [  10 4-star reviews     ](https://wordpress.org/support/plugin/custom-permalinks/reviews/?filter=4)
 *  [  3 3-star reviews     ](https://wordpress.org/support/plugin/custom-permalinks/reviews/?filter=3)
 *  [  2 2-star reviews     ](https://wordpress.org/support/plugin/custom-permalinks/reviews/?filter=2)
 *  [  21 1-star reviews     ](https://wordpress.org/support/plugin/custom-permalinks/reviews/?filter=1)

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

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

## المساهمون

 *   [ Sami Ahmed Siddiqui ](https://profiles.wordpress.org/sasiddiqui/)

## الدعم

مشكلات تمّ حلها في آخر شهرين:

     0 من 1

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