Пользовательский тип записи Ежегодный архив Выпадающий список

Я пытаюсь создать новый веб-сайт, где я использую блог WordPress для «Отчетов о событиях» и настраиваемый тип сообщений для «Фотогалереи событий».

Я создаю собственную тему с помощью начальной загрузки, но мои навыки работы с PHP практически отсутствуют. По сути, я знаю, какие фрагменты php куда вставлять, чтобы базовая тема WordPress работала. Помимо этого, у меня нет навыков php. Я использую плагин CPT UI для создания пользовательского типа записи.

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

<form action="<?php bloginfo('url'); ?>/" method="get"><?php $select = wp_dropdown_categories('show_option_none=Select Category&show_count=1&orderby=name&echo=0&selected=6'); $select = preg_replace("#<select([^>]*)>#", "<select$1 onchange='return this.form.submit()'>", $select); echo $select; ?></form>

Это позволяет пользователю выбрать категорию блога (в данном случае названия чемпионатов). В качестве альтернативы пользователь может выбрать фильтр по месяцу/году, используя это раскрывающееся меню:

<select name="archive-dropdown" onChange='document.location.href=this.options[this.selectedIndex].value;'>
    <option value=""><?php echo attribute_escape(__('Select Month/Year')); ?></option>
        <?php wp_get_archives('type=monthly&format=option&show_post_count=1'); ?> 
</select>

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

Мой CPT называется «галерея», а таксономия — «чемпионат».

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

Кажется, это форматирует URL-адреса архива CPT в логическом формате. domain.com/gallery/2018/04 покажет фотогалереи за апрель 2018 года, domain.com/gallery/2018/ покажет все галереи за 2018 год. Я чувствую, что я на полпути к своей цели.

Есть ли способ сделать так, чтобы годы/месяцы отображались в виде выпадающего списка, как у меня для блога WordPress? Я вижу из функций (по ссылке выше), что они выводятся как элементы списка, но все мои попытки заставить это работать в раскрывающемся списке ни к чему не привели.

Есть ли способ получить термины таксономии (не уверен, что термины являются правильным техническим термином здесь) для выбора/выбора «чемпионата» через раскрывающийся список, как у меня в моем стандартном раскрывающемся списке категорий блога WordPress?

Отчеты (блог) и галереи (CPT) охватывают несколько десятилетий, поэтому быстрое и легкое перемещение между годами и чемпионатами имеет решающее значение. Разделение отчетов и галерей также важно.

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

Любая помощь и советы приветствуются :)


person QJD    schedule 10.05.2020    source источник
comment
Привет +QJD, Можете ли вы поделиться кодом, который у вас есть, чтобы получить 50% там. Мы можем опираться на это. оставляйте фиктивные тексты или комментарии там, где вам нужно заполнить пробелы.   -  person omukiguy    schedule 10.05.2020
comment
Привет. Спасибо за твое сообщение. Код, который дает мне 50%, - это две функции, перечисленные в ссылке в моем ОП (оценка 28). Эти две функции форматируют URL-адреса архива CPT в формате логической даты. domain.com/gallery/2018/04 покажет фотогалереи за апрель 2018 года, domain.com/gallery/2018/ покажет все галереи за 2018 год. Я могу использовать эти функции с get_cpt_archives('gallery') для динамического создания ‹li› со ссылками на месяц/год, но я не могу понять, как сделать так, чтобы ссылки отображались в раскрывающемся списке.   -  person QJD    schedule 10.05.2020