Created
October 15, 2014 22:32
-
-
Save mattradford/74342b9ca6830ce0cb5c to your computer and use it in GitHub Desktop.
Revisions
-
mattradford created this gist
Oct 15, 2014 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,40 @@ // Remove slug from CPT // Careful of collisions and permalink must be %postname% // http://www.itsabhik.com/remove-custom-post-type-slug/ // There was an error in the code after $args array: , not ; // See also http://colorlabsproject.com/tutorials/remove-slugs-custom-post-type-url/ function remove_cpt_slug( $post_link, $post, $leavename ) { $args = array( 'public' => true, '_builtin' => false ); $cpts = get_post_types( $args, 'objects' ); foreach ( $cpts as $cpt ) { //Replace the slug $post_link = str_replace( '/' . $post->post_type . '/', '/', $post_link ); } return $post_link; } add_filter( 'post_type_link', 'remove_cpt_slug', 10, 3 ); function include_cpt_query( $query ) { // Only loop the main query if ( ! $query->is_main_query() ) return; // Only loop our very specific rewrite rule match if ( 2 != count( $query->query ) || ! isset( $query->query['page'] ) ) { return; } // 'name' will be set if post permalinks are just post_name, otherwise the page rule will match if ( ! empty( $query->query['name'] ) ) { $query->set( 'post_type', get_post_types() ); } } add_action( 'pre_get_posts', 'include_cpt_query' );