=== Custom Post Type Permalinks ===

Contributors: Toro_Unit, inc2734, ixkaito, keita_kobayashi, strategio  
Donate link: https://www.paypal.me/torounit  
Tags: permalink, url, link, address, custom post type  
Requires at least: 6.7  
Tested up to: 7.0  
Requires PHP: 8.0  
License: GPLv2 or Later  
License URI: http://www.gnu.org/licenses/gpl-2.0.txt  
Stable tag:        3.5.5

Edit the permalink of custom post type.



== Description ==

Custom Post Type Permalinks allow you edit the permalink structure of custom post type.

Change custom taxonomy archive's permalink to "example.org/post_type/taxonomy_name/term_slug". Can disable this fix.

And support `wp_get_archives( 'post_type=foo' )` and post type date archive (ex. `example.com/post_type_slug/date/2010/01/01` ).

[This Plugin published on GitHub.](https://github.com/torounit/custom-post-type-permalinks)

Donation: Please send [My Wishlist](http://www.amazon.co.jp/registry/wishlist/COKSXS25MVQV) or [Paypal](https://www.paypal.me/torounit)

= Translators =

- Japanese(ja) - [Toro_Unit](http://www.torounit.com/)
- French(fr_FR) - [Geoffrey Crofte](http://geoffrey.crofte.fr/)
- Russian(ru_RU) - [Olart](http://olart.ru), [Natali_Z](https://profiles.wordpress.org/natali_z)

= Also checkout =

- [Simple Post Type Permalinks](https://wordpress.org/plugins/simple-post-type-permalinks/)

== Setting on Code ==

Example:

<pre>register_post_type( 'foo',
	array(
		'public' => true,
		'has_archive' => true,
		'rewrite' => array(
			"with_front" => true
		),
		'cptp_permalink_structure' => '%post_id%'
	)
);</pre>

= Exclude specific post type =

<pre>add_filter(  'cptp_is_rewrite_supported_by_foo',  '__return_false' );

// or

add_filter(  'cptp_is_rewrite_supported', function ( $support , $post_type ) {
    if ( 'foo' === $post_type ) {
        return false;
    }
    return $support;
}, 10, 2);</pre>

== Installation ==

- Download the custom-post-type-permalinks.zip file to your computer.
- Unzip the file.
- Upload the `custom-post-type-permalinks` directory to your `/wp-content/plugins/` directory.
- Activate the plugin through the 'Plugins' menu in WordPress.

That's it. You can access the permalinks setting by going to _Settings -> Permalinks_.

== Screenshots ==

- screenshot-1.png

== Changelog ==

= 3.5.5 =

- Tested WP 7.0

= 3.5.4 =

- Tested WP 6.9

= 3.5.3 =

- Tested WP 6.6
- Fix notices for php 8.

= 3.5.0 =

- Tested WP 6.1 / 6.2 / 6.3
- Tested PHP 8.0 / 8.2

= 3.4.5 =

- Update test for WP 5.7

= 3.4.4 =

- WPML support: Only apply slug translation if post type is supported. (Props @ffauvel)

= 3.4.3 =

- Fix archive link bug fix.

= 3.4.2 =

- Tested WP 5.6.

= 3.4.1 =

- Fix readme.

= 3.4.0 =

- Tested 5.5 beta3
- WPML support: custom post type slug translation. ( Props @strategio )
- Add new filter `cptp_post_link_category` and `cptp_post_link_term` .
- Use Lowercase prefix for action and filter.

= 3.3.5 =

- Tested 5.4
- fix CPTP_Module_Permalink::post_type_link.

= 3.3.1 =

- Add disable option for date / author and post type archive.
- Bug fix for `parse_request`.

= 3.2.2 =

- Fix readme.txt

= 3.2.0 =

- Support only public post type.
- Add `CPTP_is_rewrite_supported_by_${post_type}` and `CPTP_is_rewrite_supported` filter.
- Remove post_type query wp_get_archives.

= 3.1.4 =

- Test for WordPress 4.9.
- PHPCS fix.

= 3.1.3 =

- Test for WordPress 4.8.
- Bug fix for attachment link.

= 3.1.1 =

- Bug fix in `CPTP_Module_Setting::upgrader_process_complete`.

= 3.1.0 =

- Add filter `CPTP_date_front`.
- Fix sort term by `wp_list_sort` .

= 3.0.0 =

- Admin notice on update plugin.
- Large bug fix.
- no_taxonomy_structure bug fix.
- Add default value for options.

= 2.2.0 =

- add `CPTP_Util::get_no_taxonomy_structure`.

= 2.1.3 =

- Set `no_taxonomy_structure` default `true`.

= 2.1.2 =

- `rewirte => false` post type support.

= 2.1.0 =

- Create rewrite rule on `registered_post_type` and `registered_taxonomy` action.
- Not create taxonomy rewrite rule when `rewrite` is `false`.

= 2.0.2 =

- pointer html bug fix.

= 2.0.0 =

- `add_rewrite_rules` on `wp_loaded` priority is changed 10 from 100. [fix issue #53](https://github.com/torounit/custom-post-type-permalinks/issues/53)
- Replace `wp_get_post_terms` by `get_the_terms`. [fix issue #55](https://github.com/torounit/custom-post-type-permalinks/issues/55)
- Fix bug `register_uninstall_hook` called twice on each page. [fix issue #56](https://github.com/torounit/custom-post-type-permalinks/issues/56)

= 1.5.4 =

- Fixed removed parent post problem.

= 1.5.3 =

- readme fix.

= 1.5.0 =

- Tested for 4.5.
- Add filter `CPTP_set_{$module_name}_module`.

= 1.4.0 =

- Fix Translation Problem.

= 1.3.1 =

- bugfix `wp_get_archives`.

= 1.3.0 =

- bugfix for polylang.

= 1.2.0 =

- Add filter `cptp_post_type_link_priority`, `cptp_term_link_priority`, `cptp_attachment_link_priority`.
- Add action `CPTP_registered_modules`.

= 1.1.0 =

- WPML Test. thanks [keita_kobayashi](https://profiles.wordpress.org/keita_kobayashi) !

= 1.0.5 =

- admin bug fix. thanks [ixkaito](https://profiles.wordpress.org/ixkaito) !
- Translation Update Thanks [Natali_Z](https://profiles.wordpress.org/natali_z) !

= 1.0.4 =

- option bug fix.

= 1.0.3 =

- add category rule, if only attached category to post type.

= 1.0.2 =

- category slug bug fix.

= 1.0.0 =

- Set Permalink enable `register_post_type`.
- Enable add post type query to taxonomy archives.
- Use Class Autoloader.
- Create Rewrite Rule on `wp_loaded` action.
- WordPress Code Format Fix.
- `CPTP_Module_Permalink` Bug Fix.
- Bug Fix.
- Use Semantic Versioning.
- Date Structure Fix.
- Use Category Base.

= 0.9.7 =

- Adding date slug only conflicting `%post_id%`.
- Change taxonomy link rewrite rule. Use `post_type`.
- Can change template include custom taxonomy.

= 0.9.6 =

- Category and author.
- French Transration. Thanks Geoffrey!
- Hierarchial Term Fix.

= 0.9.5.6 =

- Strict Standard Error Fix.

= 0.9.5.4 =

- archive link bug fix.
- Tested Up 3.9

= 0.9.5.3 =

- “/”bug fix.
- taxonomy tmplate bug fix.

= 0.9.5.2 =

- Archives Rewrite Fix.

= 0.9.5.1 =

- Admin Bug Fix.

= 0.9.5 =

- Big change plugin architecture.
- Show `has_archive`, `with_front`.

= 0.9.4 =

- Internal release.

= 0.9.3.3 =

- `has_archive` Bug Fix.
- Fixed a bug in the link, including the extension.

= 0.9.3.2 =

- `wp_get_archives` Bug Fix.

= 0.9.3.1 =

- Tested 3.6
- Bug Fix.

= 0.9.3 =

- Admin page fix.
- slngle pageing link fix.
- Add Russian translation.

= 0.9 =

- Add custom post type archive only `has_archive` is `true`.
- Change method name.
- Change hook custom post link.
- Use Slug in `wp_get_archive()`.
- Fix attachment link.

= 0.8.7 =

- Translate Bug Fix.

= 0.8.6 =

- Paging Bug Fix.
- Commnent Paging.
- Show pointer.
-

= 0.8.1 =

- Bug Fix.

= 0.7.9.1 =

- Support Comment permalink.
- Small change in setting page.
- Change default value.
- Bug Fix.

= 0.7.8 =

- Bug fix.

= 0.7.7 =

- Bug fix.

= 0.7.6 =

- Add parent's slug to hierarchical post type.

= 0.7.5 =

- Add ability to disable to change custom taxonomy archive's permalink.

= 0.7.4 =

- Bug fix taxonomy rewrite.

= 0.7.3 =

- Changed part for saving the data.

= 0.7.2 =

- Reweite bug fix.
- Prewview bug fix.

= 0.7.1 =

- Bug fix.

= 0.7 =

- Add `%{taxonomy}%` tag.
- A large number of Bug Fix.
- Change Setting Page. Use Setting API.

= 0.6.2 =

- Fix `%author%` tag.

= 0.6 =

- First release on wordpress.org
