Пользовательская постоянная ссылка Wordpress игнорируется - PullRequest
0 голосов
/ 06 мая 2019

Я купил тему с пользовательским типом поста talent, и теперь я пытаюсь получить пользовательскую постоянную ссылку для этого типа поста.

Я добавил это в functions.php

add_filter('post_link', 'talent_permalink', 99, 3);
add_filter('post_type_link', 'talent_permalink', 99, 3);

function talent_permalink($permalink, $post_id, $leavename) {
    if (strpos($permalink, '%talent-cat%') === FALSE) return $permalink;
        // Get post
        $post = get_post($post_id);
        if (!$post) return $permalink;

        // Get taxonomy terms
        $terms = wp_get_object_terms($post->ID, 'talent_category');   
        if (!is_wp_error($terms) && !empty($terms) && is_object($terms[0])) $taxonomy_slug = $terms[0]->slug;
        else $taxonomy_slug = 'all';

    return str_replace('%talent-cat%', $taxonomy_slug, $permalink);
}   

Я добавил %talent-cat% в пользовательскую структуру настроек постоянной ссылки, и ничего не изменилось.

Что я хочу http://example.com/work/%talent-cat%/model/%postname%/

Что происходит в настоящее время http://example.com/work/talent/%postname%/

Как мне решить?Я хочу, чтобы в моем коде функция постоянной ссылки перезаписывала / имела приоритет для любого плагина.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...