Browse Source

Linuep: add theme for review (#7010)

* Linuep: add theme for review

* fix templates and patterns

* compress screenshot

* add duotone filter to avatar

---------

Co-authored-by: madhusudhand <madhusudhan.dollu@gmail.com>
Matias Benedetto 2 năm trước cách đây
mục cha
commit
1068d19aaf

BIN
lineup/assets/fonts/inter-italic.woff2


BIN
lineup/assets/fonts/inter.woff2


+ 60 - 0
lineup/functions.php

@@ -0,0 +1,60 @@
+<?php
+/**
+ * Lineup functions and definitions
+ *
+ * @link https://developer.wordpress.org/themes/basics/theme-functions/
+ *
+ * @package Lineup
+ * @since Lineup 1.0
+ */
+
+
+if ( ! function_exists( 'lineup_support' ) ) :
+
+	/**
+	 * Sets up theme defaults and registers support for various WordPress features.
+	 *
+	 * @since Lineup 1.0
+	 *
+	 * @return void
+	 */
+	function lineup_support() {
+
+		// Enqueue editor styles.
+		add_editor_style( 'style.css' );
+
+		// Make theme available for translation.
+		load_theme_textdomain( 'lineup' );
+	}
+
+endif;
+
+add_action( 'after_setup_theme', 'lineup_support' );
+
+if ( ! function_exists( 'lineup_styles' ) ) :
+
+	/**
+	 * Enqueue styles.
+	 *
+	 * @since Lineup 1.0
+	 *
+	 * @return void
+	 */
+	function lineup_styles() {
+
+		// Register theme stylesheet.
+		wp_register_style(
+			'lineup-style',
+			get_stylesheet_directory_uri() . '/style.css',
+			array(),
+			wp_get_theme()->get( 'Version' )
+		);
+
+		// Enqueue theme stylesheet.
+		wp_enqueue_style( 'lineup-style' );
+
+	}
+
+endif;
+
+add_action( 'wp_enqueue_scripts', 'lineup_styles' );

+ 1 - 0
lineup/parts/footer.html

@@ -0,0 +1 @@
+<!-- wp:pattern {"slug":"lineup/footer"} /-->

+ 11 - 0
lineup/parts/header.html

@@ -0,0 +1,11 @@
+<!-- wp:group {"style":{"spacing":{"padding":{"top":"0","right":"var:preset|spacing|50","bottom":"var:preset|spacing|50","left":"var:preset|spacing|50"}}},"layout":{"type":"constrained"}} -->
+<div class="wp-block-group" style="padding-top:0;padding-right:var(--wp--preset--spacing--50);padding-bottom:var(--wp--preset--spacing--50);padding-left:var(--wp--preset--spacing--50)">
+	<!-- wp:group {"align":"full","style":{"spacing":{"blockGap":"var:preset|spacing|40"}},"layout":{"type":"flex","justifyContent":"space-between"}} -->
+	<div class="wp-block-group alignfull">
+		<!-- wp:site-title /-->
+
+		<!-- wp:navigation {"overlayBackgroundColor":"base","overlayTextColor":"contrast","layout":{"type":"flex","setCascadingProperties":true,"justifyContent":"right","orientation":"horizontal"},"style":{"spacing":{"margin":{"top":"0"},"blockGap":"var:preset|spacing|40"}}} /-->
+	</div>
+	<!-- /wp:group -->
+</div>
+<!-- /wp:group -->

+ 11 - 0
lineup/patterns/404.php

@@ -0,0 +1,11 @@
+<?php
+/**
+ * Title: A 404 page
+ * Slug: lineup/404
+ * Inserter: no
+ */
+?>
+
+<!-- wp:heading {"level":1,"anchor":"nothing-found"} -->
+<h1 class="wp-block-heading" id="nothing-found"><?php echo esc_html_x( 'Nothing found. Search?', 'lineup' ); ?></h1>
+<!-- /wp:heading -->

+ 54 - 0
lineup/patterns/comments.php

@@ -0,0 +1,54 @@
+<?php
+/**
+ * Title: Comments
+ * slug: lineup/comments
+ * inserter: no
+ */
+?>
+<!-- wp:group {"style":{"spacing":{"margin":{"top":"var:preset|spacing|70","bottom":"var:preset|spacing|70"}}},"layout":{"type":"constrained"}} -->
+<div class="wp-block-group" style="margin-top:var(--wp--preset--spacing--70);margin-bottom:var(--wp--preset--spacing--70)">
+	<!-- wp:comments {"className":"wp-block-comments-query-loop"} -->
+	<div class="wp-block-comments wp-block-comments-query-loop">
+		<!-- wp:comments-title {"level":3} /-->
+
+		<!-- wp:comment-template {"style":{"spacing":{"padding":{"top":"0px","right":"0px","bottom":"0px","left":"0px"}}}} -->
+			<!-- wp:group {"style":{"spacing":{"margin":{"top":"0","bottom":"var:preset|spacing|50"}}}} -->
+			<div class="wp-block-group" style="margin-top:0;margin-bottom:var(--wp--preset--spacing--50)">
+				<!-- wp:group {"style":{"spacing":{"blockGap":"var:preset|spacing|40"}},"layout":{"type":"flex","flexWrap":"nowrap"}} -->
+				<div class="wp-block-group">
+					<!-- wp:avatar {"size":64} /-->
+
+					<!-- wp:group -->
+					<div class="wp-block-group">
+						<!-- wp:comment-author-name /-->
+
+						<!-- wp:group {"style":{"spacing":{"margin":{"top":"0px","bottom":"0px"},"blockGap":"0.5em"}},"layout":{"type":"flex"}} -->
+						<div class="wp-block-group" style="margin-top:0px;margin-bottom:0px">
+							<!-- wp:comment-date {"format":"F j, Y \\a\\t g:i a"} /-->
+
+							<!-- wp:comment-edit-link /-->
+						</div>
+						<!-- /wp:group -->
+					</div>
+					<!-- /wp:group -->
+				</div>
+				<!-- /wp:group -->
+
+				<!-- wp:comment-content {"style":{"typography":[]},"fontSize":"small"} /-->
+
+				<!-- wp:comment-reply-link /-->
+			</div>
+			<!-- /wp:group -->
+		<!-- /wp:comment-template -->
+
+		<!-- wp:comments-pagination {"paginationArrow":"arrow","layout":{"type":"flex","justifyContent":"space-between"}} -->
+			<!-- wp:comments-pagination-previous /-->
+
+			<!-- wp:comments-pagination-next /-->
+		<!-- /wp:comments-pagination -->
+
+		<!-- wp:post-comments-form /-->
+	</div>
+	<!-- /wp:comments -->
+</div>
+<!-- /wp:group -->

+ 25 - 0
lineup/patterns/footer.php

@@ -0,0 +1,25 @@
+<?php
+/**
+ * Title: Default footer
+ * Slug: lineup/footer
+ * Categories: footer
+ * Block Types: core/template-part/footer
+ */
+?>
+
+<!-- wp:group {"style":{"spacing":{"padding":{"top":"0","bottom":"0","left":"var:preset|spacing|50","right":"var:preset|spacing|50"}}},"layout":{"type":"default"}} -->
+<div class="wp-block-group" style="padding-top:0;padding-right:var(--wp--preset--spacing--50);padding-bottom:0;padding-left:var(--wp--preset--spacing--50)">
+	<!-- wp:paragraph {"style":{"typography":{"fontSize":"1rem"}}} -->
+	<p style="font-size:1rem">
+	<?php
+		$wordpress_link = '<a href="' . esc_url( __( 'https://wordpress.org', 'lineup' ) ) . '" rel="nofollow">WordPress</a>';
+		echo sprintf(
+			/* translators: WordPress link. */
+			esc_html__( 'Designed with %1$s', 'lineup' ),
+			$wordpress_link
+		);
+		?>
+	</p>
+	<!-- /wp:paragraph -->
+</div>
+<!-- /wp:group -->

+ 10 - 0
lineup/patterns/hidden-no-results-content.php

@@ -0,0 +1,10 @@
+<?php
+/**
+ * Title: Hidden No Results Content
+ * Slug: lineup/hidden-no-results-content
+ * Inserter: no
+ */
+?>
+<!-- wp:paragraph -->
+<p><?php echo esc_html_x( 'Nothing found.', 'lineup' ); ?></p>
+<!-- /wp:paragraph -->

+ 9 - 0
lineup/patterns/search.php

@@ -0,0 +1,9 @@
+<?php
+/**
+ * Title: Search
+ * Slug: lineup/search
+ * Inserter: no
+ */
+?>
+
+<!-- wp:search {"label":"","showLabel":false,"placeholder":"<?php echo esc_html_x( 'Search...', 'This is a placeholder text in a search field', 'lineup' ); ?>","buttonText":"<?php echo esc_html_x( 'Search', 'This is what a search button says', 'lineup' ); ?>","buttonUseIcon":true} /-->

+ 38 - 0
lineup/readme.txt

@@ -0,0 +1,38 @@
+=== Lineup ===
+Contributors: Automattic
+Requires at least: 5.8
+Tested up to: 6.1.1
+Requires PHP: 5.7
+License: GPLv2 or later
+License URI: http://www.gnu.org/licenses/gpl-2.0.html
+
+== Description ==
+
+Lineup is a '90s D.I.Y. fanzine inspired theme lists entries with a bold typography and colour that are highly opinionated.
+
+== Changelog ==
+
+= 1.0 =
+* Initial release
+
+== Copyright ==
+
+Lineup WordPress Theme, (C) 2023 Automattic
+Lineup is distributed under the terms of the GNU GPL.
+Lineup is based on Block Canvas (https://github.com/Automattic/themes/tree/trunk/block-canvas), (C) Automattic, [GPLv2 or later](http://www.gnu.org/licenses/gpl-2.0.html)
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+This theme bundles the following third-party resources:
+
+Inter Font
+Licensed under SIL Open Font License, 1.10 (http://scripts.sil.org/OFL)
+Source: https://rsms.me/inter/

BIN
lineup/screenshot.png


+ 259 - 0
lineup/style.css

@@ -0,0 +1,259 @@
+/*
+Theme Name: Lineup
+Theme URI: https://wordpress.com/theme/lineup/
+Author: Automattic
+Author URI: https://automattic.com
+Description: Lineup is a fanzine inspired theme lists entries with a bold typography and colour.
+Requires at least: 5.8
+Tested up to: 6.1.1
+Requires PHP: 5.7
+Version: 1.0
+License: GNU General Public License v2 or later
+License URI: http://www.gnu.org/licenses/gpl-2.0.html
+Template: 
+Text Domain: lineup
+Tags: blog, one-column, wide-blocks, block-patterns, custom-colors, custom-logo, custom-menu, editor-style, featured-images, full-site-editing, rtl-language-support, sticky-post, threaded-comments, translation-ready
+*/
+
+/*
+ * Control the hover stylings of outline block style.
+ * Unnecessary once block styles are configurable via theme.json
+ * https://github.com/WordPress/gutenberg/issues/42794
+ */
+.wp-block-button.is-style-outline>.wp-block-button__link:not(.has-background):hover {
+	background-color: var(--wp--preset--color--secondary);
+	color: var(--wp--preset--color--base);
+	border-color: var(--wp--preset--color--secondary);
+}
+
+/**
+ * Currently table styles are only available with 'wp-block-styles' 
+ * theme support (block css) thus the following needs to be included
+ * since 'wp-block-styles' aren't used for this theme.
+ * https://github.com/WordPress/gutenberg/issues/45065
+ */
+.wp-block-table thead {
+	border-bottom: 3px solid;
+}
+.wp-block-table tfoot {
+	border-top: 3px solid;
+}
+.wp-block-table td,
+.wp-block-table th {
+	border: 1px solid;
+	padding: var(--wp--preset--spacing--30);
+	word-break: normal;
+}
+.wp-block-table figcaption {
+	font-size: var(--wp--preset--font-size--small);
+	text-align: center;
+}
+
+/*
+ * Link styles
+ * https://github.com/WordPress/gutenberg/issues/42319
+ */
+a {
+	text-decoration-thickness: .0625em !important;
+	text-underline-offset: .15em;
+}
+
+/*
+ * Form field styles
+ * https://github.com/WordPress/gutenberg/issues/42319
+ */
+::placeholder {
+	color: var(--wp--preset--color--contrast);
+	opacity: 1; /* Firefox */
+}
+
+input:not([type="submit"]):not([type="checkbox"]),
+textarea,
+.wp-block-post-comments-form input:not([type=submit]),
+.wp-block-post-comments-form textarea {
+	background-color: var(--wp--preset--color--base);
+	border-color: var(--wp--preset--color--contrast);
+	color: var(--wp--preset--color--contrast);
+}
+
+input:not([type="submit"]):not([type="checkbox"]):focus,
+textarea:focus {
+	outline-style: solid;
+	outline-color: var(--wp--preset--color--contrast);
+}
+
+/* Search button inside style */
+:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) {
+	border-color: var(--wp--preset--color--contrast);
+}
+
+.wp-block-search__button-inside .wp-block-search__inside-wrapper {
+	padding: 0px;
+}
+
+/* Reset browser default margins for blockquote element */
+.wp-block-pullquote blockquote {
+	margin: 0;
+}
+
+/* Adjust the font size of the comment reply title in the post comments form */
+.wp-block-post-comments-form .comment-reply-title {
+	font-size: var(--wp--preset--font-size--medium);
+}
+
+/* Remove the bottom margin from the submit button in the post comments form */
+.wp-block-post-comments-form .form-submit {
+	margin-bottom: 0;
+}
+
+/* The navigation is the full-width in this theme */
+.wp-block-navigation__responsive-close {
+	max-width: none;
+}
+
+/* Remove the top padding for submenu items */
+.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .wp-block-navigation__submenu-container {
+	padding-top: 0;
+}
+
+.wp-block-navigation .wp-block-navigation-item__content.wp-block-navigation-item__content:hover {
+	color: var(--wp--preset--color--secondary);
+}
+
+.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container {
+	border-color: var(--wp--preset--color--contrast);
+}
+
+/* Override the Gutenberg style to theme style */
+.wp-block-post-author__byline,
+.wp-block-post-author__bio {
+	font-size: inherit;
+}
+
+/* Round the avatar and reset the vertical alignment */
+.wp-block-post-author__avatar img {
+	vertical-align: middle;
+}
+
+/* There is no way to remove the bottom margin */
+.wp-block-query-pagination>.wp-block-query-pagination-next:last-child,
+.wp-block-query-pagination>.wp-block-query-pagination-numbers:last-child,
+.wp-block-query-pagination>.wp-block-query-pagination-previous:last-child {
+	margin-bottom: 0;
+}
+
+/* Style tag cloud outline style  */
+.wp-block-tag-cloud.is-style-outline a {
+	border-color: var(--wp--preset--color--tertiary);
+	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
+}
+
+/* Remove the default margin from author bio */
+.wp-block-post-author__bio {
+	margin: 0;
+}
+
+/* Remove the default margin from term description. */
+.wp-block-term-description p:first-child {
+	margin-top: 0;
+}
+
+.wp-block-term-description p:last-child {
+	margin-bottom: 0;
+}
+
+/* Normalise font sizes for the latest comments and latest posts widgets */
+.wp-block-latest-comments__comment-excerpt p,
+.wp-block-latest-comments__comment-date,
+.wp-block-latest-posts__post-author,
+.wp-block-latest-posts__post-date {
+	font-size: inherit;
+}
+
+/* Adjust colours in the Calendar widget */
+.wp-block-calendar table:where(:not(.has-text-color)) {
+	color: var(--wp--preset--color--contrast);
+}
+
+.wp-block-calendar table:where(:not(.has-text-color)) td, .wp-block-calendar table:where(:not(.has-text-color)) th {
+	border-color: var(--wp--preset--color--contrast);
+}
+
+:where(.wp-block-calendar table:not(.has-background) th) {
+	background-color: var(--wp--preset--color--contrast);
+	color: var(--wp--preset--color--base);
+}
+
+/* Fix border radius setting for the avatar block */
+.wp-block-avatar a,
+.wp-block-avatar img {
+	border-radius: inherit;
+	vertical-align: middle;
+}
+
+/* Fix line height for various fields */
+.wp-block-search__input,
+.wp-block-post-comments-form .comment-form input:not([type=submit]):not([type=checkbox]),
+.wp-block-post-comments-form .comment-form textarea {
+	line-height: inherit;
+}
+
+/* Needed to style input field for various Jetpack blocks */
+.wp-block-jetpack-contact-form input:not([type="submit"]):not([type="checkbox"]),
+.wp-block-jetpack-contact-form select,
+.wp-block-jetpack-contact-form textarea,
+.wp-block-jetpack-mailchimp input:not([type="submit"]):not([type="checkbox"]),
+.wp-block-jetpack-revue input:not([type="submit"]):not([type="checkbox"]) {
+	font-size: inherit;
+	line-height: inherit;
+	padding: 1rem;
+}
+
+div[id^="contact-form-"] .contact-form label {
+	font-weight: 400;
+}
+
+.wp-block-jetpack-contact-form.contact-form label span {
+	color: var(--wp--preset--color--tertiary);
+}
+
+.wp-block-jetpack-contact-form.contact-form select {
+	padding: 0.5rem;
+}
+
+div[id^="contact-form-"] h4 {
+	font-size: var(--wp--preset--font-size--medium);
+	font-weight: inherit;
+	line-height: 1.172136638;
+}
+
+div[id^="contact-form-"] .contact-form-submission {
+	margin: 0;
+	padding: 0;
+}
+
+.wp-block-jetpack-mailchimp .wp-block-jetpack-button,
+.wp-block-jetpack-mailchimp p {
+	margin-top: 0;
+	margin-bottom: 0;
+}
+
+.wp-block-jetpack-mailchimp_consent-text,
+.wp-block-jetpack-mailchimp p {
+	font-size: var(--wp--preset--font-size--small);
+}
+
+
+/*
+ * Special CSS for this theme.
+ */
+
+/* This stops the element go over multiple lines. We can't do this with the editor yet. */
+.nowrap {
+	overflow: hidden;
+	white-space: nowrap;
+}
+/* This removes the gap between each posts in the query loop block */
+.wp-block-post-template li {
+	margin: 0;
+}

+ 11 - 0
lineup/templates/404.html

@@ -0,0 +1,11 @@
+<!-- wp:template-part {"slug":"header","tagName":"header"} /-->
+
+<!-- wp:group {"tagName":"main","style":{"spacing":{"blockGap":"var:preset|spacing|50","margin":{"top":"var:preset|spacing|50","bottom":"var:preset|spacing|70"}}},"layout":{"type":"constrained"}} -->
+<main class="wp-block-group" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--70)">
+	<!-- wp:pattern {"slug":"lineup/404"} /-->
+
+	<!-- wp:pattern {"slug":"lineup/search"} /-->
+</main>
+<!-- /wp:group -->
+
+<!-- wp:template-part {"slug":"footer","tagName":"footer"} /-->

+ 49 - 0
lineup/templates/archive.html

@@ -0,0 +1,49 @@
+<!-- wp:template-part {"slug":"header","tagName":"header"} /-->
+
+<!-- wp:group {"style":{"spacing":{"padding":{"right":"var:preset|spacing|50","left":"var:preset|spacing|50"}}},"layout":{"type":"default"}} -->
+<div class="wp-block-group" style="padding-right:var(--wp--preset--spacing--50);padding-left:var(--wp--preset--spacing--50)">
+	<!-- wp:query {"query":{"perPage":10,"pages":0,"offset":0,"postType":"post","order":"desc","orderBy":"date","author":"","search":"","exclude":[],"sticky":"","inherit":true,"taxQuery":null,"parents":[]},"tagName":"main","layout":{"type":"default"}} -->
+	<main class="wp-block-query">
+		<!-- wp:query-title {"type":"archive","showPrefix":false,"fontSize":"medium"} /-->
+
+		<!-- wp:term-description {"style":{"spacing":{"margin":{"top":"var:preset|spacing|30"}}}} /-->
+
+		<!-- wp:post-template -->
+			<!-- wp:columns {"style":{"spacing":{"margin":{"top":"0px","bottom":"0px"},"blockGap":{"top":"0","left":"var:preset|spacing|40"}}}} -->
+			<div class="wp-block-columns" style="margin-top:0px;margin-bottom:0px">
+				<!-- wp:column -->
+				<div class="wp-block-column">
+					<!-- wp:post-title {"isLink":true,"className":"nowrap"} /-->
+				</div>
+				<!-- /wp:column -->
+
+				<!-- wp:column -->
+				<div class="wp-block-column">
+					<!-- wp:post-terms {"term":"category","className":"nowrap"} /-->
+				</div>
+				<!-- /wp:column -->
+
+				<!-- wp:column -->
+				<div class="wp-block-column">
+					<!-- wp:post-terms {"term":"post_tag","className":"nowrap"} /-->
+				</div>
+				<!-- /wp:column -->
+			</div>
+			<!-- /wp:columns -->
+		<!-- /wp:post-template -->
+
+		<!-- wp:group {"style":{"spacing":{"margin":{"top":"var:preset|spacing|70","bottom":"var:preset|spacing|70"}}},"layout":{"type":"default"}} -->
+		<div class="wp-block-group" style="margin-top:var(--wp--preset--spacing--70);margin-bottom:var(--wp--preset--spacing--70)">
+			<!-- wp:query-pagination {"layout":{"type":"flex","justifyContent":"space-between"}} -->
+				<!-- wp:query-pagination-previous {"label":"Previous"} /-->
+
+				<!-- wp:query-pagination-next {"label":"Next"} /-->
+			<!-- /wp:query-pagination -->
+		</div>
+		<!-- /wp:group -->
+	</main>
+	<!-- /wp:query -->
+</div>
+<!-- /wp:group -->
+
+<!-- wp:template-part {"slug":"footer","tagName":"footer"} /-->

+ 45 - 0
lineup/templates/index.html

@@ -0,0 +1,45 @@
+<!-- wp:template-part {"slug":"header","tagName":"header"} /-->
+
+<!-- wp:group {"style":{"spacing":{"padding":{"right":"var:preset|spacing|50","left":"var:preset|spacing|50"}}},"layout":{"type":"default"}} -->
+<div class="wp-block-group" style="padding-right:var(--wp--preset--spacing--50);padding-left:var(--wp--preset--spacing--50)">
+	<!-- wp:query {"query":{"perPage":10,"pages":0,"offset":0,"postType":"post","order":"desc","orderBy":"date","author":"","search":"","exclude":[],"sticky":"","inherit":true,"taxQuery":null,"parents":[]},"tagName":"main","layout":{"type":"default"}} -->
+	<main class="wp-block-query">
+		<!-- wp:post-template -->
+			<!-- wp:columns {"style":{"spacing":{"margin":{"top":"0px","bottom":"0px"},"blockGap":{"top":"0","left":"var:preset|spacing|40"}}}} -->
+			<div class="wp-block-columns" style="margin-top:0px;margin-bottom:0px">
+				<!-- wp:column -->
+				<div class="wp-block-column">
+					<!-- wp:post-title {"isLink":true,"className":"nowrap"} /-->
+				</div>
+				<!-- /wp:column -->
+
+				<!-- wp:column -->
+				<div class="wp-block-column">
+					<!-- wp:post-terms {"term":"category","className":"nowrap"} /-->
+				</div>
+				<!-- /wp:column -->
+
+				<!-- wp:column -->
+				<div class="wp-block-column">
+					<!-- wp:post-terms {"term":"post_tag","className":"nowrap"} /-->
+				</div>
+				<!-- /wp:column -->
+			</div>
+			<!-- /wp:columns -->
+		<!-- /wp:post-template -->
+
+		<!-- wp:group {"style":{"spacing":{"margin":{"top":"var:preset|spacing|70","bottom":"var:preset|spacing|70"}}},"layout":{"type":"default"}} -->
+		<div class="wp-block-group" style="margin-top:var(--wp--preset--spacing--70);margin-bottom:var(--wp--preset--spacing--70)">
+			<!-- wp:query-pagination {"layout":{"type":"flex","justifyContent":"space-between"}} -->
+				<!-- wp:query-pagination-previous {"label":"Previous"} /-->
+
+				<!-- wp:query-pagination-next {"label":"Next"} /-->
+			<!-- /wp:query-pagination -->
+		</div>
+		<!-- /wp:group -->
+	</main>
+	<!-- /wp:query -->
+</div>
+<!-- /wp:group -->
+
+<!-- wp:template-part {"slug":"footer","tagName":"footer"} /-->

+ 27 - 0
lineup/templates/page.html

@@ -0,0 +1,27 @@
+<!-- wp:template-part {"slug":"header","tagName":"header"} /-->
+
+<!-- wp:group {"tagName":"main","style":{"spacing":{"margin":{"bottom":"var:preset|spacing|70"}}},"layout":{"type":"default"}} -->
+<main class="wp-block-group" style="margin-bottom:var(--wp--preset--spacing--70)">
+	<!-- wp:group {"layout":{"type":"constrained"}} -->
+	<div class="wp-block-group">
+		<!-- wp:post-title /-->
+
+		<!-- wp:post-featured-image /-->
+	</div>
+	<!-- /wp:group -->
+
+	<!-- wp:post-content {"lock":{"move":false,"remove":false},"layout":{"type":"constrained"}} /-->
+</main>
+<!-- /wp:group -->
+
+<!-- wp:group {"style":{"spacing":{"padding":{"right":"var:preset|spacing|50","left":"var:preset|spacing|50"}}},"layout":{"type":"flex","flexWrap":"nowrap","justifyContent":"space-between"}} -->
+<div class="wp-block-group" style="padding-right:var(--wp--preset--spacing--50);padding-left:var(--wp--preset--spacing--50)">
+	<!-- wp:post-navigation-link {"type":"previous"} /-->
+
+	<!-- wp:post-navigation-link /-->
+</div>
+<!-- /wp:group -->
+
+<!-- wp:pattern {"slug":"lineup/comments"} /-->
+
+<!-- wp:template-part {"slug":"footer","tagName":"footer"} /-->

+ 55 - 0
lineup/templates/search.html

@@ -0,0 +1,55 @@
+<!-- wp:template-part {"slug":"header","tagName":"header"} /-->
+
+<!-- wp:group {"style":{"spacing":{"padding":{"right":"var:preset|spacing|50","left":"var:preset|spacing|50"}}},"layout":{"type":"default"}} -->
+<div class="wp-block-group" style="padding-right:var(--wp--preset--spacing--50);padding-left:var(--wp--preset--spacing--50)">
+	<!-- wp:pattern {"slug":"lineup/search"} /-->
+</div>
+<!-- /wp:group -->
+
+<!-- wp:group {"style":{"spacing":{"padding":{"right":"var:preset|spacing|50","left":"var:preset|spacing|50"}}},"layout":{"type":"default"}} -->
+<div class="wp-block-group" style="padding-right:var(--wp--preset--spacing--50);padding-left:var(--wp--preset--spacing--50)">
+	<!-- wp:query {"query":{"perPage":10,"pages":0,"offset":0,"postType":"post","order":"desc","orderBy":"date","author":"","search":"","exclude":[],"sticky":"","inherit":true,"taxQuery":null,"parents":[]},"tagName":"main","layout":{"type":"default"}} -->
+	<main class="wp-block-query">
+		<!-- wp:post-template -->
+			<!-- wp:columns {"style":{"spacing":{"margin":{"top":"0px","bottom":"0px"},"blockGap":{"top":"0","left":"var:preset|spacing|40"}}}} -->
+			<div class="wp-block-columns" style="margin-top:0px;margin-bottom:0px">
+				<!-- wp:column -->
+				<div class="wp-block-column">
+					<!-- wp:post-title {"isLink":true,"className":"nowrap"} /-->
+				</div>
+				<!-- /wp:column -->
+
+				<!-- wp:column -->
+				<div class="wp-block-column">
+					<!-- wp:post-terms {"term":"category","className":"nowrap"} /-->
+				</div>
+				<!-- /wp:column -->
+
+				<!-- wp:column -->
+				<div class="wp-block-column">
+					<!-- wp:post-terms {"term":"post_tag","className":"nowrap"} /-->
+				</div>
+				<!-- /wp:column -->
+			</div>
+			<!-- /wp:columns -->
+		<!-- /wp:post-template -->
+
+		<!-- wp:group {"style":{"spacing":{"margin":{"top":"var:preset|spacing|70","bottom":"var:preset|spacing|70"}}},"layout":{"type":"default"}} -->
+		<div class="wp-block-group" style="margin-top:var(--wp--preset--spacing--70);margin-bottom:var(--wp--preset--spacing--70)">
+			<!-- wp:query-pagination {"layout":{"type":"flex","justifyContent":"space-between"}} -->
+				<!-- wp:query-pagination-previous {"label":"Previous"} /-->
+
+				<!-- wp:query-pagination-next {"label":"Next"} /-->
+			<!-- /wp:query-pagination -->
+		</div>
+		<!-- /wp:group -->
+
+		<!-- wp:query-no-results -->
+			<!-- wp:pattern {"slug":"lineup/hidden-no-results-content"} /-->
+		<!-- /wp:query-no-results -->
+	</main>
+	<!-- /wp:query -->
+</div>
+<!-- /wp:group -->
+
+<!-- wp:template-part {"slug":"footer","tagName":"footer"} /-->

+ 35 - 0
lineup/templates/single.html

@@ -0,0 +1,35 @@
+<!-- wp:template-part {"slug":"header","tagName":"header"} /-->
+
+<!-- wp:group {"tagName":"main","style":{"spacing":{"margin":{"bottom":"var:preset|spacing|70"}}},"layout":{"type":"default"}} -->
+<main class="wp-block-group" style="margin-bottom:var(--wp--preset--spacing--70)">
+	<!-- wp:group {"layout":{"type":"constrained"}} -->
+	<div class="wp-block-group">
+		<!-- wp:group {"style":{"spacing":{"blockGap":"0px"}},"layout":{"type":"constrained"}} -->
+		<div class="wp-block-group">
+			<!-- wp:post-title /-->
+
+			<!-- wp:post-terms {"term":"category","style":{"spacing":{"margin":{"top":"0px","bottom":"0px"}}}} /-->
+
+			<!-- wp:post-terms {"term":"post_tag","style":{"spacing":{"margin":{"top":"0px","bottom":"0px"}}}} /-->
+		</div>
+		<!-- /wp:group -->
+
+		<!-- wp:post-featured-image /-->
+	</div>
+	<!-- /wp:group -->
+
+	<!-- wp:post-content {"lock":{"move":false,"remove":false},"layout":{"type":"constrained"}} /-->
+</main>
+<!-- /wp:group -->
+
+<!-- wp:group {"style":{"spacing":{"blockGap":"0px","padding":{"right":"var:preset|spacing|50","left":"var:preset|spacing|50"}}},"layout":{"type":"flex","flexWrap":"nowrap","justifyContent":"space-between"}} -->
+<div class="wp-block-group" style="padding-right:var(--wp--preset--spacing--50);padding-left:var(--wp--preset--spacing--50)">
+	<!-- wp:post-navigation-link {"type":"previous"} /-->
+
+	<!-- wp:post-navigation-link /-->
+</div>
+<!-- /wp:group -->
+
+<!-- wp:pattern {"slug":"lineup/comments"} /-->
+
+<!-- wp:template-part {"slug":"footer","tagName":"footer"} /-->

+ 754 - 0
lineup/theme.json

@@ -0,0 +1,754 @@
+{
+	"settings": {
+		"appearanceTools": true,
+		"color": {
+			"duotone": [
+				{
+					"colors": [
+						"#000000",
+						"#ff0000"
+					],
+					"name": "Black and red",
+					"slug": "black-and-red"
+				}
+			],
+			"palette": [
+				{
+					"color": "#000000",
+					"name": "Base",
+					"slug": "base"
+				},
+				{
+					"color": "#ff0000",
+					"name": "Contrast",
+					"slug": "contrast"
+				},
+				{
+					"color": "#ff0000",
+					"name": "Primary",
+					"slug": "primary"
+				},
+				{
+					"color": "#b20000",
+					"name": "Secondary",
+					"slug": "secondary"
+				}
+			]
+		},
+		"layout": {
+			"contentSize": "940px",
+			"wideSize": "1328px"
+		},
+		"shadow": {
+			"defaultPresets": true,
+			"presets": []
+		},
+		"spacing": {
+			"customSpacingSize": true,
+			"spacingScale": {
+				"increment": 1.5,
+				"mediumStep": 1.5,
+				"operator": "*",
+				"steps": 7,
+				"unit": "rem"
+			},
+			"spacingSizes": [
+				{
+					"name": "1",
+					"size": "0.5rem",
+					"slug": "30"
+				},
+				{
+					"name": "2",
+					"size": "1.5rem",
+					"slug": "40"
+				},
+				{
+					"name": "3",
+					"size": "clamp(2rem, 5.324vw, 3.5rem)",
+					"slug": "50"
+				},
+				{
+					"name": "4",
+					"size": "5.0rem",
+					"slug": "60"
+				},
+				{
+					"name": "5",
+					"size": "7.0rem",
+					"slug": "70"
+				},
+				{
+					"name": "6",
+					"size": "10.5rem",
+					"slug": "80"
+				}
+			],
+			"units": [
+				"%",
+				"px",
+				"em",
+				"rem",
+				"vh",
+				"vw"
+			]
+		},
+		"typography": {
+			"fluid": true,
+			"fontFamilies": [
+				{
+					"fontFace": [
+						{
+							"fontFamily": "Inter",
+							"fontStretch": "normal",
+							"fontStyle": "normal",
+							"fontWeight": "100 900",
+							"src": [
+								"file:./assets/fonts/inter.woff2"
+							]
+						},
+						{
+							"fontFamily": "Inter",
+							"fontStretch": "normal",
+							"fontStyle": "italic",
+							"fontWeight": "100 900",
+							"src": [
+								"file:./assets/fonts/inter-italic.woff2"
+							]
+						}
+					],
+					"fontFamily": "Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", sans-serif",
+					"name": "Inter",
+					"slug": "inter"
+				}
+			],
+			"fontSizes": [
+				{
+					"fluid": {
+						"max": "1.728rem",
+						"min": "1rem"
+					},
+					"name": "Small",
+					"size": "1.728rem",
+					"slug": "small"
+				},
+				{
+					"fluid": {
+						"max": "2.986rem",
+						"min": "1.44rem"
+					},
+					"name": "Medium",
+					"size": "2.986rem",
+					"slug": "medium"
+				},
+				{
+					"fluid": {
+						"max": "3.583rem",
+						"min": "2.488rem"
+					},
+					"name": "Large",
+					"size": "3.583rem",
+					"slug": "large"
+				},
+				{
+					"fluid": {
+						"max": "4.3rem",
+						"min": "2.986rem"
+					},
+					"name": "Extra Large",
+					"size": "4.3rem",
+					"slug": "x-large"
+				}
+			]
+		},
+		"useRootPaddingAwareAlignments": true
+	},
+	"styles": {
+		"blocks": {
+			"core/avatar": {
+				"filter": {
+					"duotone": "var(--wp--preset--duotone--black-and-red)"
+				}
+			},
+			"core/button": {
+				"spacing": {
+					"padding": {
+						"bottom": "18px",
+						"left": "36px",
+						"right": "36px",
+						"top": "18px"
+					}
+				},
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--small)"
+				},
+				"variations": {
+					"outline": {
+						"spacing": {
+							"padding": {
+								"bottom": "16px",
+								"left": "38px",
+								"right": "38px",
+								"top": "16px"
+							}
+						}
+					}
+				}
+			},
+			"core/buttons": {
+				"spacing": {
+					"blockGap": "var(--wp--preset--spacing--40)"
+				}
+			},
+			"core/categories": {
+				"elements": {
+					"link": {
+						":hover": {
+							"typography": {
+								"textDecoration": "underline"
+							}
+						},
+						"typography": {
+							"textDecoration": "none"
+						}
+					}
+				}
+			},
+			"core/code": {
+				"border": {
+					"color": "var(--wp--preset--color--contrast)",
+					"radius": "0.25rem",
+					"style": "solid",
+					"width": "2px"
+				},
+				"spacing": {
+					"padding": {
+						"bottom": "var(--wp--preset--spacing--40)",
+						"left": "var(--wp--preset--spacing--40)",
+						"right": "var(--wp--preset--spacing--40)",
+						"top": "var(--wp--preset--spacing--40)"
+					}
+				},
+				"typography": {
+					"fontFamily": "monospace",
+					"fontSize": "var(--wp--preset--font-size--small)",
+					"lineHeight": "1.157407407"
+				}
+			},
+			"core/comment-author-name": {
+				"elements": {
+					"link": {
+						":hover": {
+							"typography": {
+								"textDecoration": "underline"
+							}
+						},
+						"typography": {
+							"textDecoration": "none"
+						}
+					}
+				},
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--small)",
+					"lineHeight": "1.157407407"
+				}
+			},
+			"core/comment-content": {
+				"elements": {
+					"link": {
+						":hover": {
+							"typography": {
+								"textDecoration": "underline"
+							}
+						},
+						"typography": {
+							"textDecoration": "none"
+						}
+					}
+				},
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--small)",
+					"lineHeight": "1.157407407"
+				}
+			},
+			"core/comment-date": {
+				"elements": {
+					"link": {
+						":hover": {
+							"typography": {
+								"textDecoration": "underline"
+							}
+						},
+						"typography": {
+							"textDecoration": "none"
+						}
+					}
+				},
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--small)",
+					"lineHeight": "1.157407407"
+				}
+			},
+			"core/comment-edit-link": {
+				"elements": {
+					"link": {
+						":hover": {
+							"typography": {
+								"textDecoration": "underline"
+							}
+						},
+						"typography": {
+							"textDecoration": "none"
+						}
+					}
+				},
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--small)",
+					"lineHeight": "1.157407407"
+				}
+			},
+			"core/comment-reply-link": {
+				"elements": {
+					"link": {
+						":hover": {
+							"typography": {
+								"textDecoration": "underline"
+							}
+						},
+						"typography": {
+							"textDecoration": "none"
+						}
+					}
+				},
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--small)",
+					"lineHeight": "1.157407407"
+				}
+			},
+			"core/comments-pagination": {
+				"elements": {
+					"link": {
+						":hover": {
+							"typography": {
+								"textDecoration": "underline"
+							}
+						},
+						"typography": {
+							"textDecoration": "none"
+						}
+					}
+				},
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--small)",
+					"lineHeight": "1.157407407"
+				}
+			},
+			"core/comments-title": {
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--medium)"
+				}
+			},
+			"core/gallery": {
+				"spacing": {
+					"margin": {
+						"bottom": "var(--wp--preset--spacing--50)"
+					}
+				}
+			},
+			"core/image": {
+				"filter": {
+					"duotone": "var(--wp--preset--duotone--black-and-red)"
+				}
+			},
+			"core/latest-comments": {
+				"spacing": {
+					"padding": {
+						"left": "0px"
+					}
+				}
+			},
+			"core/list": {
+				"spacing": {
+					"padding": {
+						"left": "var(--wp--preset--spacing--60)"
+					}
+				}
+			},
+			"core/navigation": {
+				"elements": {
+					"link": {
+						":hover": {
+							"typography": {
+								"textDecoration": "underline"
+							}
+						},
+						"typography": {
+							"textDecoration": "none"
+						}
+					}
+				},
+				"spacing": {
+					"blockGap": "var(--wp--preset--spacing--40)"
+				}
+			},
+			"core/paragraph": {
+				"typography": {
+					"lineHeight": "calc(1em + 0.5625rem)"
+				}
+			},
+			"core/post-author": {
+				"elements": {
+					"link": {
+						":hover": {
+							"typography": {
+								"textDecoration": "underline"
+							}
+						},
+						"typography": {
+							"textDecoration": "none"
+						}
+					}
+				},
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--small)",
+					"lineHeight": "1.157407407"
+				}
+			},
+			"core/post-author-biography": {
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--small)",
+					"lineHeight": "1.157407407"
+				}
+			},
+			"core/post-author-name": {
+				"elements": {
+					"link": {
+						":hover": {
+							"typography": {
+								"textDecoration": "underline"
+							}
+						},
+						"typography": {
+							"textDecoration": "none"
+						}
+					}
+				}
+			},
+			"core/post-comments-form": {
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--small)"
+				}
+			},
+			"core/post-date": {
+				"elements": {
+					"link": {
+						":hover": {
+							"typography": {
+								"textDecoration": "underline"
+							}
+						},
+						"typography": {
+							"textDecoration": "none"
+						}
+					}
+				}
+			},
+			"core/post-featured-image": {
+				"filter": {
+					"duotone": "var(--wp--preset--duotone--black-and-red)"
+				}
+			},
+			"core/post-navigation-link": {
+				"elements": {
+					"link": {
+						":hover": {
+							"typography": {
+								"textDecoration": "underline"
+							}
+						},
+						"typography": {
+							"textDecoration": "none"
+						}
+					}
+				}
+			},
+			"core/post-terms": {
+				"elements": {
+					"link": {
+						":hover": {
+							"typography": {
+								"textDecoration": "underline"
+							}
+						},
+						"typography": {
+							"textDecoration": "none"
+						}
+					}
+				}
+			},
+			"core/post-title": {
+				"elements": {
+					"link": {
+						":hover": {
+							"typography": {
+								"textDecoration": "underline"
+							}
+						},
+						"typography": {
+							"textDecoration": "none"
+						}
+					}
+				},
+				"spacing": {
+					"margin": {
+						"bottom": "0"
+					}
+				},
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--medium)"
+				}
+			},
+			"core/pullquote": {
+				"border": {
+					"color": "var(--wp--preset--color--contrast)",
+					"style": "solid",
+					"width": "1px 0"
+				},
+				"spacing": {
+					"padding": {
+						"bottom": "var(--wp--preset--spacing--40)",
+						"left": "var(--wp--preset--spacing--40)",
+						"right": "var(--wp--preset--spacing--40)",
+						"top": "var(--wp--preset--spacing--40)"
+					}
+				},
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--small)",
+					"fontStyle": "italic"
+				}
+			},
+			"core/query-pagination": {
+				"elements": {
+					"link": {
+						":hover": {
+							"typography": {
+								"textDecoration": "underline"
+							}
+						},
+						"typography": {
+							"textDecoration": "none"
+						}
+					}
+				}
+			},
+			"core/query-title": {
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--medium)"
+				}
+			},
+			"core/quote": {
+				"border": {
+					"color": "var(--wp--preset--color--primary)",
+					"style": "solid",
+					"width": "0 0 0 1px"
+				},
+				"spacing": {
+					"padding": {
+						"left": "var(--wp--preset--spacing--50)"
+					}
+				},
+				"typography": {
+					"fontStyle": "normal"
+				}
+			},
+			"core/read-more": {
+				"elements": {
+					"link": {
+						":hover": {
+							"typography": {
+								"textDecoration": "underline"
+							}
+						},
+						"typography": {
+							"textDecoration": "none"
+						}
+					}
+				}
+			},
+			"core/search": {
+				"border": {
+					"radius": "0px"
+				},
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--small)",
+					"lineHeight": "1"
+				}
+			},
+			"core/separator": {
+				"border": {
+					"color": "currentColor",
+					"style": "solid",
+					"width": "0 0 1px 0"
+				},
+				"color": {
+					"text": "var(--wp--preset--color--contrast)"
+				}
+			},
+			"core/site-tagline": {
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--small)",
+					"lineHeight": "1.157407407"
+				}
+			},
+			"core/site-title": {
+				"color": {
+					"text": "var(--wp--preset--color--primary)"
+				},
+				"elements": {
+					"link": {
+						":hover": {
+							"typography": {
+								"textDecoration": "underline"
+							}
+						},
+						"typography": {
+							"textDecoration": "none"
+						}
+					}
+				},
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--medium)",
+					"fontStyle": "normal",
+					"fontWeight": "400"
+				}
+			},
+			"core/social-links": {
+				"spacing": {
+					"blockGap": {
+						"left": "var(--wp--preset--spacing--40)",
+						"top": "var(--wp--preset--spacing--40)"
+					}
+				}
+			}
+		},
+		"color": {
+			"background": "var(--wp--preset--color--base)",
+			"text": "var(--wp--preset--color--contrast)"
+		},
+		"elements": {
+			"button": {
+				":active": {
+					"color": {
+						"background": "var(--wp--preset--color--primary)",
+						"text": "var(--wp--preset--color--base)"
+					}
+				},
+				":focus": {
+					"color": {
+						"background": "var(--wp--preset--color--secondary)",
+						"text": "var(--wp--preset--color--base)"
+					}
+				},
+				":hover": {
+					"color": {
+						"background": "var(--wp--preset--color--secondary)",
+						"text": "var(--wp--preset--color--base)"
+					}
+				},
+				"border": {
+					"radius": "0"
+				},
+				"color": {
+					"background": "var(--wp--preset--color--primary)",
+					"text": "var(--wp--preset--color--base)"
+				},
+				"spacing": {
+					"padding": {
+						"bottom": "18px",
+						"left": "36px",
+						"right": "36px",
+						"top": "18px"
+					}
+				},
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--small)",
+					"lineHeight": "1"
+				}
+			},
+			"h1": {
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--medium)"
+				}
+			},
+			"h2": {
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--medium)"
+				}
+			},
+			"h3": {
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--medium)"
+				}
+			},
+			"h4": {
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--medium)"
+				}
+			},
+			"h5": {
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--medium)"
+				}
+			},
+			"h6": {
+				"typography": {
+					"fontSize": "var(--wp--preset--font-size--medium)"
+				}
+			},
+			"heading": {
+				"typography": {
+					"fontWeight": "400"
+				}
+			},
+			"link": {
+				":hover": {
+					"color": {
+						"text": "var(--wp--preset--color--secondary)"
+					},
+					"typography": {
+						"textDecoration": "none"
+					}
+				},
+				"color": {
+					"text": "var(--wp--preset--color--primary)"
+				}
+			}
+		},
+		"spacing": {
+			"blockGap": "var(--wp--preset--spacing--50)",
+			"padding": {
+				"bottom": "var(--wp--preset--spacing--50)",
+				"left": "var(--wp--preset--spacing--50)",
+				"right": "var(--wp--preset--spacing--50)",
+				"top": "var(--wp--preset--spacing--50)"
+			}
+		},
+		"typography": {
+			"fontFamily": "var(--wp--preset--font-family--inter)",
+			"fontSize": "var(--wp--preset--font-size--medium)",
+			"lineHeight": "1.172136638"
+		}
+	},
+	"templateParts": [
+		{
+			"area": "header",
+			"name": "header"
+		},
+		{
+			"area": "footer",
+			"name": "footer"
+		}
+	],
+	"version": 2,
+	"$schema": "https://schemas.wp.org/trunk/theme.json"
+}