Пользовательские постоянные ссылки типа сообщения не включают -2 позади - PullRequest
0 голосов
/ 03 апреля 2019


Мне нужна помощь по поводу пользовательских постоянных ссылок типа WordPress.

Теперь у меня есть сообщение с permarlink:

  • domain.com / post-type / test
  • domain.com / пост-тип / тест-2

Как настроить формат на:

  • domain.com / post-type / test-% post-id%
  • domain.com / post-type / test-% post-id% (не включая -2 позади)

Я использовал плагин:

Но не работает, может кто-нибудь, пожалуйста, помогите мне, спасибо!

Ответы [ 2 ]

0 голосов
/ 03 апреля 2019

Добавьте это в ваши functions.php

add_filter( 'wp_unique_post_slug', function( $slug, $post_id, $post_status, $post_type, $post_parent, $original_slug ) {
  if ( $post_type == 'post' && $slug != $original_slug )
    $slug = preg_replace( '#\-[0-9]+$#', '-' . $post_id, $slug );

  return $slug;
}, 10, 6 );
0 голосов
/ 03 апреля 2019
/**
 * unifying slug of the CPT by adding post id in the slug
 *
 * @param $slug
 * @param $post_id
 * @param $post_status
 * @param $post_type
 * @param $post_parent
 * @param $original_slug
 *
 * @return null|string|string[]
 */
function custom_permalink_slug_wp_unique_post_slug_callback( $original_slug, $slug, $post_id, $post_status, $post_type, $post_parent ) {

    // her we have to mention which post type to support
    $support_post_type = array( 'post', 'book' );

    if ( in_array( $post_type, $support_post_type ) ) {
        $slug = $slug . '-' . $post_id;
    }

    return $slug;
}

add_filter( 'pre_wp_unique_post_slug', 'custom_permalink_slug_wp_unique_post_slug_callback', 100, 6 );

Скопируйте приведенный выше код и вставьте его в файл functions.php дочерних тем. Я проверил это, и он отлично работает для меня

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