Лично я стандартные записи использую только для новостей и статей, а услуги, эвенты и другие, обособленные типы контента регистрирую с помощью
register_post_type()
и
register_taxonomy()
На архивной странице
archive.php посты выводятся с подключением шаблонов вида
get_template_part( 'templates/archive/post', get_post_type() );
Т.е. WP пытается использовать файлы
post-service.php или
post-event.phpб а при их отсутствии подключает базовый
post.php
Для изменения шаблона архивной страницы нужно создать в корне файл
taxonomy-{taxonomy}.php или
archive-{post_type}.php в зависимости что вам нужно, подробнее в смотрите
иерархию шаблонов
Глобальный запрос постов находится в
global $wp_query, если его нужно отфильтровать, то используйте хук
pre_get_posts
Так же рекомендую смотреть код стандартных или популярных тем для использования в качестве референсов по организации файловой структуры и кода