You can use sanitize_title()
function:
$string = "This is title string";
// return "this-is-title-string"
$slug = sanitize_title( $string );
You can also filter the result of sanitize_title()
function using sanitize_title
filter:
add_filter( 'sanitize_title' , 'sanitize_filter_callback', 10, 3 );
function sanitize_filter_callback( $title, $raw_title, $context ) {
// do something
}
Related Posts:
- Is it possible to get a page link from its slug?
- WordPress slug issue with non-latin characters
- Removing the redirect after changing a page’s slug
- Must slugs be unique?
- How does wordpress keep track of post id when post id is not used in permalinks?
- Stop WordPress from reserving slugs for media items?
- Change slug on post creation
- Prevent WordPress from abbreviating-long-slugs…-in-the-admin
- Post type child of another post type
- How to prevent apostrophes and quotes from appearing in permalinks?
- Why don’t WordPress post slugs allow accents?
- Is It A Good Idea To Change Author Slug (user_nicename field) Directly In MySQL DB?
- How can I force WordPress to redirect to canonical permalinks?
- When creating a WordPress page, a “-2” suffix is added to new pages’ permalinks
- How to i18n slugs for templates?
- Remove parent slug for child pages
- How to Remove Slug From Database?
- How to make draft posts or posts in review accessible via full url / slug?
- Remove parent slug for child pages
- Replace WordPress %postname% suffix with %postid%?
- Limiting the number of words or characters in the slug/permalink
- Gutenberg Editor: dynamicaly change slug field with an ACF field
- How to edit the slug/permalink in Gutenberg?
- Make attachment pages require a base url
- Is using %postname% for permalinks really that bad for performance?
- WordPress | Convert #038; to &
- How to generate random numeric slugs for a custom post type?
- Change author slug and functionality
- How can I add a page’s ID to its permalink using WP_Rewrite?
- How to modify the slug for the default wp posts without affecting other posttypes?
- Auto-create a pretty permalink for a bunch of posts
- Does rename of page slugs create 301 redirects from old slug to new (same as for posts)?
- Get new WordPress slug from old wordpress slug
- Non latin post slug truncate
- filtering special chars from post slug
- Editing URL character replacement
- Share same Slug for a Custom Post Type and 2 Taxonomies
- force permalink slug for page vs post_type slug parent
- Need to add trailing slash to all internal links relative and absolute
- get_permalink returning site home url instead of the url of slug being passed
- wp not making CPT permalink / slugs unique
- Edit page slug after save, cause 404 by linked pages
- Pre-populate Slug / Permalink with URL
- Slugs Disappeared Leaving 404s – Quick way to repopulate?
- Custom permalinks in WordPress
- wordpress how to replace url /bar with foo/bar for custom post type
- Suddenly new posts have the default permalink instead of the post name
- How to Custom Edit Post Title & Permalink Slug?
- how do prevent wordpress from creating permalinks for media files
- I’ve removed my /author/ slug but it clashes with new and existing pages. Any fixes?
- Bulk append URL (add word to slug)
- add_rewrite_rule – Page Slug from “/foo-bar/” to “/foo/bar/”
- Page content doesn’t display when published but does when previewed as draft?
- Remove international characters from slug – Almost done – Bit help
- How to create posts or pages with the names in wordpress?
- How to remove slug from front page?
- Gutenberg Editor: dynamically edit slug field based on ACF field
- How do I structure my permalinks in WordPress?
- New posts link to old posts (random)
- Modify post slug before saving
- Does wordpress take care of slug collisions?
- assets aren’t loading on a page but loads on others? slug permalink conflict?
- How to prevent wordpress from lowering Capitalized letters
- WordPress slug confusion
- Code snippet to add filter pre_post_link to change Media URL (post_type attachment permalink/slug)
- How do I use the same Tag slug for different Tags?
- home page slug editor missing from WordPress
- How to create a standard WP Page that has the same url as an archive
- permalink not showing correctly using wp_insert_post and post_name
- 404 error on published page with specific permalink
- How to allow different authors to use same post slug?
- Problem with permalinks
- Allowing slash in slug/permalinks
- Author permalink
- Force/Limit the post/page slug to accept only url friendly characters
- Removing or hiding slug/permalink from htaccess
- Automatically remove repeated words in slug
- Uppercase vs. Lowercase page slugs
- Keep wordpress from modifying my permalinks
- Is there a way to remove the option to modify the Slug in post.php
- Possible to hide parts of the slug from get_template_directory_uri and bloginfo(‘template_directory’)
- How to update permalink on the fly?
- How can i edit all posts slug in bulk keeping WP native redirect?
- Display a custom slug in URL depending on user variable
- Post/page without slug
- Different template fallback when changing permalinks
- UI does not show correct Slug after modified using save_post action
- Pages resolve at different URLs (different capitalizations)
- WordPress not remembering old slugs for pages
- Get the current page URL (including pagination)
- How do I use the same post slug for different Categories?
- Does a parent page’s post_title have to appear in a child page permalink?
- How to make variables in URL look like the permalink structure?
- How to improve WordPress security by hiding non public facing files?
- Is it possible to keep all special letters for foreign languages in slug as in title?
- How to 301 redirect from one url to another properly
- Arabic permalink redirect to home page
- Changing permalink settings causes 404
- Custom permalink structure with a prefix just for posts
- How to rewrite a folder in WordPress?