Skip Navigation

Tagged: 

This topic contains 0 replies, has 1 voice.

Last updated by jamesB-70 1 day, 17 hours ago.

Assisted by: Noman.

Author Posts
February 27, 2025 at 1:26 pm #16756299

jamesB-70

Background of the issue:
I am trying to get /post/ between locale and post name in URL. Here is a code:

function custom_post_permalink_structure($permalink, $post, $leavename) {
if ($post->post_type == 'post') {
$permalink = home_url('/post/' . $post->post_name);
}

return $permalink;
}

add_filter('post_link', 'custom_post_permalink_structure', 10, 3);
add_filter('post_type_link', 'custom_post_permalink_structure', 10, 3);

function custom_post_rewrite_rule() {
add_rewrite_rule('^post/([^/]+)/?', 'index.php?post_type=post&name=$matches[1]', 'top');
}

add_action('init', 'custom_post_rewrite_rule');

Link to a page where the issue can be seen: hidden link

Symptoms:
After adding translation to the post, WPML switcher is broken for this post.

Questions:
How can I ensure the correct URLs with /post/ and correct lang slug in the language switcher?
What is the correct solution compatible with WPML for this issue?

The topic ‘[Closed] Can't correct add /post/ before post slug’ is closed to new replies.