Title: Permalinks
Author: Andrew Nacin
Published: January 29, 2014
Last modified: March 2, 2021

---

## Permalinks component

#### Subcomponents: 󠀁[Canonical](https://make.wordpress.org/core/components/permalinks/canonical/)󠁿 and 󠀁[Rewrite Rules](https://make.wordpress.org/core/components/permalinks/rewrite-rules/)󠁿.

### Recent posts on the make/coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. blogblog (versus network, site)

 * [WordPress 5.5: Better fine grained control of redirect_guess_404_permalink()](https://make.wordpress.org/core/2020/06/26/wordpress-5-5-better-fine-grained-control-of-redirect_guess_404_permalink/)(
   June 26, 2020)
 * [Trying to decide what to do with comment …](https://make.wordpress.org/core/2008/10/24/trying-to-decide-what-to-do-with-comment/)(
   October 24, 2008)
 * [Permalinks with the structure /index.php …](https://make.wordpress.org/core/2008/07/21/permalinks-with-the-structure-indexphp/)(
   July 21, 2008)
 * [Fixed an ugly bug that broke page links …](https://make.wordpress.org/core/2008/04/16/fixed-an-ugly-bug-that-broke-page-links/)(
   April 16, 2008)

View all posts tagged [permalinks](https://make.wordpress.org/core/tag/permalinks/).

[Create a new ticket](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fcore.trac.wordpress.org%2Fnewticket%3Fcomponent%3DPermalinks)

### 133 open tickets in the Permalinks component

  |  [133 open tickets](https://core.trac.wordpress.org/query?component=Permalinks&status=!closed) |  [defect (bug)](https://core.trac.wordpress.org/query?component=Permalinks&type=defect+%28bug%29&group=milestone&status=!closed) |  [enhancement](https://core.trac.wordpress.org/query?component=Permalinks&type=enhancement&group=milestone&status=!closed) |  [feature request](https://core.trac.wordpress.org/query?component=Permalinks&type=feature+request&group=milestone&status=!closed) |  
  |  [](https://core.trac.wordpress.org/query?component=Permalinks&milestone&group=task+%28blessed%29&status=!closed) |  [26](https://core.trac.wordpress.org/query?component=Permalinks&milestone&type=defect+%28bug%29&status=!closed) |  [5](https://core.trac.wordpress.org/query?component=Permalinks&milestone&type=enhancement&status=!closed) |  [1](https://core.trac.wordpress.org/query?component=Permalinks&milestone&type=feature+request&status=!closed) |  
 |  [Awaiting Review](https://core.trac.wordpress.org/query?component=Permalinks&milestone=Awaiting+Review&group=task+%28blessed%29&status=!closed) |  [56](https://core.trac.wordpress.org/query?component=Permalinks&milestone=Awaiting+Review&type=defect+%28bug%29&status=!closed) |  [13](https://core.trac.wordpress.org/query?component=Permalinks&milestone=Awaiting+Review&type=enhancement&status=!closed) |  [6](https://core.trac.wordpress.org/query?component=Permalinks&milestone=Awaiting+Review&type=feature+request&status=!closed) |  
 |  [Future Release](https://core.trac.wordpress.org/query?component=Permalinks&milestone=Future+Release&group=task+%28blessed%29&status=!closed) |  [15](https://core.trac.wordpress.org/query?component=Permalinks&milestone=Future+Release&type=defect+%28bug%29&status=!closed) |  [9](https://core.trac.wordpress.org/query?component=Permalinks&milestone=Future+Release&type=enhancement&status=!closed) |  [1](https://core.trac.wordpress.org/query?component=Permalinks&milestone=Future+Release&type=feature+request&status=!closed) |  
 |  [7.1](https://core.trac.wordpress.org/query?component=Permalinks&milestone=7.1&group=task+%28blessed%29&status=!closed) |  0 |  [1](https://core.trac.wordpress.org/query?component=Permalinks&milestone=7.1&type=enhancement&status=!closed) |  0 |

**133 open tickets.** Last 7 days: +0 tickets

### 33 tickets that have no replies

[View list on Trac](https://core.trac.wordpress.org/query?component=Permalinks&id=34184%2C34542%2C34822%2C40176%2C42148%2C42702%2C43036%2C43722%2C44759%2C45819%2C46257%2C46266%2C47207%2C49452%2C50002%2C50135%2C50439%2C51953%2C52295%2C53346%2C55066%2C56583%2C58125%2C58764%2C58938%2C59434%2C60143%2C60624%2C60675%2C61261%2C61618%2C62538%2C63953&status=!closed)

 * [#34184](https://core.trac.wordpress.org/ticket/34184)  IIS with Helicon Ape 
   is not detected for suggesting pretty permalinks
 * [#34542](https://core.trac.wordpress.org/ticket/34542)  Permalink settings page
   should offer a filesystem APIAPI An API or Application Programming Interface 
   is a software intermediary that allows programs to interact with each other and
   share data in limited, clearly defined ways. based way to save .htaccess administration
 * [#34822](https://core.trac.wordpress.org/ticket/34822)  Post name permalinks 
   problems
 * [#40176](https://core.trac.wordpress.org/ticket/40176)  FilterFilter Filters 
   are one of the two types of Hooks [https://codex.wordpress.org/Plugin_API/Hooks](https://codex.wordpress.org/Plugin_API/Hooks).
   They provide a way for functions to modify data of other functions. They are 
   the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated
   manner, and should never have side effects such as affecting global variables
   and output. user_trailingslashit called with inconsistent $type_of_string for
   Post-Tags
 * [#42148](https://core.trac.wordpress.org/ticket/42148)  url_to_postid plain permalinks
   for CPTs
 * [#42702](https://core.trac.wordpress.org/ticket/42702)  Most common issue inside
   post edit – "Links Live search".
 * [#43036](https://core.trac.wordpress.org/ticket/43036)  the_posts_pagination()–
   redirect URLURL A specific web address of a website or web page on the Internet,
   such as a website’s URL www.wordpress.org for first page in categoryCategory 
   The 'category' taxonomy lets you group posts / content together that share a 
   common bond. Categories are pre-defined and broad ranging. template
 * [#43722](https://core.trac.wordpress.org/ticket/43722)  On changing of permalinks
   ask a confirm before to save ui
 * [#44759](https://core.trac.wordpress.org/ticket/44759)  Percent-encoded unicode
   characters in CPT rewrite slug prevent finding the CPTs on the front-end
 * [#45819](https://core.trac.wordpress.org/ticket/45819)  when {category|tagtag
   A directory in Subversion. WordPress uses tags to store a single snapshot of 
   a version (3.6, 3.6.1, etc.), the common convention of tags in version control
   systems. (Not to be confused with post tags.)}_base include spaces their rewrite
   rules don't get generated correctly, resulting in 404's
 * [#46257](https://core.trac.wordpress.org/ticket/46257)  Deleting a page can break
   the permalink of other pages if it had media uploaded to it
 * [#46266](https://core.trac.wordpress.org/ticket/46266)  Add auto-draft to list
   of statuses faked in get_sample_permalink() rest-api
 * [#47207](https://core.trac.wordpress.org/ticket/47207)  Specific custom permalink
   404 on archive page
 * [#49452](https://core.trac.wordpress.org/ticket/49452)  Approximately every week
   permalinks are lost for custom post types in multisitemultisite Used to describe
   a WordPress installation with a network of multiple blogs, grouped by sites. 
   This installation type has shared users tables, and creates separate database
   tables for each blog (wp_posts becomes wp_0_posts). See also **network**, **blog**,**
   site** multisite
 * [#50002](https://core.trac.wordpress.org/ticket/50002)  Hack in get_sample_permalink()
   can cause filters like post_link, and pre_post_link to have inaccurate post_status
   in adminadmin (and super admin) administration
 * [#50135](https://core.trac.wordpress.org/ticket/50135)  Proposal: Permalink structure
   tags grouping Mandatory and Available ui administration
 * [#50439](https://core.trac.wordpress.org/ticket/50439)  Post name permalinks 
   htaccess directives do not consider subdirectory installation
 * [#51953](https://core.trac.wordpress.org/ticket/51953)  flush_rewrite_rules works
   not as the same as pressing "save permalinks" in backend (breaks system)
 * [#52295](https://core.trac.wordpress.org/ticket/52295)  The response is not a
   valid JSONJSON JSON, or JavaScript Object Notation, is a minimal, readable format
   for structuring data. It is used primarily to transmit data between a server 
   and web application, as an alternative to XML. response – URL permalink using
   the ? sign
 * [#53346](https://core.trac.wordpress.org/ticket/53346)  get_permalink( $post-
   >ID ) returns plain permalink instead of pretty permalink for CPT registered 
   on subsite multisite
 * [#55066](https://core.trac.wordpress.org/ticket/55066)  Inconsistency in post
   URL when parent and child category assigned to the post and permalink structure
   includes category
 * [#56583](https://core.trac.wordpress.org/ticket/56583)  Permalinks in Multisite
   not working when Main Site is in a subdirectory multisite
 * [#58125](https://core.trac.wordpress.org/ticket/58125)  WordPress post-name permalink
   is not compatible with NginxNGINX NGINX is open source software for web serving,
   reverse proxying, caching, load balancing, media streaming, and more. It started
   out as a web server designed for maximum performance and stability. In addition
   to its HTTP server capabilities, NGINX can also function as a proxy server for
   email (IMAP, POP3, and SMTP) and a reverse proxy and load balancer for HTTP, 
   TCP, and UDP servers. [https://www.nginx.com/](https://www.nginx.com/). server,
   working fine with ApacheApache Apache is the most widely used web server software.
   Developed and maintained by [Apache Software Foundation](https://www.apache.org/).
   Apache is an Open Source software available for free..
 * [#58764](https://core.trac.wordpress.org/ticket/58764)  Incorrect return type
   in `WP_Rewrite::using_index_permalinks()`.
 * [#58938](https://core.trac.wordpress.org/ticket/58938)  Custom permalink indexing
   issue
 * [#59434](https://core.trac.wordpress.org/ticket/59434)  Changing permalink structure
   results in failure to save draft posts
 * [#60143](https://core.trac.wordpress.org/ticket/60143)  Running behind HAProxy
   with fcgi makes WordPress think URL rewriting is unavailable
 * [#60624](https://core.trac.wordpress.org/ticket/60624)  Permalinks corrupted 
   administration
 * [#60675](https://core.trac.wordpress.org/ticket/60675)  Add hook for wp_check_for_changed_slugs()
 * [#61261](https://core.trac.wordpress.org/ticket/61261)  If redirect_guess_404_permalink
   returns a LIKE condition result, the redirect should have 302 code
 * [#61618](https://core.trac.wordpress.org/ticket/61618)  changing permalink structure
 * [#62538](https://core.trac.wordpress.org/ticket/62538)  WordPress does not detect
   Openbsd httpd for URL rewrites
 * [#63953](https://core.trac.wordpress.org/ticket/63953)  Improving the Permalink
   Structure for `?attachment_id=123`

### 1 ticketticket Created for both bug reports and feature development on the bug tracker. slated for 7.1

[View list in Trac](https://core.trac.wordpress.org/query?component=Permalinks&milestone=7.1&status=!closed)

 * [#64250](https://core.trac.wordpress.org/ticket/64250)  Refactor redirect_guess_404_permalink
   to use WP_Query instead of raw SQL performance

### 133 open tickets

**Open enhancements: 28** [View list on Trac](https://core.trac.wordpress.org/query?component=Permalinks&type=enhancement&status=!closed)
**
Open tasks: 0** [View list on Trac](https://core.trac.wordpress.org/query?component=Permalinks&type=task+%28blessed%29&status=!closed)**
Open feature requests: 8** [View list on Trac](https://core.trac.wordpress.org/query?component=Permalinks&type=feature+request&status=!closed)**
Open defects: 97** [View list on Trac](https://core.trac.wordpress.org/query?component=Permalinks&type=defect+%28bug%29&status=!closed)

### Help maintain this component

Component maintainers:

 *  Sergey Biryukov
 *  M Asif Rahman

Many contributors help maintain one or more components. These maintainers are vital
to keeping WordPress development running as smoothly as possible. They triagetriage
The act of evaluating and sorting bug reports, in order to decide priority, severity,
and other factors. new tickets, look after existing ones, spearhead or mentor tasks,
pitch new ideas, curate roadmaps, and provide feedback to other contributors. Longtime
maintainers with a deep understanding of particular areas of Core are always seeking
to mentor others to impart their knowledge.

**Want to help? Start following this component!** [Adjust your notifications here](https://make.wordpress.org/core/notifications/?output_format=md).
Feel free to dig into any ticket.

Contributors following this component:

 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 
 * 

 * [Login to Reply](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fmake.wordpress.org%2Fcore%2Fcomponents%2Fpermalinks%2F%23respond&locale=en_US)