feat(theme): add [roi_post_grid] shortcode for static pages

- Create PostGridShortcodeRegistrar for WordPress shortcode registration
- Implement RenderPostGridUseCase following Clean Architecture
- Add PostGridQueryBuilder for custom WP_Query construction
- Add PostGridShortcodeRenderer for HTML/CSS generation
- Register shortcode in DIContainer with proper DI
- Add shortcode usage guide in post-grid admin panel
- Fix sidebar layout: add hide_for_logged_in check to wrapper visibility

Shortcode attributes: category, tag, author, posts_per_page, columns,
show_pagination, show_thumbnail, show_excerpt, show_meta, etc.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
FrankZamora
2025-12-06 21:33:20 -06:00
parent c23dc22d76
commit 79e91f59ee
13 changed files with 1532 additions and 2 deletions

27
test-shortcode.php Normal file
View File

@@ -0,0 +1,27 @@
<?php
/**
* Template Name: Test Post Grid Shortcode
*
* Página de prueba para el shortcode [roi_post_grid]
*/
get_header();
?>
<main class="container py-5">
<h1>Prueba de Shortcode [roi_post_grid]</h1>
<h2>Test 1: Grid básico (9 posts)</h2>
<?php echo do_shortcode('[roi_post_grid]'); ?>
<hr class="my-5">
<h2>Test 2: 6 posts en 2 columnas</h2>
<?php echo do_shortcode('[roi_post_grid posts_per_page="6" columns="2"]'); ?>
<hr class="my-5">
<h2>Test 3: 4 posts en 4 columnas sin meta</h2>
<?php echo do_shortcode('[roi_post_grid posts_per_page="4" columns="4" show_meta="false"]'); ?>
</main>
<?php get_footer(); ?>