Initial commit: gustavoo portfolio project

This commit is contained in:
gustavooth
2026-07-23 23:06:34 -03:00
commit 599625e2eb
61 changed files with 9771 additions and 0 deletions
@@ -0,0 +1,138 @@
<?php
/**
* Single blog post template.
*
* @package Gustavo_Portfolio
*/
get_header();
while ( have_posts() ) :
the_post();
?>
<main id="primary" class="site-main single-post-main">
<header class="entry-hero">
<div class="site-shell entry-hero__inner">
<nav class="entry-breadcrumbs" aria-label="<?php esc_attr_e( 'Navegação estrutural', 'gustavoo-portfolio' ); ?>">
<a href="<?php echo esc_url( home_url( '/' ) ); ?>"><?php esc_html_e( 'Início', 'gustavoo-portfolio' ); ?></a>
<span aria-hidden="true"></span>
<a href="<?php echo esc_url( gustavoo_portfolio_get_blog_url() ); ?>"><?php esc_html_e( 'Últimas notícias', 'gustavoo-portfolio' ); ?></a>
<?php $gustavoo_breadcrumb_categories = get_the_category(); ?>
<?php if ( ! empty( $gustavoo_breadcrumb_categories ) ) : ?>
<span aria-hidden="true"></span>
<a href="<?php echo esc_url( get_category_link( $gustavoo_breadcrumb_categories[0] ) ); ?>"><?php echo esc_html( $gustavoo_breadcrumb_categories[0]->name ); ?></a>
<?php endif; ?>
</nav>
<?php $gustavoo_categories = get_the_category(); ?>
<?php if ( ! empty( $gustavoo_categories ) ) : ?>
<a class="entry-category-badge" href="<?php echo esc_url( get_category_link( $gustavoo_categories[0] ) ); ?>"><?php echo esc_html( $gustavoo_categories[0]->name ); ?></a>
<?php endif; ?>
<?php the_title( '<h1 class="entry-hero__title">', '</h1>' ); ?>
</div>
</header>
<div class="site-shell entry-post-meta">
<div class="entry-post-meta__author">
<strong><?php echo esc_html( get_the_author() ); ?></strong>
<span aria-hidden="true">·</span>
<span><?php esc_html_e( 'Publicado em', 'gustavoo-portfolio' ); ?> <?php echo esc_html( get_the_date() ); ?></span>
<span aria-hidden="true">·</span>
<span><?php echo esc_html( gustavoo_portfolio_reading_time() ); ?></span>
</div>
<?php gustavoo_portfolio_post_share_links(); ?>
</div>
<?php if ( has_post_thumbnail() ) : ?>
<figure class="entry-featured-image">
<?php the_post_thumbnail( 'full', array( 'class' => 'entry-featured-image__image' ) ); ?>
</figure>
<?php endif; ?>
<div class="site-shell article-layout article-layout--single">
<article id="post-<?php the_ID(); ?>" <?php post_class( 'article article--single' ); ?>>
<div class="entry-content prose">
<?php the_content(); ?>
<?php
wp_link_pages(
array(
'before' => '<nav class="page-links" aria-label="' . esc_attr__( 'Páginas deste artigo', 'gustavoo-portfolio' ) . '"><span>' . esc_html__( 'Páginas:', 'gustavoo-portfolio' ) . '</span>',
'after' => '</nav>',
)
);
?>
</div>
<footer class="entry-footer">
<?php gustavoo_portfolio_entry_terms(); ?>
</footer>
<?php
$gustavoo_categories = get_the_category();
?>
<section class="post-share-panel" aria-labelledby="post-share-title">
<h2 id="post-share-title" class="post-share-panel__title"><?php esc_html_e( 'Compartilhar:', 'gustavoo-portfolio' ); ?></h2>
<?php gustavoo_portfolio_post_share_links( 'post-share-panel__links' ); ?>
</section>
<?php if ( ! empty( $gustavoo_categories ) ) : ?>
<?php
$gustavoo_related_posts = new WP_Query(
array(
'category__in' => wp_list_pluck( $gustavoo_categories, 'term_id' ),
'post__not_in' => array( get_the_ID() ),
'posts_per_page' => 3,
'ignore_sticky_posts' => true,
'orderby' => 'date',
'order' => 'DESC',
)
);
?>
<?php if ( $gustavoo_related_posts->have_posts() ) : ?>
<section class="related-posts" aria-labelledby="related-posts-title">
<div class="related-posts__heading"><span></span><h2 id="related-posts-title"><?php esc_html_e( 'Relacionadas', 'gustavoo-portfolio' ); ?></h2><span></span></div>
<div class="related-posts__grid">
<?php while ( $gustavoo_related_posts->have_posts() ) : $gustavoo_related_posts->the_post(); ?>
<article <?php post_class( 'related-post' ); ?>>
<a class="related-post__link" href="<?php the_permalink(); ?>">
<?php if ( has_post_thumbnail() ) : ?>
<?php the_post_thumbnail( 'gustavoo-post-card', array( 'class' => 'related-post__image', 'loading' => 'lazy', 'decoding' => 'async' ) ); ?>
<?php endif; ?>
<h3 class="related-post__title"><?php the_title(); ?></h3>
</a>
</article>
<?php endwhile; ?>
</div>
</section>
<?php endif; ?>
<?php wp_reset_postdata(); ?>
<?php endif; ?>
<?php $gustavoo_previous_post = get_previous_post(); ?>
<?php $gustavoo_next_post = get_next_post(); ?>
<?php if ( $gustavoo_previous_post || $gustavoo_next_post ) : ?>
<nav class="post-navigation post-navigation--editorial" aria-label="<?php esc_attr_e( 'Navegação entre artigos', 'gustavoo-portfolio' ); ?>">
<div class="nav-links">
<?php if ( $gustavoo_previous_post ) : ?>
<a class="nav-previous" href="<?php echo esc_url( get_permalink( $gustavoo_previous_post ) ); ?>"><span class="nav-subtitle">← <?php esc_html_e( 'Anterior', 'gustavoo-portfolio' ); ?></span><span class="nav-title"><?php echo esc_html( get_the_title( $gustavoo_previous_post ) ); ?></span></a>
<?php endif; ?>
<?php if ( $gustavoo_next_post ) : ?>
<a class="nav-next" href="<?php echo esc_url( get_permalink( $gustavoo_next_post ) ); ?>"><span class="nav-subtitle"><?php esc_html_e( 'Próximo', 'gustavoo-portfolio' ); ?> →</span><span class="nav-title"><?php echo esc_html( get_the_title( $gustavoo_next_post ) ); ?></span></a>
<?php endif; ?>
</div>
</nav>
<?php endif; ?>
<?php if ( comments_open() || get_comments_number() ) {
comments_template();
}
?>
</article>
<?php get_sidebar(); ?>
</div>
</main>
<?php
endwhile;
get_footer();