Ответы в темах

Просмотр 10 ответов — с 1 по 10 (всего 10)
  • Решено.

    Примерно так, но это не точно

    Огромное вам спасибо, вы очень помогли.
    Копипастом не сработало. Не много видоизменил и всё работает как надо.
    Теперь все УРЛЫ отображают полную структуру в соответствии с вложенными таксономиями.

    Полный код на GitHub.

    В админке все эти категории отмечены или отмечена только последняя дочерняя категория?

    Все три категории отмечены в админке для 3 поста. Две категории для второго поста и одна для первого поста. Сделал несколько скриншотов для наглядности.




    Если у записи указано три категории, то вот так $terms[0]->term_id, можно получить как первую родительскую категорию, так и последнюю дочернюю.

    У меня так и записано в строке 184.

    Вот полный фрагмент:

    add_filter( 'post_type_link', 'permalink_services_cat', 1, 2 );
    function permalink_services_cat( $permalink, $post ) {
    
    	if ( strpos( $permalink, 'services' ) === false) return $permalink;
    	$terms = get_the_terms( $post, 'cpt_services_cat' );
    
    	if ( !is_wp_error( $terms ) && !empty( $terms ) && is_object( $terms[0] )) {
    		$taxonomy_slug = get_term_parents_list( $terms[0]->term_id, 'cpt_services_cat', array(
    			'separator' => '/', 'format' => 'slug', 'link' => false, 'inclusive' => true
    		));
    		$taxonomy_slug = trim( $taxonomy_slug, '/' );
    	}
    
    	else {
    		$taxonomy_slug = 'sandbox';
    	}
    
    	return str_replace( 'services', 'services/' . $taxonomy_slug, $permalink );
    }

    Подскажите, что там не так.

    • Ответ изменён 1 год, 5 месяцев назад пользователем Anatolii Dimov.
    • Ответ изменён 1 год, 5 месяцев назад пользователем Anatolii Dimov.
    • Ответ изменён 1 год, 5 месяцев назад пользователем Anatolii Dimov.

    Это WP что-то там химичит…
    У меня в этот период времени тоже были проблемы, не мог установить темы…

    Щас все нормально, само решилось…

    • Ответ изменён 2 года, 10 месяцев назад пользователем Anatolii Dimov.

    Большое вам спасибо за помощь. К сожалению у меня нет знаний в программировании, и я всё делаю методом тыка. Три недели уже тыкаю, да всё не туда.

    Да вы правы, что если изменить ‘rewrite’ => array( ‘slug’ => ‘services1’), и заменить его в 4-5 блоках, то всё работает. Однако, мне необходимо структура ссылок, которую я описывал выше, а также если перейти на уровень вверх, то структура не ломается (home/child-3/).

    Я предполагаю, что нужно объединить блоки 3-5 (cattag), тоесть cpt_services_taxonomy, в котором сделать примерно следующие:

    $rules['^services/([^/]*)/[ тег если есть ]/?$'] = 'index.php?cpt_services_taxonomy=$matches[1]';

    В любом случаи, вы мне уже помогли сдвинутся с места.

    • Ответ изменён 3 года, 10 месяцев назад пользователем Anatolii Dimov.
    • Ответ изменён 3 года, 10 месяцев назад пользователем Anatolii Dimov.

    Привет, я рад что ты спросил. Я пытаюсь добавить, правило перезаписи для тегов.
    Код выше разбит на 6 блоков: 2-3 блоки — правило перезаписи категорий; 4-5 закомментированные блоки — правило перезаписи тегов, которые я и пытаюсь добавить.

    Мне необходимо изменить регулярное выражение для структуры ссылок для тегов 4-5, как эта:
    post-type/tagged/term-parent/term-child/post-name

    Denis Yanchevskiy (@Denisco) Благодарю!!!
    Custom Permalinks то что нужно…
    Что по по поводу CEO, вычитал где-то, что длинные пути не есть хорошо, но не для поисковиков, а для людей, просто путь в адресе очень длинный, хотя всего 2 уровня 🙂

    Лови проблем нет, может ВСЁ
    https://profiles.wordpress.org/wpallimport/#content-plugins

    UPD
    Есть страница, которая является родительской для других страниц.
    Так выглядит breadcrumbs
    Главная > Категория > Страница
    Так выглядит URL
    x.com / page1 / page2
    Проблема в том, что URL длинное у каждой страницы, в итоге весть путь в строке браузера слишком большой.

    Хочу, чтобы полный путь в адресной строке был такой
    x.com / page2
    но оставался прежним breadcrumbs
    Главная > Категория > Страница
    Что-то типа такого, где страница категория и страница подкатегория имеет свой URl и canonical.

    Вижу 4 способа пути решения, это:
    1. сделать в админке страницы одного уровня, но тогда придется редактировать КРОШКИ, чтобы сохранить логическую структуру.
    2. либо настроить редеректы, о которых я нихрена не знаю.
    3. попросить совета… Что я и делаю.
    4. не заморачиватся по сео.

    • Ответ изменён 4 года, 3 месяца назад пользователем Anatolii Dimov.
    • Ответ изменён 4 года, 3 месяца назад пользователем Anatolii Dimov.
    • Ответ изменён 4 года, 3 месяца назад пользователем Anatolii Dimov. Причина: UPD 1

    У вас подпись и описание заданы для картинок?

Просмотр 10 ответов — с 1 по 10 (всего 10)