Как использовать все теги в постоянных ссылках

Мой сайт с картинками настроен так, что сообщения не имеют названия и имеют только теги.

Я хотел бы знать, как использовать все теги в настройках постоянных ссылок?

Solutions Collecting From Web of "Как использовать все теги в постоянных ссылках"

Чтобы использовать все теги в постоянной позиции, попробуйте вариант моего аналогичного ответа. Как использовать первый тег в постоянных ссылках

  • add_rewrite_tag( $tag, $regex ) добавляет новый placeholder, который вы можете использовать в настройках / Permalinks .

  • Фильтр post_link преобразует заполнитель во что-то полезное, вот список всех тегов-тегов, разделенных post_link - .

  • Отрегулируйте статические переменные $default и $placeholder для ваших нужд.

  • Затем установите и активируйте код в качестве плагина, перейдите в « Настройки / Постоянная ссылка» и используйте новый заполнитель следующим образом:

    введите описание изображения здесь

 add_action( 'init', array ( 'T5_All_Tags_Permalink', 'init' ) ); /** * Adds '%tag%' as rewrite tag (placeholder) for permalinks. */ class T5_All_Tags_Permalink { /** * What to use when there is no tag. * * @var string */ protected static $default = 'tag'; /** * Used in Settings/Permalinks * * @var string */ protected static $placeholder = '%tags%'; /** * Add tag and register 'post_link' filter. * * @wp-hook init * @return void */ public static function init() { add_rewrite_tag( self::$placeholder, '([^/]+)' ); add_filter( 'post_link', array( __CLASS__, 'filter_post_link' ) , 10, 2 ); } /** * Parse post link and replace the placeholder. * * @wp-hook post_link * @param string $link * @param object $post * @return string */ public static function filter_post_link( $link, $post ) { static $cache = array (); // Don't repeat yourself. if ( isset ( $cache[ $post->ID ] ) ) return $cache[ $post->ID ]; if ( FALSE === strpos( $link, self::$placeholder ) ) { $cache[ $post->ID ] = $link; return $link; } $tags = get_the_tags( $post->ID ); if ( ! $tags ) { $cache[ $post->ID ] = str_replace( self::$placeholder, self::$default, $link ); return $cache[ $post->ID ]; } $slugs = wp_list_pluck( $tags, 'slug' ); $cache[ $post->ID ] = str_replace( self::$placeholder, join( '-', $slugs ), $link ); return $cache[ $post->ID ]; } }