Хлебные крошки для пользовательских типов записей?

29 сент. 2010 г., 13:32:23
Просмотры: 16.4K
Голосов: 4

Я пробовал и Yoast Breadcrumbs, и Breadcrumbs NavXT, но ни один из них не работает с пользовательскими типами записей. Кто-нибудь смог решить эту проблему?

Отдельная запись "Новости" на моем сайте отображается так: Главная -> Блог -> Моя новость

Вместо правильного отображения: Главная -> Новости -> Моя новость

1
Комментарии

Мне тоже очень хотелось бы узнать ответ на этот вопрос.

jessegavin jessegavin
29 сент. 2010 г. 22:37:36
Все ответы на вопрос 3
1

Breadcrumb NavXT поддерживает пользовательские типы записей начиная с версии 3.6.0. Вы можете столкнуться с некоторыми проблемами настроек. Попробуйте сбросить их или взгляните на разработческую версию. Сначала сделайте резервную копию ваших настроек с помощью функции экспорта/импорта настроек.

29 сент. 2010 г. 23:18:51
Комментарии

Спасибо - разработческая версия сработала. В настройках теперь можно задать корневую страницу для каждого пользовательского типа записей.

fxfuture fxfuture
30 сент. 2010 г. 02:05:09
0

Как сказал hakre, Breadcrumb NavXT официально поддерживает пользовательские типы записей начиная с версии 3.6.0. Я тестировал его как с иерархическими, так и с обычными пользовательскими типами записей (а также с пользовательскими таксономиями для обычных типов записей).

В версии 3.7.0 (следующий релиз) поведение Breadcrumb NavXT изменится — появится возможность задавать корневой элемент для пользовательских типов записей. В версии 3.6.0 предполагалось, что все обычные типы записей находятся под страницей записей (вы видите её как "блог" в цепочке навигации), а все иерархические типы записей находятся под главной страницей (или "Главная" в вашей цепочке навигации). Это уже частично реализовано в SVN trunk (на данный момент архивы на основе таксономий не поддерживают эту функцию).

Если "Новости" не является термином какой-либо таксономии для "Мой новостной пост" или родительским постом для "Мой новостной пост", то в данный момент оно не будет отображаться. Как упомянуто выше, в разрабатываемой версии вы можете сделать "Новости" страницей (встроенный тип записи WordPress "страница"), и она появится в цепочке.

30 сент. 2010 г. 02:09:28
0

В настоящее время использование пользовательского типа записи в Breadcrumb NavXT требует создания отдельной страницы для архива этого типа записи.

Другой альтернативой является плагин Breadcrumb Trail (http://wordpress.org/extend/plugins/breadcrumb-trail/). Он, кажется, поддерживает пользовательские типы записей... но только для WP 3.1!! (Это моё предположение на основе кода, так как он использует функции, доступные только в WP 3.1+).

Я немного модифицировал код. Однако из-за моих потребностей на тот момент я интегрировал его с парой других плагинов... Это означает, что необходимо иметь эти плагины и определённые настройки.

Вы можете скачать модифицированную версию плагина Breadcrumb Trail по этой ссылке: http://www.zumodrive.com/share/8addOGQ3OW.

Также вам понадобится скачать и использовать плагин Custom Post Permalinks (http://wordpress.org/extend/plugins/custom-post-permalinks/).

Объяснение изменений и инструкции по настройке вы найдёте в папке модифицированного плагина (файл *modification_log.rtf*).

В основном, после активации обоих плагинов вам нужно настроить 'Настройки постоянных ссылок' следующим образом:

  • 'Общие настройки' выбрать 'Месяц и название'
  • 'Дополнительные настройки постоянных ссылок' установить как '/%post_type%/%your_custom_taxonomy%/%news_post%/'

Это настроит постоянные ссылки в таком формате:

www.yoursite.com/your_custom_post_type/your_custom_taxonomy_term/the_post

Затем поместите следующий код туда, где должны отображаться хлебные крошки:

<?php
// Плагин: Breadcrumb Trail (Модифицированный) //
if(function_exists('breadcrumb_trail')) {
    $breadcrumb = array(
        'separator' => '>',
        'before' => 'Вы находитесь здесь: ',
        'after' => false,
        'front_page' => true,
        'show_home' => __('Главная'),
        'singular_{your_custom_post_type}_taxonomy' => 'your_custom_taxonomy',
        'echo' => true,
    );
    breadcrumb_trail($breadcrumb);
}
?>

Это позволит отображать хлебные крошки в таком виде:

Вы находитесь здесь: Главная > Ваш пользовательский тип записи > Термин вашей пользовательской таксономии > Запись

Конечно, вы можете адаптировать это под свои нужды, но это то, что я использовал в своём проекте.

Возможно, я упустил некоторые необходимые настройки для работы этого решения... так что дайте мне знать, если что-то не сработает.

В любом случае, я просто хотел поделиться ещё одним решением... Надеюсь, оно кому-нибудь пригодится.

Кстати, модифицированный плагин также интегрируется с плагином qTranslate для поддержки многоязычности...

Удачи!

31 окт. 2010 г. 19:30:18