Настраиваемая WordPress ссылка на страницу архива через поле даты
Я настроил страницу архива WordPress, которая отображает список постов, отфильтрованных по настраиваемому полю даты "email_blast_date". Я пытаюсь выяснить, как создать ссылку в моем заголовке или боковой панели, которая направляет пользователей на страницу архива с последним днем 'email_blast_date', который содержит опубликованные сообщения. Я все еще новый разработчик WP... это то, что я знаю:
У меня работает архивная страница, основанная на моем настраиваемом поле "скорее email_blast_date", а не на дате публикации.
URL страницы архива структурирован и работает с настройками постоянной ссылки "День и имя" (domain.com/%year%/%month%/%day%/).
- Я предполагаю, что мне нужно использовать что-то вроде 'get_day_link();' но я не уверен, как настроить этот вызов, чтобы фильтровать посты через мое поле даты и получать последние 'email_blast_date' всех опубликованных постов. Архивный виджет уже делает это, но он основан на дате публикации, а не на моем поле даты.
Любой вам заранее за вашу помощь!!
1 ответ
Решение
<?php
$args = array(
'post_type' => 'post',
'numberposts' => 1,
'meta_key' => 'email_blast_date',
'order' => 'DESC',
'orderby' => 'meta_value'
);
$loop = new WP_Query( $args );
while ( $loop->have_posts() ) : $loop->the_post(); endwhile;
$eb_date = strtotime(get_post_meta( get_the_ID(), 'email_blast_date', true ));
$year = date('Y',$eb_date);
$month = date('m',$eb_date);
$day = date('d',$eb_date);
$link = $year . "/" . $month . "/" . $day . "/";
?>
<a href="<?php echo esc_url( home_url( $link ) ); ?>