<?php
/**
 * The template for displaying the blog posts index
 *
 * This template is used when the blog posts page is different from the front page.
 * It displays a listing of recent blog posts with pagination.
 * Set in WordPress Settings > Reading > "Posts page".
 *
 * @link https://developer.wordpress.org/themes/basics/template-hierarchy/#home
 *
 * @package ROI_Theme
 * @since 1.0.0
 */

get_header();
?>

	<main id="main-content" class="site-main" role="main">

		<div class="content-wrapper">

			<!-- Primary Content Area -->
			<div id="primary" class="content-area">

				<?php if ( have_posts() ) : ?>

					<!-- Blog Header -->
					<header class="page-header">
						<?php
						// Display blog page title
						if ( is_home() && ! is_front_page() && get_option( 'page_for_posts' ) ) :
							?>
							<h1 class="page-title">
								<?php echo esc_html( get_the_title( get_option( 'page_for_posts' ) ) ); ?>
							</h1>
							<?php
							// Display blog page description if available
							$blog_page = get_post( get_option( 'page_for_posts' ) );
							if ( $blog_page && ! empty( $blog_page->post_content ) ) :
								?>
								<div class="page-description">
									<?php echo wp_kses_post( wpautop( $blog_page->post_excerpt ) ); ?>
								</div>
							<?php endif; ?>
						<?php else : ?>
							<h1 class="page-title">
								<?php esc_html_e( 'Blog', 'roi-theme' ); ?>
							</h1>
						<?php endif; ?>
					</header><!-- .page-header -->

					<!-- Blog Posts Loop -->
					<div class="blog-posts">

						<?php
						// Start the WordPress Loop
						while ( have_posts() ) :
							the_post();

							/**
							 * Include the Post-Type-specific template for the content.
							 * If you want to override this in a child theme, then include a file
							 * called content-___.php (where ___ is the Post Type name) and that will be used instead.
							 */
							get_template_part( 'template-parts/content', get_post_type() );

						endwhile;
						?>

					</div><!-- .blog-posts -->

					<?php
					/**
					 * Pagination
					 * Display navigation to next/previous set of posts when applicable.
					 */
					the_posts_pagination(
						array(
							'mid_size'  => 2,
							'prev_text' => sprintf(
								'%s <span class="nav-prev-text">%s</span>',
								'<span class="nav-icon" aria-hidden="true">&laquo;</span>',
								esc_html__( 'Previous', 'roi-theme' )
							),
							'next_text' => sprintf(
								'<span class="nav-next-text">%s</span> %s',
								esc_html__( 'Next', 'roi-theme' ),
								'<span class="nav-icon" aria-hidden="true">&raquo;</span>'
							),
							'before_page_number' => '<span class="screen-reader-text">' . esc_html__( 'Page', 'roi-theme' ) . ' </span>',
							'aria_label' => esc_attr__( 'Posts navigation', 'roi-theme' ),
						)
					);

				else :

					/**
					 * No posts found
					 * Display a message when no content is available.
					 */
					get_template_part( 'template-parts/content', 'none' );

				endif;
				?>

			</div><!-- #primary -->

			<?php
			/**
			 * Sidebar
			 * Display the sidebar if it's active.
			 */
			if ( is_active_sidebar( 'sidebar-1' ) ) :
				get_sidebar();
			endif;
			?>

		</div><!-- .content-wrapper -->

	</main><!-- #main-content -->

<?php
get_footer();
