feat(projects): add archive-projects template
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
<?php
|
||||
/**
|
||||
* Project Archive Template
|
||||
*
|
||||
* @package KsPortfolio
|
||||
*/
|
||||
|
||||
namespace KsPortfolio;
|
||||
|
||||
get_header();
|
||||
|
||||
$hero_intro = get_field( 'archive_intro', (int) get_queried_object_id() );
|
||||
if ( ! $hero_intro ) {
|
||||
$hero_intro = __( 'A comprehensive catalog of WordPress plugins, custom themes, and open-source contributions developed for scalable enterprise environments. Focused on modern development practices, performant architectures, and secure integrations.', 'ks-portfolio' );
|
||||
}
|
||||
?>
|
||||
<section class="archive-projects aura-bg">
|
||||
<div class="aura-bg__content">
|
||||
<div class="container mx-auto my-section">
|
||||
<header class="archive-projects__head">
|
||||
<h1 class="archive-projects__title"><?php echo esc_html__( 'Project Archive', 'ks-portfolio' ); ?></h1>
|
||||
<p class="archive-projects__intro"><?php echo esc_html( $hero_intro ); ?></p>
|
||||
</header>
|
||||
|
||||
<?php if ( have_posts() ) : ?>
|
||||
<div class="archive-projects__grid grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6">
|
||||
<?php
|
||||
while ( have_posts() ) :
|
||||
the_post();
|
||||
get_template_part( 'views/components/project-card' );
|
||||
endwhile;
|
||||
?>
|
||||
</div>
|
||||
|
||||
<div class="archive-projects__pagination">
|
||||
<?php
|
||||
the_posts_pagination(
|
||||
array(
|
||||
'mid_size' => 2,
|
||||
'prev_text' => '« ' . esc_html__( 'Previous', 'ks-portfolio' ),
|
||||
'next_text' => esc_html__( 'Next', 'ks-portfolio' ) . ' »',
|
||||
)
|
||||
);
|
||||
?>
|
||||
</div>
|
||||
<?php else : ?>
|
||||
<div class="archive-projects__empty">
|
||||
<h2 class="archive-projects__empty-title"><?php echo esc_html__( 'Nothing here yet…', 'ks-portfolio' ); ?></h2>
|
||||
<p class="archive-projects__empty-desc"><?php echo esc_html__( 'No published projects found.', 'ks-portfolio' ); ?></p>
|
||||
</div>
|
||||
<?php endif; ?>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
<?php
|
||||
get_template_part( 'views/partials/aura-bg', null, array( 'blur' => 'desktop' ) );
|
||||
get_footer();
|
||||
@@ -159,3 +159,50 @@
|
||||
.meta-row__label { color: var(--color-on-surface-variant, #c5c5d3); display: inline-flex; align-items: center; gap: 0.5rem; }
|
||||
.meta-row__value { color: var(--color-on-surface, #e3e1e9); font-weight: 600; }
|
||||
.meta-row__icon { color: var(--color-on-surface-variant, #c5c5d3); }
|
||||
|
||||
.archive-projects { padding-top: 2rem; padding-bottom: 4rem; }
|
||||
|
||||
.archive-projects__head {
|
||||
padding-left: 1rem;
|
||||
border-left: 4px solid var(--color-primary, #b6c4ff);
|
||||
margin-bottom: 2rem;
|
||||
}
|
||||
|
||||
.archive-projects__title {
|
||||
font-family: var(--font-sans);
|
||||
font-weight: 700;
|
||||
font-size: 2.25rem;
|
||||
line-height: 1.2;
|
||||
margin: 0 0 0.5rem;
|
||||
color: var(--color-on-surface, #e3e1e9);
|
||||
}
|
||||
|
||||
.archive-projects__intro {
|
||||
color: var(--color-on-surface-variant, #c5c5d3);
|
||||
font-size: 1rem;
|
||||
line-height: 1.6;
|
||||
max-width: 70ch;
|
||||
margin: 0;
|
||||
}
|
||||
|
||||
.archive-projects__empty {
|
||||
text-align: center;
|
||||
padding: 4rem 1rem;
|
||||
color: var(--color-on-surface-variant, #c5c5d3);
|
||||
}
|
||||
|
||||
.archive-projects__empty-title {
|
||||
font-weight: 700;
|
||||
font-size: 1.5rem;
|
||||
margin: 0 0 0.5rem;
|
||||
color: var(--color-on-surface, #e3e1e9);
|
||||
}
|
||||
|
||||
/* Pagination links on dark surface */
|
||||
.archive-projects__pagination a,
|
||||
.archive-projects__pagination span {
|
||||
background: var(--color-surface-container, #1e1f25);
|
||||
color: var(--color-on-surface, #e3e1e9);
|
||||
border: 1px solid var(--color-outline-variant, #444651);
|
||||
border-radius: 4px;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user