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. Automatic Redirects: Old URLs keep working — visitors and search engines are redirected to the new custom permalink automatically. Getting Started: Plugin Settings You can configure Custom Permalinks by navigating to Settings > Custom Permalinks in your WordPress Dashboard. To set a permalink for an individual post, page, category, or tag, edit that item and look for the Custom Permalink field near the top (or in the sidebar) of the editor screen — enter the URL path you want and save. 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_TAXONOMY_NAME_name%: The custom taxonomy term’s name (instead of its slug). Replace TAXONOMY_NAME with the actual taxonomy name. Supports a default value using ?? when no term is selected (e.g., %ctax_type_name??Sales%). %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_parent_TAXONOMY_NAME_name%: Similar to %ctax_TAXONOMY_NAME_name%, but includes the immediate parent term’s name 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. %ctax_parents_TAXONOMY_NAME_name%: Similar to %ctax_TAXONOMY_NAME_name%, but includes all parent term names 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. 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. Other Users: You can also directly reach out to the plugin author via LinkedIn. Need Help or Found a Bug? Support: For one-on-one email support, consider purchasing Custom Permalinks Premium. 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. 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 or GitHub with detailed information. You can always revert to an older version by downloading it from https://wordpress.org/plugins/custom-permalinks/advanced/.
Top keywords
- name28×3.09%
- post25×2.76%
- custom18×1.99%
- taxonomy17×1.88%
- permalink15×1.66%
- taxonomy name14×1.55%
- ctax12×1.32%
- parent12×1.32%
- permalinks10×1.10%
- custom permalinks9×0.99%
- category8×0.88%
- selected8×0.88%
UK Address Postcode Validation
This extension provides realtime address autocompletion lookup on your address forms, including billing and shipping. Ideal Postcodes address tools validates and accelerates customer entered address information to reduce cart abandonment and ensure correct delivery address capture. Ideal Postcodes provides address autocomplete for your WooCommerce address forms. We specialize in the UK addressing data, drawing the most up-to-date & accurate UK dataset from Royal Mail on a daily basis. We have over 1,000 clients that use our address validation tools to speed up checkout, increase deliverability, and ensure data quality. This extension adds address validation including realtime address autocompletion on your address forms. Our tools appear on your checkout and user account pages (for billing and shipping addresses). Our address validation tools speed up the checkout process and ensure that correct addresses are collected, thereby reducing cart abandonment and ensuring deliverability. This extension is free to download and install. However, our address validation services requires a paid account at ideal-postcodes.co.uk. Looking for Gravity Forms Address Validation? See our guide Looking for Contact Form 7 Address Validation? See our guide Contact us if you get stuck. Drop by our chat page for immediate assistance or send us a message on one of our support channels. Benefits Speed up the Checkout Process. Reduce the time it takes to accurately insert an address on your checkout Increase Deliverability. Reduce failed deliveries by making address entry easier and less error prone Ensure Data Quality. Access the most up-to-date and accurate address dataset in the UK with Royal Mail’s PAF® dataset Features Address autocompletion on checkout shipping and billing pages Address autocompletion on accounts pages Post towns now capitalised by default (instead of all caps) Checks if key is usable before enabling autocomplete Optionally populate organisation name from selected address Optionally populate county information [3.10.2](https://github.com/ideal-postcodes/woocommerce/compare/3.10.1…3.10.2) (2025-11-10) Bug Fixes correct button class assignment logic for postcode field (dc9c8c9) 3.10.1 [3.10.1](https://github.com/ideal-postcodes/woocommerce/compare/3.10.0…3.10.1) (2025-10-27) Bug Fixes file: bump woocommerce.min.js version to 1.1 (7c5bc30) 3.10.0 3.10.0 (2025-10-24) Features Security: Resolve CVE-2025-57923 (92fe630) 3.9.2 Bug Fixes checkout-update: Update checkout event fix 3.8.2 Update Address Finder and Postcode Lookup to 5.2.6 and 3.1.6 versions Axios security patch 3.8.1 Tested up to WooCommerce 10.0.4 and WordPress 6.8.2 environment 3.8.0 Add “Hide Address Fields Until Selection” option for separate address finder mode Add warning about compatibility with postcode lookup feature Improve address field visibility control when using separate address finder 3.7.2 Tested up to WooCommerce 9.8.5 and WordPress 6.8.1 environment 3.7.1 Only load admin settings script on the WooCommerce settings page Clean up observers when postcode lookup fields are removed 3.7.0 Hide postcode lookup field when a non-GBR country is selected Fix address population for dynamically generated inputs in WooCommerce Blocks checkout 3.6.5 Hide postcode lookup field when a non-GBR country is selected 3.6.4 Update to properly handle the Gutenberg country selector 3.6.2 Apply Axios security update 3.6.1 Fix synchronization between the selected country and Address Finder country 3.5.9 Enable removal of organisation name when option is enabled on configuration page 3.5.8 Fix how countries are selected on checkout billing and shipping pages Update integration tests 3.5.7 Fix broken link in administrator’s plugin dashboard 3.5.6 Update Postcode Lookup to version 2.0.0 3.5.5 Toggle the country context of Address Finder when a new country is selected in checkout Fix address field binding for certain countries with dynamically generated inputs in WooCommerce Blocks checkout 3.5.4 Improve Postcode Lookup layout on WooCommerce Blocks checkout 3.5.3 Improve handling of the new WooCommerce Blocks country and county combobox 3.5.2 Recompile JavaScript assets 3.5.1 Fix issue with country selection for certain country input fields 3.5.0 Add support for Blocks checkout Add support for PHP 8.2+ 3.4.4 Update Address Finder and Postcode Lookup to latest versions Fix issue with admin Address Finder configuration override option Add testing for PHP 8+ 3.4.1 Allow Postcode Lookup style overrides 3.4.0 Add search for WordPress customer user creation 3.3.2 Declare compatibility for HPOS 3.2.3 Add Postcode Lookup entity targeting Add Postcode Lookup contextClass to enable styling 3.2.2 Add tests for WooCommerce 5.9 3.2.1 Add tests for WooCommerce 5.6 3.2.0 Add Address Validation to WooCommerce Admin dashboard Default county population to true Test on WooCommerce 5.5 Upgrade Postcode Lookup to 1.8 Upgrade Address Finder to 2.2 3.1.4 Test on WooCommerce 5.4 Test on WordPress 5.7 3.1.3 Update readme 3.1.2 Test on WooCommerce 5.2 3.1.1 Upgrade Postcode Lookup to 1.7.2 3.1.0 Important. If you are using Postcode Lookup consider checking the styling of our Postcode Lookup tools on your checkout and user address book. This is particularly important if you are using custom styling to adapt our Postcode Lookup to your theme. As always, please drop by chat (chat.ideal-postcodes.co.uk) if you have any questions about this change. This update brings accessibility, usability and consistency improvements to our Postcode Lookup tools. In order to do this, the update reorganises Postcode Lookup HTML elements which may require you to update any custom styling you may have applied. Reorganise Postcode Lookup HTML Elements to more closely match WooCommerce defaults Adds “Postcode Lookup” label above Postcode Lookup search box for better accessibility Improves touch target size for small screen sizes on Postcode Lookup 3.0.6 Add testing for WooCommerce 5.1 3.0.5 Use the country ISO code in the country field when a text input is detected. Previously the plugin inserted the country’s full name; it now sets only the ISO code 3.0.4 Update Address Finder Update Postcode Lookup Rebuild JS payload to incorporate 3.0.3 3.0.3 Delay checkout refresh until after address population is complete 3.0.2 Improve styling of default Postcode Lookup setup 3.0.1 Update Address Finder to 1.8.0 Update Postcode Lookup to 1.7.0 Update and compress Address Finder CSS 3.0.0 Substantial upgrade of Postcode Lookup and Address Finder. Custom override users (advanced configuration) will be affected by Breaking Changes. You will not need to take action if your “Postcode Lookup Configuration Override” and “Address Autocomplete Configuration Override” configurations are empty. If you are upgrading from 1.x please upgrade to 2.x first to ensure your configuration is migrated correctly. Please reach out to support (https://ideal-postcodes.co.uk/support) if this change brings backwards incompatible changes not listed here. We will address these immediately. New Features: Screen Reader Support. Both Postcode Lookup and Address Finder are now screen reader friendly. Any visually impaired user will now get audio cues when using our Address Validation tools. Address Validation can be hidden when an unsupported territory/country is selected. This can be enabled from the admin panel. Initialised Address Finder and Postcode Lookup controllers are now available at the global IdealPostcodes namespace for easier customisation More custom callback options for Address Finder and Postcode Lookup More custom styling options for Address Finder and Postcode Lookup More custom behaviours like auto select single premise postcodes, hide/unhide address fields Breaking Changes: Both Postcode Lookup and Address Finder have been replaced. Any custom library overrides on the admin page must be translated into the new setup format. Deprecations: The legacy Postcode Lookup jQuery plugin is deprecated. This library will continue to be served until 4.0 is released. Please use Postcode Lookup instead (https://postcode-lookup.ideal-postcodes.dev/) The legacy Address Finder plugin is deprecated. This library will continue to be served until 4.0 is released. Please use Address Finder instead (https://address-finder.ideal-postcodes.dev/) Chores: Add testing on WooCommerce 5.0 Remove data migration check 2.3.1 Add tests for WooCommerce 4.9 2.3.0 Add tests for WordPress 5.6 Add tests for WooCommerce 4.8 2.2.0 Add Postcode Lookup and Address Autocomplete configuration overrides 2.1.9 Tested up to WooCommerce 4.7 Test WordPress 5.5.3 2.0.3 Tested up to WooCommerce 4.6 2.0.2 Tested up to WooCommerce 4.3 2.0.1 Fix: restore manual checkout trigger 2.0.0 Tested up to WooCommerce 4.2 BREAKING CHANGE: Settings page moved to Integration tab, under “UK Address Postcode Validation” Feature: Adds postcode lookup to checkout pages 1.0.5 Manually fire checkout refresh on address population 1.0.3 Update tested platforms for WordPress & WooCommerce Release to WordPress plugins directory 1.0.2 Automate version deploys to WordPress plugins directory 1.0.1 Drop trademark for plugin submission 1.0.0 Initial release