Архив категорий в меню

Я ищу решение для показа архивов для определенной категории в моем главном меню.

В записи меню первого уровня будет отображаться ярлык категории, например «Дайджест новостей», без ссылки на что-либо. На одном уровне под этим, когда он зависает над «News Digest», я хочу показать месяцы текущего года. Ниже я хочу показать прошлые годы.

В конце концов, это будет выглядеть так:

Дайджест новостей

  • Сентябрь 2013
  • август 2013
  • Июль 2013
  • июнь 2013
  • Май 2013
  • апрель 2013
  • Март 2013 г.
  • Февраль 2013
  • Январь 2013
  • Год 2012
  • Год 2011

Эти записи меню будут ссылаться на страницы, в которых перечислены статьи, принадлежащие этой категории, написанные в течение этого конкретного времени.

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

Есть ли плагин, который я пропустил? Если нет, какие-либо указания о том, как я могу это реализовать?

Solutions Collecting From Web of "Архив категорий в меню"

В WordPress есть действия и фильтр, которые будут использоваться для добавления элементов в администратор меню, и поэтому можно написать плагин, который помещает на экран администратора меню месячные / летние архивы.

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

Но есть простой способ, который требует всего пять минут ручной работы и ни одной строки кода.

Вы можете использовать функции «Ссылки» в меню WordPress и вручную создавать ссылки.

Для верхнего уровня, как только вы не хотите ничего связывать, вы можете использовать '#' качестве URL:

меню верхнего уровня


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

При использовании довольно постоянной ссылки по умолчанию архивы месяца связаны с, например, example.com/2013/09 так:

месячный архив


Если у вас слишком мало постоянных ссылок, ссылка shuold будет выглядеть примерно так: example.com?m=201309 .

Теперь повторите ту же операцию за все месяцы, и когда вам нужно добавить ссылку на летние архивы, используйте url в форме example.com/2013/ .

Без каких-либо хороших ссылок ссылки на архив года – example.com?year=2013 .

летних архивов


Это работает отлично, но после того, как ссылки добавлены вручную, есть 2 небольших вопроса:

  1. Ссылки не добавляются автоматически, когда приходит новый месяц, вам нужно вручную добавить новую ссылку. (можно написать код, который обрабатывает создание автоматической ссылки, но это еще один вопрос …)
  2. Если вы добавите какие-то пользовательские правила, которые изменяют структуру мотивированного и годового архива url, ссылка больше не будет работать. Если вы отключите довольно постоянные ссылки и вы создадите URL-адрес, используя URL-адреса, URL-адреса больше не будут работать (но если вы их включите , а ссылка будет создана с использованием версии URL-адреса, которая будет продолжена).

Обратите внимание, что здесь используется короткий код с использованием WP 3.6.1, страница администратора меню изменена в WP 3.6, поэтому, если ваш вид выглядит по-другому, это потому, что у вас установлена ​​более старая версия.

Рабочий процесс, описанный в ответе, может быть выполнен и с более старой версией, но я рекомендую вам, как обычно, обновить ваш WorpPress.