You've already forked wp-bootstrap
Initial theme scaffolding (v0.0.1)
- Bootstrap 5 CSS/JS integration via Yarn (served locally) - Dart Sass build pipeline with PostCSS, Autoprefixer, cssnano - Twig 3.0 via Composer with PSR-4 autoloading - FSE block theme templates (index, home, single, page, archive, search, 404) - Template parts (header, footer) and block patterns - theme.json with Bootstrap 5-aligned design tokens - Gitea CI/CD workflow for automated release packages - WordPress i18n support (en_US base, de_CH translation) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
44
patterns/comments.php
Normal file
44
patterns/comments.php
Normal file
@@ -0,0 +1,44 @@
|
||||
<?php
|
||||
/**
|
||||
* Title: Comments
|
||||
* Slug: wp-bootstrap/comments
|
||||
* Categories: posts
|
||||
* Description: Comments section with form.
|
||||
*
|
||||
* @package WPBootstrap
|
||||
* @since 0.0.1
|
||||
*/
|
||||
?>
|
||||
<!-- wp:comments {"style":{"spacing":{"padding":{"top":"var:preset|spacing|60"}}}} -->
|
||||
<div class="wp-block-comments" style="padding-top:var(--wp--preset--spacing--60)">
|
||||
<!-- wp:heading {"fontSize":"large"} -->
|
||||
<h2 class="has-large-font-size"><?php esc_html_e( 'Comments', 'wp-bootstrap' ); ?></h2>
|
||||
<!-- /wp:heading -->
|
||||
<!-- wp:comment-template -->
|
||||
<!-- wp:group {"style":{"spacing":{"blockGap":"var:preset|spacing|20","padding":{"bottom":"var:preset|spacing|40"}}},"layout":{"type":"flex","flexWrap":"nowrap","verticalAlignment":"top"}} -->
|
||||
<div class="wp-block-group" style="padding-bottom:var(--wp--preset--spacing--40)">
|
||||
<!-- wp:avatar {"size":40} /-->
|
||||
<!-- wp:group {"layout":{"type":"default"}} -->
|
||||
<div class="wp-block-group">
|
||||
<!-- wp:group {"style":{"spacing":{"blockGap":"var:preset|spacing|10"}},"layout":{"type":"flex","flexWrap":"wrap"},"fontSize":"small"} -->
|
||||
<div class="wp-block-group has-small-font-size">
|
||||
<!-- wp:comment-author-name /-->
|
||||
<!-- wp:comment-date /-->
|
||||
<!-- wp:comment-edit-link /-->
|
||||
</div>
|
||||
<!-- /wp:group -->
|
||||
<!-- wp:comment-content /-->
|
||||
<!-- wp:comment-reply-link {"fontSize":"small"} /-->
|
||||
</div>
|
||||
<!-- /wp:group -->
|
||||
</div>
|
||||
<!-- /wp:group -->
|
||||
<!-- /wp:comment-template -->
|
||||
<!-- wp:comments-pagination {"layout":{"type":"flex","justifyContent":"space-between"}} -->
|
||||
<!-- wp:comments-pagination-previous /-->
|
||||
<!-- wp:comments-pagination-numbers /-->
|
||||
<!-- wp:comments-pagination-next /-->
|
||||
<!-- /wp:comments-pagination -->
|
||||
<!-- wp:post-comments-form /-->
|
||||
</div>
|
||||
<!-- /wp:comments -->
|
||||
49
patterns/footer.php
Normal file
49
patterns/footer.php
Normal file
@@ -0,0 +1,49 @@
|
||||
<?php
|
||||
/**
|
||||
* Title: Footer
|
||||
* Slug: wp-bootstrap/footer
|
||||
* Categories: footer
|
||||
* Block Types: core/template-part/footer
|
||||
* Description: Site footer with site title, tagline, and credits.
|
||||
*
|
||||
* @package WPBootstrap
|
||||
* @since 0.0.1
|
||||
*/
|
||||
?>
|
||||
<!-- wp:group {"style":{"spacing":{"padding":{"top":"var:preset|spacing|60","bottom":"var:preset|spacing|50"}}},"layout":{"type":"constrained"}} -->
|
||||
<div class="wp-block-group" style="padding-top:var(--wp--preset--spacing--60);padding-bottom:var(--wp--preset--spacing--50)">
|
||||
<!-- wp:group {"align":"wide","layout":{"type":"default"}} -->
|
||||
<div class="wp-block-group alignwide">
|
||||
<!-- wp:group {"align":"full","style":{"spacing":{"blockGap":"var:preset|spacing|20"}},"layout":{"type":"flex","flexWrap":"wrap","justifyContent":"space-between"}} -->
|
||||
<div class="wp-block-group alignfull">
|
||||
<!-- wp:site-title {"level":3} /-->
|
||||
<!-- wp:site-tagline /-->
|
||||
</div>
|
||||
<!-- /wp:group -->
|
||||
|
||||
<!-- wp:spacer {"height":"var:preset|spacing|60"} -->
|
||||
<div style="height:var(--wp--preset--spacing--60)" aria-hidden="true" class="wp-block-spacer"></div>
|
||||
<!-- /wp:spacer -->
|
||||
|
||||
<!-- wp:group {"align":"full","style":{"spacing":{"blockGap":"var:preset|spacing|20"}},"layout":{"type":"flex","flexWrap":"wrap","justifyContent":"space-between"}} -->
|
||||
<div class="wp-block-group alignfull">
|
||||
<!-- wp:paragraph {"fontSize":"small"} -->
|
||||
<p class="has-small-font-size"><?php esc_html_e( 'WP Bootstrap', 'wp-bootstrap' ); ?></p>
|
||||
<!-- /wp:paragraph -->
|
||||
<!-- wp:paragraph {"fontSize":"small"} -->
|
||||
<p class="has-small-font-size">
|
||||
<?php
|
||||
printf(
|
||||
/* translators: Powered by WordPress. %s: WordPress link. */
|
||||
esc_html__( 'Powered by %s', 'wp-bootstrap' ),
|
||||
'<a href="' . esc_url( __( 'https://wordpress.org', 'wp-bootstrap' ) ) . '" rel="nofollow">WordPress</a>'
|
||||
);
|
||||
?>
|
||||
</p>
|
||||
<!-- /wp:paragraph -->
|
||||
</div>
|
||||
<!-- /wp:group -->
|
||||
</div>
|
||||
<!-- /wp:group -->
|
||||
</div>
|
||||
<!-- /wp:group -->
|
||||
30
patterns/header.php
Normal file
30
patterns/header.php
Normal file
@@ -0,0 +1,30 @@
|
||||
<?php
|
||||
/**
|
||||
* Title: Header
|
||||
* Slug: wp-bootstrap/header
|
||||
* Categories: header
|
||||
* Block Types: core/template-part/header
|
||||
* Description: Site header with site title and navigation.
|
||||
*
|
||||
* @package WPBootstrap
|
||||
* @since 0.0.1
|
||||
*/
|
||||
?>
|
||||
<!-- wp:group {"align":"full","layout":{"type":"default"}} -->
|
||||
<div class="wp-block-group alignfull">
|
||||
<!-- wp:group {"layout":{"type":"constrained"}} -->
|
||||
<div class="wp-block-group">
|
||||
<!-- wp:group {"align":"wide","style":{"spacing":{"padding":{"top":"var:preset|spacing|30","bottom":"var:preset|spacing|30"}}},"layout":{"type":"flex","flexWrap":"nowrap","justifyContent":"space-between"}} -->
|
||||
<div class="wp-block-group alignwide" style="padding-top:var(--wp--preset--spacing--30);padding-bottom:var(--wp--preset--spacing--30)">
|
||||
<!-- wp:site-title {"level":0} /-->
|
||||
<!-- wp:group {"style":{"spacing":{"blockGap":"var:preset|spacing|10"}},"layout":{"type":"flex","flexWrap":"nowrap","justifyContent":"right"}} -->
|
||||
<div class="wp-block-group">
|
||||
<!-- wp:navigation {"overlayBackgroundColor":"base","overlayTextColor":"contrast","layout":{"type":"flex","justifyContent":"right","flexWrap":"wrap"}} /-->
|
||||
</div>
|
||||
<!-- /wp:group -->
|
||||
</div>
|
||||
<!-- /wp:group -->
|
||||
</div>
|
||||
<!-- /wp:group -->
|
||||
</div>
|
||||
<!-- /wp:group -->
|
||||
23
patterns/hidden-404.php
Normal file
23
patterns/hidden-404.php
Normal file
@@ -0,0 +1,23 @@
|
||||
<?php
|
||||
/**
|
||||
* Title: 404
|
||||
* Slug: wp-bootstrap/hidden-404
|
||||
* Inserter: no
|
||||
*
|
||||
* @package WPBootstrap
|
||||
* @since 0.0.1
|
||||
*/
|
||||
?>
|
||||
<!-- wp:group {"layout":{"type":"constrained"}} -->
|
||||
<div class="wp-block-group">
|
||||
<!-- wp:heading {"level":1,"align":"wide"} -->
|
||||
<h1 class="alignwide"><?php esc_html_e( 'Page not found', 'wp-bootstrap' ); ?></h1>
|
||||
<!-- /wp:heading -->
|
||||
|
||||
<!-- wp:paragraph -->
|
||||
<p><?php esc_html_e( 'The page you are looking for does not exist, or it has been moved. Please try searching using the form below.', 'wp-bootstrap' ); ?></p>
|
||||
<!-- /wp:paragraph -->
|
||||
|
||||
<!-- wp:pattern {"slug":"wp-bootstrap/hidden-search"} /-->
|
||||
</div>
|
||||
<!-- /wp:group -->
|
||||
13
patterns/hidden-blog-heading.php
Normal file
13
patterns/hidden-blog-heading.php
Normal file
@@ -0,0 +1,13 @@
|
||||
<?php
|
||||
/**
|
||||
* Title: Blog heading
|
||||
* Slug: wp-bootstrap/hidden-blog-heading
|
||||
* Inserter: no
|
||||
*
|
||||
* @package WPBootstrap
|
||||
* @since 0.0.1
|
||||
*/
|
||||
?>
|
||||
<!-- wp:heading {"level":1} -->
|
||||
<h1><?php esc_html_e( 'Blog', 'wp-bootstrap' ); ?></h1>
|
||||
<!-- /wp:heading -->
|
||||
11
patterns/hidden-search.php
Normal file
11
patterns/hidden-search.php
Normal file
@@ -0,0 +1,11 @@
|
||||
<?php
|
||||
/**
|
||||
* Title: Search
|
||||
* Slug: wp-bootstrap/hidden-search
|
||||
* Inserter: no
|
||||
*
|
||||
* @package WPBootstrap
|
||||
* @since 0.0.1
|
||||
*/
|
||||
?>
|
||||
<!-- wp:search {"label":"<?php esc_attr_e( 'Search', 'wp-bootstrap' ); ?>","showLabel":false,"placeholder":"<?php esc_attr_e( 'Search...', 'wp-bootstrap' ); ?>","buttonText":"<?php esc_attr_e( 'Search', 'wp-bootstrap' ); ?>"} /-->
|
||||
23
patterns/hidden-written-by.php
Normal file
23
patterns/hidden-written-by.php
Normal file
@@ -0,0 +1,23 @@
|
||||
<?php
|
||||
/**
|
||||
* Title: Written by
|
||||
* Slug: wp-bootstrap/hidden-written-by
|
||||
* Inserter: no
|
||||
*
|
||||
* @package WPBootstrap
|
||||
* @since 0.0.1
|
||||
*/
|
||||
?>
|
||||
<!-- wp:group {"style":{"spacing":{"blockGap":"var:preset|spacing|10"}},"layout":{"type":"flex","flexWrap":"wrap"},"fontSize":"small"} -->
|
||||
<div class="wp-block-group has-small-font-size">
|
||||
<!-- wp:post-date /-->
|
||||
<!-- wp:paragraph -->
|
||||
<p>·</p>
|
||||
<!-- /wp:paragraph -->
|
||||
<!-- wp:post-author-name {"isLink":true} /-->
|
||||
<!-- wp:paragraph -->
|
||||
<p>·</p>
|
||||
<!-- /wp:paragraph -->
|
||||
<!-- wp:post-terms {"term":"category"} /-->
|
||||
</div>
|
||||
<!-- /wp:group -->
|
||||
29
patterns/more-posts.php
Normal file
29
patterns/more-posts.php
Normal file
@@ -0,0 +1,29 @@
|
||||
<?php
|
||||
/**
|
||||
* Title: More posts
|
||||
* Slug: wp-bootstrap/more-posts
|
||||
* Categories: posts
|
||||
* Description: A section with more recent posts.
|
||||
*
|
||||
* @package WPBootstrap
|
||||
* @since 0.0.1
|
||||
*/
|
||||
?>
|
||||
<!-- wp:group {"style":{"spacing":{"padding":{"top":"var:preset|spacing|60","bottom":"var:preset|spacing|60"}}},"layout":{"type":"constrained"}} -->
|
||||
<div class="wp-block-group" style="padding-top:var(--wp--preset--spacing--60);padding-bottom:var(--wp--preset--spacing--60)">
|
||||
<!-- wp:heading {"fontSize":"large"} -->
|
||||
<h2 class="has-large-font-size"><?php esc_html_e( 'More posts', 'wp-bootstrap' ); ?></h2>
|
||||
<!-- /wp:heading -->
|
||||
<!-- wp:query {"query":{"perPage":3,"pages":0,"offset":0,"postType":"post","order":"desc","orderBy":"date","inherit":false},"layout":{"type":"constrained"}} -->
|
||||
<!-- wp:post-template {"layout":{"type":"grid","columnCount":3}} -->
|
||||
<!-- wp:group {"layout":{"type":"default"}} -->
|
||||
<div class="wp-block-group">
|
||||
<!-- wp:post-featured-image {"aspectRatio":"3/2","isLink":true} /-->
|
||||
<!-- wp:post-title {"level":3,"isLink":true,"fontSize":"medium"} /-->
|
||||
<!-- wp:post-date {"fontSize":"small"} /-->
|
||||
</div>
|
||||
<!-- /wp:group -->
|
||||
<!-- /wp:post-template -->
|
||||
<!-- /wp:query -->
|
||||
</div>
|
||||
<!-- /wp:group -->
|
||||
20
patterns/post-navigation.php
Normal file
20
patterns/post-navigation.php
Normal file
@@ -0,0 +1,20 @@
|
||||
<?php
|
||||
/**
|
||||
* Title: Post navigation
|
||||
* Slug: wp-bootstrap/post-navigation
|
||||
* Categories: posts
|
||||
* Description: Previous and next post links.
|
||||
*
|
||||
* @package WPBootstrap
|
||||
* @since 0.0.1
|
||||
*/
|
||||
?>
|
||||
<!-- wp:group {"style":{"spacing":{"padding":{"top":"var:preset|spacing|60","bottom":"var:preset|spacing|60"}}},"layout":{"type":"constrained"}} -->
|
||||
<div class="wp-block-group" style="padding-top:var(--wp--preset--spacing--60);padding-bottom:var(--wp--preset--spacing--60)">
|
||||
<!-- wp:separator {"className":"is-style-wide"} -->
|
||||
<hr class="wp-block-separator has-alpha-channel-opacity is-style-wide"/>
|
||||
<!-- /wp:separator -->
|
||||
<!-- wp:post-navigation-link {"type":"previous","label":"<?php esc_attr_e( 'Previous', 'wp-bootstrap' ); ?>","arrow":"arrow"} /-->
|
||||
<!-- wp:post-navigation-link {"label":"<?php esc_attr_e( 'Next', 'wp-bootstrap' ); ?>","arrow":"arrow"} /-->
|
||||
</div>
|
||||
<!-- /wp:group -->
|
||||
42
patterns/template-query-loop.php
Normal file
42
patterns/template-query-loop.php
Normal file
@@ -0,0 +1,42 @@
|
||||
<?php
|
||||
/**
|
||||
* Title: Query loop
|
||||
* Slug: wp-bootstrap/template-query-loop
|
||||
* Inserter: no
|
||||
*
|
||||
* @package WPBootstrap
|
||||
* @since 0.0.1
|
||||
*/
|
||||
?>
|
||||
<!-- wp:query {"query":{"perPage":10,"pages":0,"offset":0,"postType":"post","order":"desc","orderBy":"date","inherit":true},"align":"wide","layout":{"type":"constrained"}} -->
|
||||
<!-- wp:post-template {"layout":{"type":"default"}} -->
|
||||
<!-- wp:group {"style":{"spacing":{"padding":{"top":"var:preset|spacing|40","bottom":"var:preset|spacing|40"}}},"layout":{"type":"default"}} -->
|
||||
<div class="wp-block-group" style="padding-top:var(--wp--preset--spacing--40);padding-bottom:var(--wp--preset--spacing--40)">
|
||||
<!-- wp:post-title {"level":2,"isLink":true} /-->
|
||||
<!-- wp:group {"style":{"spacing":{"blockGap":"var:preset|spacing|10"}},"layout":{"type":"flex","flexWrap":"wrap"},"fontSize":"small"} -->
|
||||
<div class="wp-block-group has-small-font-size">
|
||||
<!-- wp:post-date /-->
|
||||
<!-- wp:paragraph -->
|
||||
<p>·</p>
|
||||
<!-- /wp:paragraph -->
|
||||
<!-- wp:post-author-name {"isLink":true} /-->
|
||||
</div>
|
||||
<!-- /wp:group -->
|
||||
<!-- wp:post-excerpt {"moreText":"<?php esc_attr_e( 'Read more', 'wp-bootstrap' ); ?>"} /-->
|
||||
</div>
|
||||
<!-- /wp:group -->
|
||||
<!-- wp:separator {"className":"is-style-wide"} -->
|
||||
<hr class="wp-block-separator has-alpha-channel-opacity is-style-wide"/>
|
||||
<!-- /wp:separator -->
|
||||
<!-- /wp:post-template -->
|
||||
<!-- wp:query-pagination {"layout":{"type":"flex","justifyContent":"space-between"}} -->
|
||||
<!-- wp:query-pagination-previous /-->
|
||||
<!-- wp:query-pagination-numbers /-->
|
||||
<!-- wp:query-pagination-next /-->
|
||||
<!-- /wp:query-pagination -->
|
||||
<!-- wp:query-no-results -->
|
||||
<!-- wp:paragraph -->
|
||||
<p><?php esc_html_e( 'No posts were found.', 'wp-bootstrap' ); ?></p>
|
||||
<!-- /wp:paragraph -->
|
||||
<!-- /wp:query-no-results -->
|
||||
<!-- /wp:query -->
|
||||
Reference in New Issue
Block a user