Compare commits

..

No commits in common. "main" and "upstream" have entirely different histories.

37 changed files with 705 additions and 226 deletions

1
.gitignore vendored
View File

@ -1 +0,0 @@
basho*.zip

View File

@ -132,7 +132,7 @@
--color-white: #fff;
/* Body */
--color-body: #f7f7f8;
--color-body: #fff;
--color-body-partial: #fff;
/* Border */
@ -149,9 +149,31 @@
--opacity-one: .8;
--opacity-two: 1;
}
/* Partial version
*/
.partial-dark-mode,
.auto-partial-dark-mode {
--color-font-two: #f7f7f5;
--color-one: #e8e8e6;
--color-two: #d9d9d8;
--color-six: #f7f7f5;
--color-eight: #e8e8e6;
--color-eleven: #e8e8e6;
--color-thirteen: #e2e2df;
--color-fourteen: #e8e8e6;
--color-white: #f7f7f5;
--color-body: #f7f7f5;
--color-border-one: #d9d9d8;
--color-border-two: #d9d9d8;
--opacity-one: .7;
--opacity-two: 1;
}
/* Dark version
*/
.dark-mode {
.dark-mode,
.is-partial-dark {
--color-font-one: #f7f7f5;
--color-font-two: #1a1b1e;
--color-font-three: #f7f7f5;
@ -174,7 +196,7 @@
--color-fourteen: #2b2d31;
--color-white: #f7f7f5;
--color-body: #1a1b1e;
--color-body-partial: #151619;
--color-body-partial: #1a1b1e;
--color-border-one: #4b4f52;
--color-border-two: #4b4f52;
--color-border-three: #5e6265;
@ -182,6 +204,103 @@
--opacity-two: .9;
}
/* Automatic dark version [duplicate dark version]
*/
@media (prefers-color-scheme:dark) {
.auto-dark-mode,
.auto-partial-dark-mode {
--color-font-one: #f7f7f5;
--color-font-two: #1a1b1e;
--color-font-three: #f7f7f5;
--color-font-four: #1a1b1e;
--color-font-five: #f7f7f5;
--color-font-six: #1a1b1e;
--color-one: #2b2d31;
--color-two: #34363a;
--color-three: #f7f7f5;
--color-four: #f7f7f5;
--color-five: #f7f7f5;
--color-six: #1a1b1e;
--color-seven: #f7f7f5;
--color-eight: #2b2d31;
--color-nine: #212225;
--color-ten: #212225;
--color-eleven: #292a2d;
--color-twelve: #2b2d31;
--color-thirteen: #34363a;
--color-fourteen: #2b2d31;
--color-white: #f7f7f5;
--color-body: #1a1b1e;
--color-body-partial: #1a1b1e;
--color-border-one: #4b4f52;
--color-border-two: #4b4f52;
--color-border-three: #5e6265;
--opacity-one: .5;
--opacity-two: .9;
}
}
body .is-partial-color:not(.is-partial-dark) {
--color-font-one: #151618;
--color-font-two: #fff;
--color-font-four: #151618;
--color-font-five: #fff;
--color-one: rgba(0, 0, 0, .07);
--color-two: rgba(0, 0, 0, .12);
--color-three: #151618;
--color-four: #fff;
--color-five: #151618;
--color-six: #151618;
--color-nine: #fff;
--color-eleven: rgba(0, 0, 0, .07);
--color-twelve: #fff;
--color-body: #fff;
--color-body-partial: var(--ghost-bg-color);
--color-border-one: rgba(0, 0, 0, .3);
--opacity-one: .8;
--opacity-two: 1;
}
.dark-mode .is-partial-color:not(.is-partial-dark) {
--color-font-three: #f7f7f5;
--color-font-four: #f7f7f5;
--color-font-five: #151618;
--color-four: #151618;
--color-six: #f7f7f5;
--color-nine: rgba(0, 0, 0, .07);
--color-twelve: rgba(0, 0, 0, .07);
--color-body: #151618;
}
@media (prefers-color-scheme:dark) {
.auto-dark-mode .is-partial-color:not(.is-partial-dark) {
--color-font-three: #f7f7f5;
--color-font-four: #f7f7f5;
--color-font-five: #151618;
--color-four: #151618;
--color-six: #f7f7f5;
--color-nine: rgba(0, 0, 0, .07);
--color-twelve: rgba(0, 0, 0, .07);
--color-body: #151618;
}
}
/* Logo for dark version
*/
@media (prefers-color-scheme:dark) {
.auto-dark-mode a.is-dark + a {
display: none;
}
}
@media (prefers-color-scheme:light) {
.auto-dark-mode a.is-dark {
display: none;
}
}
/* Hiding 'Portal' notifications
*/
iframe[title="portal-notification"] {
@ -591,7 +710,7 @@ textarea::placeholder {
*/
.global-button {
font-family: var(--font-family-three);
font-size: 1em;
font-size: 2.4rem;
font-weight: var(--font-weight-three-medium);
line-height: 1.3;
position: relative;
@ -1988,24 +2107,23 @@ textarea::placeholder {
margin-right: 2vh;
margin-bottom: 1.4vh;
border-radius: 100px;
background-color: var(--color-body-partial);
background-color: var(--color-twelve);
}
.subscribe-form button {
flex: 1 0 auto;
}
.subscribe-form input:not([hidden]) {
font-size: 1em;
.subscribe-form input {
font-size: 2.2rem;
display: block;
flex: 1 1 auto;
box-sizing: border-box;
max-width: 80%;
max-width: 265px;
padding: 0 30px;
transition: margin-right .25s ease;
word-break: normal;
border-radius: 100px;
background: var(--color-body-partial);
}
.subscribe-form input:focus {
@ -3154,7 +3272,7 @@ textarea::placeholder {
}
.kg-card.kg-product-card :is(.kg-product-card-container > div , .kg-product-card-container > div a) {
color: var(--color-font-one);
color: var(--color-font-black);
}
/* NFT
@ -3328,7 +3446,7 @@ textarea::placeholder {
.post-content .kg-file-card .kg-file-card-container:hover,
.post-content .kg-bookmark-card .kg-bookmark-container:hover {
border-color: var(--color-border-three) !important;
border-color: var(--color-border-three);
}
.post-content img,
@ -4416,7 +4534,6 @@ textarea::placeholder {
}
.footer-nav a:hover,
.footer-description a:hover,
.footer-copyright a:hover {
text-decoration: underline;
text-decoration-thickness: 1px;
@ -4490,7 +4607,6 @@ textarea::placeholder {
*/
.footer-description {
font-size: 2rem;
padding-right: 1em;
font-weight: var(--font-weight-three-medium);
line-height: 1.4;
max-width: 400px;
@ -4543,6 +4659,7 @@ textarea::placeholder {
.footer-copyright {
font-size: 1.4rem;
width: 100%;
margin-top: 6vh;
}
/* RWD Footer
@ -5648,131 +5765,3 @@ textarea::placeholder {
}
}
.header-nav .theme-toggle {
cursor: pointer;
width: 24px;
height: 24px;
display: inline-block;
}
.header-nav .theme-toggle.is-desktop {
margin-left: 0.8vw;
}
.header-nav .theme-toggle svg {
color: var(--color-font-one);
fill: none;
}
.header-nav .theme-toggle.is-mobile,
html:not(.light-dark-mode) .header-nav .theme-toggle,
html.dark-mode .header-nav .theme-toggle .if-is-light,
html:not(.dark-mode) .header-nav .theme-toggle .if-is-dark {
display: none;
}
@media (min-width: 1025px) {
.header-nav .theme-toggle:hover svg {
fill: var(--color-font-one);
}
}
@media (max-width: 1024px) {
.light-dark-mode .header-logo {
flex-basis: 60%;
}
.light-dark-mode .header-nav {
flex-basis: 40%;
}
.header-nav .theme-toggle.is-mobile {
display: block;
position: absolute;
top: 9px;
right: 84px;
}
.header-nav .theme-toggle.is-desktop {
display: none;
}
}
.post-header-container {
border-bottom: var(--border) var(--color-border-one);
padding-bottom: 4vh;
margin-bottom: 8vh;
}
.post-header-container .post-header-content,
.post-header-container .post-header-image {
margin: auto;
}
.post-content .kg-callout-card.kg-callout-card-white,
.post-content .kg-product-card .kg-product-card-container,
.post-content .kg-bookmark-card .kg-bookmark-container,
.post-content .kg-file-card .kg-file-card-container,
.post-content .kg-cta-card.kg-cta-bg-white,
.post-content table {
background-color: var(--color-body-partial) !important;
border: 1px solid var(--color-border-one) !important;
color: var(--color-font-one) !important;
box-shadow: none !important;
}
.kg-file-card-container,
.kg-file-card .kg-file-card-icon {
min-height: auto !important;
}
.kg-file-card .kg-file-card-icon svg {
color: var(--color-font-one);
}
.kg-file-card .kg-file-card-icon::before {
display: none;
}
.kg-cta-sponsor-label span:not(a span) {
color: var(--color-font-three) !important;
}
.kg-cta-sponsor-label-wrapper {
border-bottom: 1px solid var(--color-border-one) !important;
}
.kg-button-card .kg-btn,
.kg-product-card-button {
padding: 8px 12px !important;
height: auto !important;
text-align: center;
line-height: 1.2 !important;
justify-content: center;
display: inline;
width: 100%;
}
.cols {
display: flex;
gap: 1.2em;
margin-block-end: 30px;
}
.cols:last-child {
margin-block-end: calc(5vh + 30px);
}
@media screen and (min-width: 660px) {
.cols .kg-card {
margin: auto !important;
}
.cols .kg-button-card {
margin: 0 !important;
}
.cols .kg-btn {
height: 100% !important;
}
.cols .kg-product-card-container {
display: flex;
flex-direction: column;
align-items: start;
gap: 16px;
}
.cols .kg-product-card-description {
margin-bottom: 12px;
}
.cols .kg-product-card-button {
margin-top: auto !important;
}
}
@media screen and (max-width: 660px) {
.cols {
flex-direction: column;
}
}

File diff suppressed because one or more lines are too long

View File

@ -60,5 +60,3 @@ reframe('.post-content iframe:not(.reframe-off)');
/* Custom settings for disqusLazy */
!function(){document.querySelector(".disqus-lazy") && disqusLazy()}();
document.querySelectorAll(".kg-product-card a").forEach($a=>{$a.setAttribute("target","");$a.setAttribute("rel","")});

View File

@ -1,6 +1,6 @@
{{!< default}}
{{#author}}
<div class="archive-section{{#if profile_image}} is-image{{/if}}">
<div class="archive-section{{#if profile_image}} is-image{{/if}}{{>partial_mode}}">
{{#if profile_image}}
<div class="archive-image global-image">
{{>images/other_image other_image=profile_image alt=name}}

140
custom-account.hbs Normal file
View File

@ -0,0 +1,140 @@
{{!< default}}
{{#post}}
{{#if @member.paid}}
<div class="account-section{{>partial_mode}}">
<div class="account-header archive-section is-image">
<div class="account-image archive-image global-image">
{{>icons/site/user}}
{{#if @member.avatar_image}}
<img src="{{@member.avatar_image}}">
{{/if}}
</div>
<h1 class="archive-title global-title">{{#if @member.name}}{{@member.name}}{{else}}{{t "Your account"}}{{/if}}</h1>
<p class="archive-excerpt global-excerpt">
{{#if custom_excerpt}}
{{custom_excerpt}}
{{else}}
{{t "Nice, youre a paying subscriber! Youve an active account with access to all posts."}}
{{/if}}
</p>
{{#foreach @member.subscriptions}}
<div class="account-details">
<div class="account-details-wrap global-radius">
<h2 class="account-details-title">{{t "Account details"}}</h2>
<div class="account-details-content">
<div class="account-detail-column">
<div>
<label class="account-detail-heading">{{t "Email address"}}</label>
<span class="account-detail-content">{{@member.email}}</span>
</div>
<div>
<label class="account-detail-heading">{{t "Your plan"}}</label>
<span class="account-detail-content">{{tier.name}}{{price plan}}/{{plan.interval}}</span>
</div>
</div>
<div class="account-detail-column">
<div>
<label class="account-detail-heading">{{t "Card"}}</label>
<span class="account-detail-content">**** **** **** {{default_payment_card_last4}}</span>
</div>
<div>
<label class="account-detail-heading">
{{#if cancel_at_period_end}}
{{t "Expires"}}
{{else}}
{{t "Next bill date"}}
{{/if}}
</label>
<span class="account-detail-content">{{date current_period_end format="DD MMM YYYY"}}</span>
</div>
</div>
{{#if cancel_at_period_end}}
<small class="account-alert-expired">
{{t "Your subscription will expire on"}}{{date current_period_end format="DD MMMM YYYY"}}. {{t "If you change your mind in the meantime you can turn auto-renew back on to continue your subscription."}}
</small>
{{/if}}
<div class="account-signout-wrap">
<span class="account-signout global-button" data-members-signout>{{t "Sign out"}}</span>
</div>
</div>
</div>
<div class="account-buttons">
<a href="javascript:" class="account-button" data-portal="account">{{t "Account settings"}}</a>
{{cancel_link class="account-button" errorClass="cancel-error global-alert" cancelLabel=(t "Cancel subscription") continueLabel=(t "Continue subscription")}}
<a href="javascript:" class="account-button-billing" data-members-edit-billing>
{{t "Edit billing info"}} <span>&rarr;</span>
</a>
</div>
</div>
{{/foreach}}
</div>
</div>
{{#get "posts" limit="6" filter="visibility:[members,paid,tiers]+feature_image:-null" include="authors" as |special_posts|}}
{{#if special_posts}}
{{>related label=(t "The latest posts {start-bold}only for subscribers{end-bold}" start-bold="<span>" end-bold="</span>")}}
{{/if}}
{{/get}}
{{else if @member}}
<div class="account-section{{>partial_mode}}">
<div class="account-header archive-section is-image">
<div class="account-image archive-image global-image">
{{>icons/site/user}}
{{#if @member.avatar_image}}
<img src="{{@member.avatar_image}}">
{{/if}}
</div>
<h1 class="archive-title global-title">{{#if @member.name}}{{@member.name}}{{else}}{{t "Your account"}}{{/if}}</h1>
<p class="archive-excerpt global-excerpt">
{{#if custom_excerpt}}
{{custom_excerpt}}
{{else}}
{{#if @site.paid_members_enabled}}
{{t "Currently, youre not a paying subscriber. Youve an active account with access to posts for subscribers only."}}
{{else}}
{{t "Youve an active account with access to posts for subscribers."}}
{{/if}}
{{/if}}
</p>
<div class="account-details">
<div class="account-details-wrap global-radius">
<h2 class="account-details-title">{{t "Account details"}}</h2>
<div class="account-details-content">
<div class="account-detail-column">
<div>
<label class="account-detail-heading">{{t "Email address"}}</label>
<span class="account-detail-content">{{@member.email}}</span>
</div>
</div>
{{#if @site.paid_members_enabled}}
<div class="account-detail-column">
<div>
<label class="account-detail-heading">{{t "Your plan"}}</label>
<span class="account-detail-content">{{t "Free"}}</span>
</div>
</div>
{{/if}}
<div class="account-signout-wrap">
<span class="account-signout global-button" data-members-signout>{{t "Sign out"}}</span>
</div>
</div>
</div>
<div class="account-buttons">
<a href="javascript:" class="account-button" data-portal="account">{{t "Account settings"}}</a>
</div>
</div>
</div>
</div>
{{#if @site.paid_members_enabled}}
{{>members/tiers}}
{{/if}}
{{#get "posts" limit="6" filter="visibility:[members,paid,tiers]+feature_image:-null" include="authors" as |special_posts|}}
{{#if special_posts}}
{{>related label=(t "The latest posts {start-bold}only for subscribers{end-bold}" start-bold="<span>" end-bold="</span>")}}
{{/if}}
{{/get}}
{{else}}
{{#contentFor "script_js"}}
<script>window.addEventListener("load",function(){window.location='{{@site.url}}'})</script>
{{/contentFor}}
{{/if}}
{{/post}}

43
custom-authors.hbs Normal file
View File

@ -0,0 +1,43 @@
{{!< default}}
{{#post}}
<div class="archive-section{{>partial_mode}}">
<h1 class="global-title">{{title}}</h1>
{{#if custom_excerpt}}
<p class="archive-excerpt global-excerpt">{{custom_excerpt}}</p>
{{/if}}
</div>
<div class="custom-archive loop-section global-padding">
<div class="global-subtitle">
<small class="global-subtitle-title">
{{{t "Meet our {start-bold}authors{end-bold}" start-bold="<span>" end-bold="</span>"}}}
</small>
</div>
{{#get "authors" limit="all" include="count.posts" order="count.posts desc" as |authors|}}
{{#if authors}}
<div class="loop-wrap is-authors">
{{#foreach authors}}
{{#if count.posts}}
<div class="item is-loop">
{{#if profile_image}}
<div class="item-image global-image global-image-orientation global-radius">
<a href="{{url}}" class="global-link" aria-label="{{name}}"></a>
{{>images/archive_image archive_image=profile_image}}
</div>
{{/if}}
<div class="item-content">
<h2 class="item-title"><a href="{{url}}">{{name}}</a></h2>
<small>{{#if location}}{{t "from"}} {{location}}{{/if}}{{plural count.posts empty=(t "No posts") singular=(t "1 post") plural=(t "% posts")}}</small>
{{#if bio}}
<p class="item-excerpt">
{{bio}}
</p>
{{/if}}
</div>
</div>
{{/if}}
{{/foreach}}
</div>
{{/if}}
{{/get}}
</div>
{{/post}}

25
custom-contact.hbs Normal file
View File

@ -0,0 +1,25 @@
{{!< default-custom}}
{{#post}}
<div class="custom-wrap{{>partial_mode}}">
{{#if feature_image}}
<div class="custom-image global-bg-image" style="background-image: url({{{img_url feature_image size="l" format="webp"}}})"></div>
{{/if}}
<div class="custom-container">
<div class="custom-logo-wrap">
<div class="custom-logo">
{{>logo}}
</div>
</div>
<div class="custom-content">
<form method="POST" action="{{@custom.contact_form_endpoint}}">
<h1 class="custom-title global-title">{{title}}</h1>
<input type="text" name="name" placeholder="{{t "Your name"}}" aria-label="{{t "Your name"}}" required>
<input type="email" name="email" placeholder="{{t "Your email address"}}" aria-label="{{t "Your email address"}}" required>
<label for="message">{{t "Your message"}}</label>
<textarea id="message" name="message" required></textarea>
<button class="global-button" type="submit">{{t "Send message"}}</button>
</form>
</div>
</div>
</div>
{{/post}}

21
custom-membership.hbs Normal file
View File

@ -0,0 +1,21 @@
{{!< default}}
{{#post}}
<div class="post-section">
{{>post_header membership_page=true}}
</div>
{{#if html}}
<div class="faq-section global-padding">
<div class="faq-wrap">
<h2 class="faq-title">{{t "FAQs"}}</h2>
<div class="faq-content">
{{content}}
</div>
</div>
</div>
{{/if}}
{{#get "posts" limit="6" filter="visibility:[members,paid,tiers]+feature_image:-null" include="authors" as |special_posts|}}
{{#if special_posts}}
{{>related label=(t "The latest posts {start-bold}only for subscribers{end-bold}" start-bold="<span>" end-bold="</span>")}}
{{/if}}
{{/get}}
{{/post}}

4
custom-post-center.hbs Normal file
View File

@ -0,0 +1,4 @@
{{!< default}}
{{#post}}
{{>post_content post_center=true}}
{{/post}}

4
custom-post-classic.hbs Normal file
View File

@ -0,0 +1,4 @@
{{!< default}}
{{#post}}
{{>post_content post_classic=true}}
{{/post}}

32
custom-sign-in.hbs Normal file
View File

@ -0,0 +1,32 @@
{{!< default-custom}}
{{#post}}
<div class="custom-wrap{{>partial_mode}}">
{{#if feature_image}}
<div class="custom-image global-bg-image" style="background-image: url({{{img_url feature_image size="l" format="webp"}}})"></div>
{{/if}}
<div class="custom-container">
<div class="custom-logo-wrap">
<div class="custom-logo">
{{>logo}}
</div>
</div>
<div class="custom-content">
<form data-members-form="signin" data-members-autoredirect="false">
<h1 class="custom-title global-title">{{title}}</h1>
<input data-members-email type="email" placeholder="{{t "Your email address"}}" aria-label="{{t "Your email address"}}" required>
<button class="global-button" type="submit">{{t "Send login link"}}</button>
<div>
<small class="alert-loading global-alert">{{t "Processing your application"}}</small>
<small class="alert-error global-alert">{{t "There was an error sending the email"}}</small>
</div>
<small class="global-question">{{t "Dont have an account yet?"}} <a href="{{@site.url}}/signup/">{{t "Sign up"}}</a></small>
</form>
<div class="alert-success">
<h2 class="custom-alert-title">{{t "Great!"}}</h2>
<p>{{t "Please check your inbox and click the link to complete signin."}}</p>
<a href="{{@site.url}}" class="global-button">{{t "Back to homepage"}}</a>
</div>
</div>
</div>
</div>
{{/post}}

35
custom-sign-up.hbs Normal file
View File

@ -0,0 +1,35 @@
{{!< default-custom}}
{{#post}}
<div class="custom-wrap{{>partial_mode}}">
{{#if feature_image}}
<div class="custom-image global-bg-image" style="background-image: url({{{img_url feature_image size="l" format="webp"}}})"></div>
{{/if}}
<div class="custom-container">
<div class="custom-logo-wrap">
<div class="custom-logo">
{{>logo}}
</div>
</div>
<div class="custom-content">
<form data-members-form="signup" data-members-autoredirect="false">
<h1 class="custom-title global-title">{{title}}</h1>
{{#if @site.portal_name}}
<input data-members-name type="text" placeholder="{{t "Your name"}}" aria-label="{{t "Your name"}}" required>
{{/if}}
<input data-members-email type="email" placeholder="{{t "Your email address"}}" aria-label="{{t "Your email address"}}" required>
<button class="global-button" type="submit">{{t "Continue"}}</button>
<div>
<small class="alert-loading global-alert">{{t "Processing your application"}}</small>
<small class="alert-error global-alert">{{t "There was an error sending the email"}}</small>
</div>
<small class="global-question">{{t "Already have an account?"}} <a href="{{@site.url}}/signin/">{{t "Sign in"}}</a></small>
</form>
<div class="alert-success">
<h2 class="custom-alert-title">{{t "Great!"}}</h2>
<p>{{t "Please check your inbox and click the link to confirm your signup."}}</p>
<a href="{{@site.url}}" class="global-button">{{t "Back to homepage"}}</a>
</div>
</div>
</div>
</div>
{{/post}}

34
custom-subscribe.hbs Normal file
View File

@ -0,0 +1,34 @@
{{!< default-custom}}
{{#post}}
<div class="custom-wrap{{>partial_mode}}">
{{#if feature_image}}
<div class="custom-image global-bg-image" style="background-image: url({{{img_url feature_image size="l" format="webp"}}})"></div>
{{/if}}
<div class="custom-container">
<div class="custom-logo-wrap">
<div class="custom-logo">
{{>logo}}
</div>
</div>
<div class="custom-content">
<form data-members-form="subscribe" data-members-autoredirect="false">
<h1 class="custom-title global-title">{{title}}</h1>
{{#if @site.portal_name}}
<input data-members-name type="text" placeholder="{{t "Your name"}}" aria-label="{{t "Your name"}}" required>
{{/if}}
<input data-members-email type="email" placeholder="{{t "Your email address"}}" aria-label="{{t "Your email address"}}" required>
<button class="global-button" type="submit">{{t "Subscribe"}}</button>
<div>
<small class="alert-loading global-alert">{{t "Processing your application"}}</small>
<small class="alert-error global-alert">{{t "There was an error sending the email"}}</small>
</div>
</form>
<div class="alert-success">
<h2 class="custom-alert-title">{{t "Great!"}}</h2>
<p>{{t "Please check your inbox and click the link to confirm your subscription."}}</p>
<a href="{{@site.url}}" class="global-button">{{t "Back to homepage"}}</a>
</div>
</div>
</div>
</div>
{{/post}}

43
custom-tags.hbs Normal file
View File

@ -0,0 +1,43 @@
{{!< default}}
{{#post}}
<div class="archive-section{{>partial_mode}}">
<h1 class="global-title">{{title}}</h1>
{{#if custom_excerpt}}
<p class="archive-excerpt global-excerpt">{{custom_excerpt}}</p>
{{/if}}
</div>
<div class="custom-archive loop-section global-padding">
<div class="global-subtitle">
<small class="global-subtitle-title">
{{{t "Explore our {start-bold}tags{end-bold}" start-bold="<span>" end-bold="</span>"}}}
</small>
</div>
{{#get "tags" limit="all" filter="visibility:public" include="count.posts" order="count.posts desc" as |tags|}}
{{#if tags}}
<div class="loop-wrap is-tags">
{{#foreach tags}}
{{#if count.posts}}
<div class="item is-loop">
{{#if feature_image}}
<div class="item-image is-landscape global-image global-image-orientation global-radius">
<a href="{{url}}" class="global-link" aria-label="{{name}}"></a>
{{>images/archive_image archive_image=feature_image}}
</div>
{{/if}}
<div class="item-content">
<h2 class="item-title"><a href="{{url}}">{{name}}</a></h2>
<small>{{plural count.posts empty=(t "No posts") singular=(t "1 post") plural=(t "% posts")}}</small>
{{#if description}}
<p class="item-excerpt">
{{description}}
</p>
{{/if}}
</div>
</div>
{{/if}}
{{/foreach}}
</div>
{{/if}}
{{/get}}
</div>
{{/post}}

21
default-custom.hbs Normal file
View File

@ -0,0 +1,21 @@
<!DOCTYPE html>
<html lang="{{@site.locale}}"{{#match @custom.color_scheme "Dark"}} class="dark-mode"{{else match @custom.color_scheme "Auto: Light/Dark"}} class="auto-dark-mode"{{else match @custom.color_scheme "Partial Dark"}} class="partial-dark-mode"{{else match @custom.color_scheme "Auto: Partial Dark/Dark"}} class="auto-partial-dark-mode"{{/match}}>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>{{@site.title}}{{meta_title}}</title>
<meta name="HandheldFriendly" content="True">
<meta name="viewport" content="width=device-width, initial-scale=1">
{{>services/google_fonts}}
<link rel="stylesheet" type="text/css" href="{{asset "css/screen.css"}}">
{{{block "fonts_css"}}}
{{ghost_head}}
{{#if @custom.global_background_color_in_hex_string}}
<style>:root {--ghost-bg-color: {{@custom.global_background_color_in_hex_string}};}</style>
{{/if}}
</head>
<body class="{{body_class}} custom-page{{#if @custom.accent_color_buttons}} global-accent-color-buttons{{/if}}">
{{{body}}}
{{ghost_foot}}
</body>
</html>

View File

@ -1,17 +1,20 @@
<!DOCTYPE html>
<html lang="{{@site.locale}}"{{#match @custom.color_scheme "Dark"}} class="dark-mode"{{else match @custom.color_scheme "Light/Dark"}} class="light-dark-mode"{{/match}}>
<html lang="{{@site.locale}}"{{#match @custom.color_scheme "Dark"}} class="dark-mode"{{else match @custom.color_scheme "Auto: Light/Dark"}} class="auto-dark-mode"{{else match @custom.color_scheme "Partial Dark"}} class="partial-dark-mode"{{else match @custom.color_scheme "Auto: Partial Dark/Dark"}} class="auto-partial-dark-mode"{{/match}}>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>{{#is "home"}}{{else}}{{meta_title page=(t "meta-page")}} - {{/is}}{{@site.title}}</title>
<title>{{meta_title page=(t "meta-page")}}</title>
<meta name="HandheldFriendly" content="True">
<meta name="viewport" content="width=device-width, initial-scale=1">
{{>services/google_fonts}}
<link rel="stylesheet" type="text/css" href="{{asset "css/screen.css"}}">
{{{block "fonts_css"}}}
{{ghost_head}}
{{#if @custom.global_background_color_in_hex_string}}
<style>:root {--ghost-bg-color: {{@custom.global_background_color_in_hex_string}};}</style>
{{/if}}
</head>
<body class="{{body_class}} global-accent-color-buttons">
<body class="{{body_class}}{{#if @custom.accent_color_buttons}} global-accent-color-buttons{{/if}}">
<div class="global-wrap">
<div class="global-content">
{{>header}}

View File

@ -1,5 +1,5 @@
{{!< default}}
<div class="custom-error custom-wrap">
<div class="custom-error custom-wrap{{>partial_mode}}">
<div class="custom-container">
<div class="custom-error-content custom-content">
<h1>{{statusCode}}</h1>

View File

@ -1,7 +1,7 @@
{
"name": "basho",
"demo": "https://basho.fueko.net",
"version": "2.6.3+2508",
"version": "2.6.3",
"docs": "https://fueko.net/docs/basho/",
"author": {
"name": "fueko",
@ -11,9 +11,6 @@
"keywords": [
"ghost-theme"
],
"scripts": {
"build": "rm -f basho.zip && zip -r basho.zip * -x '*.git*' 'documentation*'"
},
"config": {
"posts_per_page": 6,
"card_assets": true,
@ -34,30 +31,85 @@
"custom": {
"color_scheme": {
"type": "select",
"options": ["Light/Dark", "Light", "Dark" ],
"default": "Light/Dark"
"options": ["Light", "Dark", "Partial Dark", "Auto: Light/Dark", "Auto: Partial Dark/Dark" ],
"default": "Light"
},
"logo_for_dark_color_scheme": {
"type": "image",
"visibility": "color_scheme:[Dark,'Partial Dark','Auto: Light/Dark','Auto: Partial Dark/Dark']"
},
"global_background_color_in_hex_string": {
"type": "text"
},
"fonts": {
"type": "select",
"options": ["System fonts", "Archivo + System fonts", "Bona Nova + Inter", "EB Garamond + Inter", "Inter", "Lato", "Lora + System fonts", "Nunito", "Oswald + Roboto", "Playfair + System fonts", "Poppins + Inter", "Raleway + System fonts", "Roboto", "Space Grotesk + Inter", "Sora + Inter", "Syne + Inter", "Work Sans + Inter"],
"default": "Inter"
},
"feature_image_shape": {
"show_author": {
"type": "boolean",
"default": true,
"description": "Set to false if you dont want to display the author in the feed or on the post page"
},
"accent_color_buttons": {
"type": "boolean",
"default": true
},
"feed_images_orientation": {
"type": "select",
"options": ["Portrait", "Landscape", "Square", "Natural"],
"default": "Portrait"
},
"secondary_navigation_title": {
"special_section_images_orientation": {
"type": "select",
"options": ["Portrait", "Landscape", "Square", "Natural"],
"default": "Portrait"
},
"content_api_key_for_search": {
"type": "text"
},
"site_description": {
"contact_form_endpoint": {
"type": "text"
},
"footer_copyright": {
"type": "text"
},
"content_api_key": {
"type": "text"
"hero_title_size_and_subscription_form_or_button": {
"type": "select",
"options": ["Large", "Medium", "Small", "Large + Subscription form", "Medium + Subscription form", "Small + Subscription form", "Large + Subscription button", "Medium + Subscription button", "Small + Subscription button"],
"default": "Large",
"group": "homepage"
},
"hero_title_text": {
"type": "text",
"group": "homepage"
},
"slider_size": {
"type": "select",
"options": ["Large", "Small"],
"default": "Small",
"group": "homepage"
},
"slider_images_orientation": {
"type": "select",
"options": ["Portrait", "Landscape", "Square", "Natural"],
"default": "Portrait",
"group": "homepage"
},
"tags_for_special_section": {
"type": "text",
"group": "homepage",
"description": "Provide the tag (or tags) slug you want to display in the section below the 'Load more' button"
},
"feature_image_orientation": {
"type": "select",
"options": ["Portrait", "Landscape", "Square", "Natural"],
"default": "Portrait",
"group": "post"
},
"disqus_shortname": {
"type": "text",
"group": "post"
}
}
}

View File

@ -1,4 +1,4 @@
<footer class="footer-section global-footer">
<footer class="footer-section global-footer{{>partial_mode}}">
<div class="footer-wrap global-padding">
{{>members/subscribe_form}}
<div class="footer-container">
@ -6,13 +6,9 @@
<div class="footer-logo">
{{>logo}}
</div>
{{#if @custom.site_description}}
<p class="footer-description">{{{@custom.site_description}}}</p>
{{else}}
{{#if @site.description}}
<p class="footer-description">{{@site.description}}</p>
{{/if}}
{{/if}}
</div>
<div class="footer-nav">
<div class="footer-nav-column is-social">
@ -28,7 +24,6 @@
</ul>
</div>
{{#if @site.secondary_navigation}}
{{#if @custom.secondary_navigation_title}}{{/if}}
{{navigation type="secondary"}}
{{/if}}
</div>

View File

@ -1,11 +1,7 @@
<header class="header-section">
<header class="header-section{{>partial_mode}}">
<div class="header-wrap global-padding">
<div class="header-logo">{{>logo}}</div>
<div class="header-nav is-button-accent-color">
<span role="button" class="theme-toggle is-mobile">
<span class="if-is-dark">{{>icons/site/sun}}</span>
<span class="if-is-light">{{>icons/site/moon}}</span>
</span>
<div class="header-nav{{#if @custom.accent_color_buttons}} is-button-accent-color{{/if}}">
{{>search is_mobile=true}}
<input id="toggle" class="header-checkbox" type="checkbox">
<label class="header-toggle" for="toggle">

View File

@ -1,7 +1,7 @@
<div class="hero-section{{#get "posts" limit="1" filter="featured:true+feature_image:-null" as |slider|}}{{^if slider}} no-slider{{/if}}{{/get}}">
<div class="hero-section{{#get "posts" limit="1" filter="featured:true+feature_image:-null" as |slider|}}{{^if slider}} no-slider{{/if}}{{/get}}{{>partial_mode}}">
<div class="hero-wrap">
<div class="hero-content global-padding">
{{!-- <h1 class="hero-title{{#match @custom.hero_title_size_and_subscription_form_or_button "Medium"}} hero-title-medium{{else match @custom.hero_title_size_and_subscription_form_or_button "Small"}} global-title hero-title-small{{else match @custom.hero_title_size_and_subscription_form_or_button "Medium + Subscription form"}} hero-title-medium{{else match @custom.hero_title_size_and_subscription_form_or_button "Small + Subscription form"}} global-title hero-title-small{{else match @custom.hero_title_size_and_subscription_form_or_button "Medium + Subscription button"}} hero-title-medium{{else match @custom.hero_title_size_and_subscription_form_or_button "Small + Subscription button"}} global-title hero-title-small{{else}} hero-title-large{{/match}}">{{#if @custom.hero_title_text}}{{{@custom.hero_title_text}}}{{else}}{{{t "{start-bold}Hey, were {site-title}.{end-bold} See our thoughts, stories and ideas." start-bold="<span>" end-bold="</span>" site-title=@site.title}}}{{/if}}</h1>
<h1 class="hero-title{{#match @custom.hero_title_size_and_subscription_form_or_button "Medium"}} hero-title-medium{{else match @custom.hero_title_size_and_subscription_form_or_button "Small"}} global-title hero-title-small{{else match @custom.hero_title_size_and_subscription_form_or_button "Medium + Subscription form"}} hero-title-medium{{else match @custom.hero_title_size_and_subscription_form_or_button "Small + Subscription form"}} global-title hero-title-small{{else match @custom.hero_title_size_and_subscription_form_or_button "Medium + Subscription button"}} hero-title-medium{{else match @custom.hero_title_size_and_subscription_form_or_button "Small + Subscription button"}} global-title hero-title-small{{else}} hero-title-large{{/match}}">{{#if @custom.hero_title_text}}{{{@custom.hero_title_text}}}{{else}}{{{t "{start-bold}Hey, were {site-title}.{end-bold} See our thoughts, stories and ideas." start-bold="<span>" end-bold="</span>" site-title=@site.title}}}{{/if}}</h1>
{{#if @site.members_enabled}}
{{#match @custom.hero_title_size_and_subscription_form_or_button "Large + Subscription form"}}
{{>members/subscribe_form is_hero=true}}
@ -17,7 +17,7 @@
{{>members/subscribe_button}}
{{else match @custom.hero_title_size_and_subscription_form_or_button "Small + Subscription button"}}
{{>members/subscribe_button}}
{{/match}} --}}
{{/match}}
</div>
{{>featured}}
</div>

View File

@ -1 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></svg>

Before

Width:  |  Height:  |  Size: 233 B

View File

@ -1 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"></circle><line x1="12" y1="1" x2="12" y2="3"></line><line x1="12" y1="21" x2="12" y2="23"></line><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line><line x1="1" y1="12" x2="3" y2="12"></line><line x1="21" y1="12" x2="23" y2="12"></line><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line></svg>

Before

Width:  |  Height:  |  Size: 611 B

View File

@ -1,11 +1,11 @@
<article class="item{{#if is_loop}} is-loop{{else if is_featured}} is-featured{{else if is_special}} is-special{{/if}}{{#if feature_image}} is-image{{/if}}">
<article class="item{{#if is_loop}} is-loop{{else if is_featured}} is-featured{{#match @custom.slider_size "Small"}} is-small{{/match}}{{else if is_special}} is-special{{/if}}{{#if feature_image}} is-image{{/if}}">
{{#if feature_image}}
<div class="item-image global-image global-image-orientation global-radius{{#match @custom.feature_image_shape "Landscape"}} is-landscape{{else match @custom.feature_image_shape "Square"}} is-square{{else match @custom.feature_image_shape "Natural"}} is-natural{{/match}}">
<div class="item-image global-image global-image-orientation global-radius{{#if is_loop}}{{#match @custom.feed_images_orientation "Landscape"}} is-landscape{{else match @custom.feed_images_orientation "Square"}} is-square{{else match @custom.feed_images_orientation "Natural"}} is-natural{{/match}}{{/if}}{{#if is_featured}}{{#match @custom.slider_images_orientation "Landscape"}} is-landscape{{else match @custom.slider_images_orientation "Square"}} is-square{{else match @custom.slider_images_orientation "Natural"}} is-natural{{/match}}{{/if}}{{#if is_special}}{{#match @custom.special_section_images_orientation "Landscape"}} is-landscape{{else match @custom.special_section_images_orientation "Square"}} is-square{{else match @custom.special_section_images_orientation "Natural"}} is-natural{{/match}}{{/if}}">
{{#if is_featured}}{{#if @last}}<span class="is-last"></span>{{/if}}{{/if}}
<a href="{{url}}" {{#if is_featured}}tabindex="-1"{{/if}} aria-label="link: {{title}}">
{{>images/loop_image}}
</a>
{{!-- {{#if @custom.show_author}}
{{#if @custom.show_author}}
<div class="item-authors global-authors">
<div>
{{#foreach authors to="5"}}
@ -20,7 +20,7 @@
{{/foreach}}
</div>
</div>
{{/if}} --}}
{{/if}}
</div>
{{/if}}
<div class="item-content">

View File

@ -1 +1,14 @@
{{#if @custom.logo_for_dark_color_scheme}}
{{#match @custom.color_scheme "Dark"}}
<a href="{{@site.url}}" class="is-logo"><img src="{{@custom.logo_for_dark_color_scheme}}" alt="{{@site.title}} home"></a>
{{else match @custom.color_scheme "Partial Dark"}}
<a href="{{@site.url}}" class="is-logo"><img src="{{@custom.logo_for_dark_color_scheme}}" alt="{{@site.title}} home"></a>
{{else match @custom.color_scheme "Auto: Partial Dark/Dark"}}
<a href="{{@site.url}}" class="is-logo"><img src="{{@custom.logo_for_dark_color_scheme}}" alt="{{@site.title}} home"></a>
{{else match @custom.color_scheme "Auto: Light/Dark"}}
<a href="{{@site.url}}" class="is-dark is-logo"><img src="{{@custom.logo_for_dark_color_scheme}}" alt="{{@site.title}} home"></a>
<a href="{{@site.url}}"{{#if @site.logo}} class="is-logo"><img src="{{@site.logo}}" alt="{{@site.title}} home">{{else}} class="is-title">{{@site.title}}{{/if}}</a>
{{/match}}
{{else}}
<a href="{{@site.url}}"{{#if @site.logo}} class="is-logo"><img src="{{@site.logo}}" alt="{{@site.title}} home">{{else}} class="is-title">{{@site.title}}{{/if}}</a>
{{/if}}

View File

@ -2,7 +2,7 @@
<div class="{{#is "tag,author"}}global-subtitle{{else if is_error}}global-subtitle{{else}}loop-subtitle{{/is}}">
<small class="{{#is "tag,author"}}global-subtitle-title{{else if is_error}}global-subtitle-title{{else}}loop-subtitle-title global-title{{/is}}">
{{#is "tag,author"}}{{{t "Check out the {start-bold}latest posts{end-bold}" start-bold="<span>" end-bold="</span>"}}}{{else if is_error}}{{{t "Check out the {start-bold}latest posts{end-bold}" start-bold="<span>" end-bold="</span>"}}}{{else}}{{{t "See what weve {break}{start-bold}written lately{end-bold}" break="<br>" start-bold="<span>" end-bold="</span>"}}}{{/is}}</small>
{{!-- {{#if @custom.show_author}}
{{#if @custom.show_author}}
{{^if is_error}}
{{^is "tag,author"}}
{{#get "authors" limit="6" include="count.posts" order="count.posts desc"}}
@ -28,7 +28,7 @@
{{/get}}
{{/is}}
{{/if}}
{{/if}} --}}
{{/if}}
</div>
<div class="loop-wrap">
{{#foreach posts}}

View File

@ -4,7 +4,7 @@
</div>
<div class="membership-wrap global-radius{{#if feature_image}} global-bg-image" style="background-image: url({{{img_url feature_image size="l" format="webp"}}}){{/if}}">
{{#if @site.paid_members_enabled}}
<div class="membership-switch" data-active-price="{{@site.portal_default_plan}}" data-active-price-plans="{{@site.portal_plans}}"{{#get "tiers" filter="visibility:public+type:paid" as |public_paid_tiers|}} data-active-public-paid-tiers="{{#if public_paid_tiers}}true{{else}}false{{/if}}"{{/get}}>
<div class="membership-switch" data-active-price="{{@site.portal_default_plan}}" data-active-price-plans="{{@site.portal_plans}}"{{#get "tiers" limit="all" filter="visibility:public+type:paid" as |public_paid_tiers|}} data-active-public-paid-tiers="{{#if public_paid_tiers}}true{{else}}false{{/if}}"{{/get}}>
<button data-price="monthly">{{t "Monthly"}}</button>
<button data-price="yearly">{{t "Yearly"}}</button>
</div>
@ -36,7 +36,7 @@
{{/if}}
{{/if}}
{{#if @site.paid_members_enabled}}
{{#get "tiers" include="monthly_price,yearly_price,benefits" filter="visibility:public+type:paid"}}
{{#get "tiers" include="monthly_price,yearly_price,benefits" filter="visibility:public+type:paid" limit="all"}}
{{#foreach tiers}}
<div class="membership-card">
<div class="membership-card-content">

View File

@ -18,10 +18,6 @@
{{/if}}
{{/foreach}}
{{>search is_desktop=true}}
<li role="button" class="theme-toggle is-desktop">
<span class="if-is-dark">{{>icons/site/sun}}</span>
<span class="if-is-light">{{>icons/site/moon}}</span>
</li>
{{>members/login_panel}}
</ul>
{{else}}
@ -33,13 +29,7 @@
{{#foreach navigation limit="5"}}
{{#if @first}}
<div class="footer-nav-column">
<small>
{{#if @custom.secondary_navigation_title}}
{{@custom.secondary_navigation_title}}
{{else}}
{{t "Column 1"}}
{{/if}}
</small>
<small>{{t "Column 1"}}</small>
<ul>
{{/if}}
<li><a href="{{url absolute="true"}}">{{label}}</a></li>
@ -52,7 +42,7 @@
{{#foreach navigation limit="5" from="6"}}
{{#if @first}}
<div class="footer-nav-column">
<small>&nbsp;</small>
<small>{{t "Column 2"}}</small>
<ul>
{{/if}}
<li><a href="{{url absolute="true"}}">{{label}}</a></li>
@ -65,7 +55,7 @@
{{#foreach navigation from="11"}}
{{#if @first}}
<div class="footer-nav-column">
<small>&nbsp;</small>
<small>{{t "Column 3"}}</small>
<ul>
{{/if}}
<li><a href="{{url absolute="true"}}">{{label}}</a></li>

View File

@ -0,0 +1 @@
{{#match @custom.color_scheme "Partial Dark"}} is-partial-dark{{else match @custom.color_scheme "Auto: Partial Dark/Dark"}} is-partial-dark{{else if @custom.global_background_color_in_hex_string}} is-partial-color{{/match}}

View File

@ -23,7 +23,7 @@
</article>
{{^is "page"}}
{{>post_navigation}}
{{!-- <div class="comments-section global-padding">
<div class="comments-section global-padding">
{{#if access}}
{{#if @custom.disqus_shortname}}
{{>services/disqus}}
@ -41,7 +41,7 @@
</div>
{{/if}}
{{/if}}
</div> --}}
</div>
{{#if primary_tag}}
{{#get "posts" limit="6" filter="tags:{{primary_tag.slug}}+id:-{{id}}+feature_image:-null" include="authors" as |special_posts|}}
{{#if special_posts}}

View File

@ -1,9 +1,9 @@
<div class="post-header">
<div class="post-header{{>partial_mode}}">
<div class="post-header-wrap global-padding{{#if post_center}} is-center{{else if post_classic}} is-classic{{else if membership_page}} is-center{{else unless feature_image}} is-center{{/if}}">
<div class="post-header-container">
<div class="post-header-content">
<div>
<div class="post-tags global-tags">{{>members/visibility_label}}{{#if tags}}{{tags separator=""}}{{/if}}</div>
<div class="post-tags global-tags">{{>members/visibility_label}}{{#if tags}}{{tags limit="all" separator=""}}{{/if}}</div>
<h1 class="post-title global-title">{{title}}</h1>
{{#if custom_excerpt}}
<p class="post-excerpt global-excerpt">{{custom_excerpt}}</p>
@ -13,7 +13,7 @@
</div>
{{^is "page"}}
<div class="post-meta">
{{!-- {{#if @custom.show_author}}
{{#if @custom.show_author}}
<div class="post-authors global-authors">
<div>
{{#foreach authors}}
@ -28,9 +28,9 @@
{{/foreach}}
</div>
</div>
{{/if}} --}}
{{/if}}
<div class="post-meta-content">
{{!-- {{#if @custom.show_author}}
{{#if @custom.show_author}}
{{#has author="count:1"}}
{{authors}}
{{else has author="count:2"}}
@ -40,7 +40,7 @@
{{else has author="count:>3"}}
{{authors}}
{{/has}}
{{/if}} --}}
{{/if}}
<time datetime="{{date format="YYYY-MM-DD"}}">{{date published_at format="LL"}}{{reading_time minute=(t "1 minute read") minutes=(t "% minutes read")}}</time>
</div>
</div>
@ -50,7 +50,7 @@
{{#if feature_image}}
<div class="post-header-image">
<figure>
<div class="global-image global-image-orientation global-radius{{#if post_center}} is-natural{{else if post_classic}} is-natural{{else match @custom.feature_image_shape "Landscape"}} is-landscape{{else match @custom.feature_image_shape "Square"}} is-square{{else match @custom.feature_image_shape "Natural"}} is-natural{{/if}}">
<div class="global-image global-image-orientation global-radius{{#if post_center}} is-natural{{else if post_classic}} is-natural{{else match @custom.feature_image_orientation "Landscape"}} is-landscape{{else match @custom.feature_image_orientation "Square"}} is-square{{else match @custom.feature_image_orientation "Natural"}} is-natural{{/if}}">
{{>images/post_image}}
</div>
{{#if feature_image_caption}}

View File

@ -1,8 +1,8 @@
{{#if @custom.content_api_key}}
{{#if @custom.content_api_key_for_search}}
{{#if is_search_core}}
<div class="search-section">
<div class="search-wrap">
<div class="search-content">
<div class="search-content{{>partial_mode}}">
<form class="search-form" onsubmit="return false">
<input class="search-input" type="text" placeholder="{{t "Search"}}">
<div class="search-meta">
@ -22,12 +22,11 @@
{{#contentFor "script_js"}}
<script>
const options = {
api:'{{@site.url}}/ghost/api/content/pages/?key='+"{{@custom.content_api_key}}"+'&limit=all&formats=plaintext&fields=url,title,custom_excerpt',
api:'{{@site.url}}/ghost/api/content/posts/?key='+"{{@custom.content_api_key_for_search}}"+'&limit=all&fields=url,title,feature_image,published_at,custom_excerpt,visibility,html',
threshold: 0.1,
ignoreLocation: true,
keys: ['title','custom_excerpt','plaintext'],
images: false,
excerpt: 16,
keys: ['title','custom_excerpt','html'],
images: true,
limit: 14
}
</script>
@ -35,7 +34,7 @@ const options = {
{{/if}}
{{/if}}
{{#if is_mobile}}
<span class="header-search search-open is-mobile"{{^if @custom.content_api_key}} data-ghost-search{{/if}}>{{>icons/site/search}}</span>
<span class="header-search search-open is-mobile"{{^if @custom.content_api_key_for_search}} data-ghost-search{{/if}}>{{>icons/site/search}}</span>
{{else if is_desktop}}
<li class="header-search search-open is-desktop global-button"{{^if @custom.content_api_key}} data-ghost-search{{/if}}><span>{{>icons/site/search}}{{t "Search"}}</span></li>
<li class="header-search search-open is-desktop global-button"{{^if @custom.content_api_key_for_search}} data-ghost-search{{/if}}><span>{{>icons/site/search}}{{t "Search"}}</span></li>
{{/if}}

View File

@ -1,4 +1,4 @@
{{!-- {{#match @custom.tags_for_special_section}}
{{#match @custom.tags_for_special_section}}
{{#get "posts" limit="6" filter="tag:[{{@custom.tags_for_special_section}}]+feature_image:-null" include="authors" as |special_posts|}}
{{#if special_posts}}
{{>related label=(t "{start-bold}Recommended{end-bold}" start-bold="<span>" end-bold="</span>")}}
@ -14,4 +14,4 @@
{{/get}}
{{/if}}
{{/foreach}}
{{/match}} --}}
{{/match}}

View File

@ -1,4 +1,4 @@
{{!-- <div class="comments-wrap">
<div class="comments-wrap">
<div class="comments-content">
<div id="disqus_thread" class="disqus-lazy">
<script>
@ -10,4 +10,4 @@
</script>
</div>
</div>
</div> --}}
</div>

View File

@ -9,12 +9,14 @@
--font-family-one: var(--gh-font-heading, 'Archivo', sans-serif);
--font-weight-one-light: 300;
--font-weight-one-bold: 800;
--font-family-two: var(--gh-font-heading, 'Archivo', sans-serif);
--font-weight-two-bold: 800;
}
</style>
{{/contentFor}}
{{/match}}
{{#match @custom.fonts "Bona Nova + Inter"}}
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
@ -26,17 +28,21 @@
--font-family-one: var(--gh-font-heading, 'Bona Nova', serif);
--font-weight-one-light: 400;
--font-weight-one-bold: 700;
--font-family-two: var(--gh-font-heading, 'Inter', sans-serif);
--font-weight-two-bold: 700;
--font-family-three: var(--gh-font-body, 'Inter', sans-serif);
--font-weight-three-regular: 400;
--font-weight-three-medium: 500;
--font-weight-three-bold: 700;
--letter-spacing: -.01em;
}
</style>
{{/contentFor}}
{{/match}}
{{#match @custom.fonts "Inter"}}
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
@ -48,17 +54,21 @@
--font-family-one: var(--gh-font-heading, 'Inter', sans-serif);
--font-weight-one-light: 300;
--font-weight-one-bold: 700;
--font-family-two: var(--gh-font-heading, 'Inter', sans-serif);
--font-weight-two-bold: 700;
--font-family-three: var(--gh-font-body, 'Inter', sans-serif);
--font-weight-three-regular: 400;
--font-weight-three-medium: 500;
--font-weight-three-bold: 700;
--letter-spacing: -.01em;
}
</style>
{{/contentFor}}
{{/match}}
{{#match @custom.fonts "Lato"}}
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
@ -71,8 +81,10 @@
--font-weight-one-light: 400;
--font-weight-one-regular: 400;
--font-weight-one-bold: 900;
--font-family-two: var(--gh-font-heading, 'Lato', sans-serif);
--font-weight-two-bold: 900;
--font-family-three: var(--gh-font-body, 'Lato', sans-serif);
--font-weight-three-regular: 400;
--font-weight-three-medium: 400;
@ -81,6 +93,7 @@
</style>
{{/contentFor}}
{{/match}}
{{#match @custom.fonts "EB Garamond + Inter"}}
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
@ -92,6 +105,7 @@
--font-family-one: var(--gh-font-heading, 'EB Garamond', sans-serif);
--font-weight-one-light: 400;
--font-weight-one-bold: 700;
--font-family-three: var(--gh-font-body, 'Inter', sans-serif);
--font-weight-three-regular: 400;
--font-weight-three-medium: 500;
@ -100,6 +114,7 @@
</style>
{{/contentFor}}
{{/match}}
{{#match @custom.fonts "Lora + System fonts"}}
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
@ -111,12 +126,14 @@
--font-family-one: var(--gh-font-heading, 'Lora', serif);
--font-weight-one-light: 400;
--font-weight-one-bold: 700;
--font-family-two: var(--gh-font-heading, 'Lora', serif);
--font-weight-two-bold: 700;
}
</style>
{{/contentFor}}
{{/match}}
{{#match @custom.fonts "Nunito"}}
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
@ -128,8 +145,10 @@
--font-family-one: var(--gh-font-heading, 'Nunito', sans-serif);
--font-weight-one-light: 400;
--font-weight-one-bold: 900;
--font-family-two: var(--gh-font-heading, 'Nunito', sans-serif);
--font-weight-two-bold: 900;
--font-family-three: var(--gh-font-body, 'Nunito', sans-serif);
--font-weight-three-regular: 400;
--font-weight-three-medium: 600;
@ -139,6 +158,7 @@
</style>
{{/contentFor}}
{{/match}}
{{#match @custom.fonts "Oswald + Roboto"}}
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
@ -150,8 +170,10 @@
--font-family-one: var(--gh-font-heading, 'Oswald', sans-serif);
--font-weight-one-light: 300;
--font-weight-one-bold: 700;
--font-family-two: var(--gh-font-heading, 'Oswald', sans-serif);
--font-weight-two-bold: 700;
--font-family-three: var(--gh-font-body, 'Roboto', sans-serif);
--font-weight-three-regular: 400;
--font-weight-three-medium: 500;
@ -160,6 +182,7 @@
</style>
{{/contentFor}}
{{/match}}
{{#match @custom.fonts "Playfair + System fonts"}}
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
@ -175,6 +198,7 @@
</style>
{{/contentFor}}
{{/match}}
{{#match @custom.fonts "Poppins + Inter"}}
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
@ -186,17 +210,21 @@
--font-family-one: var(--gh-font-heading, 'Poppins', sans-serif);
--font-weight-one-light: 400;
--font-weight-one-bold: 600;
--font-family-two: var(--gh-font-heading, 'Poppins', sans-serif);
--font-weight-two-bold: 600;
--font-family-three: var(--gh-font-body, 'Inter', sans-serif);
--font-weight-three-regular: 400;
--font-weight-three-medium: 500;
--font-weight-three-bold: 600;
--letter-spacing: -.01em;
}
</style>
{{/contentFor}}
{{/match}}
{{#match @custom.fonts "Raleway + System fonts"}}
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
@ -208,12 +236,14 @@
--font-family-one: var(--gh-font-heading, 'Raleway', sans-serif);
--font-weight-one-light: 400;
--font-weight-one-bold: 800;
--font-family-two: var(--gh-font-heading, 'Raleway', sans-serif);
--font-weight-two-bold: 800;
}
</style>
{{/contentFor}}
{{/match}}
{{#match @custom.fonts "Roboto"}}
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
@ -225,8 +255,10 @@
--font-family-one: var(--gh-font-heading, 'Roboto', sans-serif);
--font-weight-one-light: 300;
--font-weight-one-bold: 700;
--font-family-two: var(--gh-font-heading, 'Roboto', sans-serif);
--font-weight-two-bold: 700;
--font-family-three: var(--gh-font-body, 'Roboto', sans-serif);
--font-weight-three-regular: 400;
--font-weight-three-medium: 500;
@ -235,6 +267,7 @@
</style>
{{/contentFor}}
{{/match}}
{{#match @custom.fonts "Space Grotesk + Inter"}}
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
@ -246,17 +279,21 @@
--font-family-one: var(--gh-font-heading, 'Space Grotesk', sans-serif);
--font-weight-one-light: 400;
--font-weight-one-bold: 700;
--font-family-two: var(--gh-font-heading, 'Space Grotesk', sans-serif);
--font-weight-two-bold: 700;
--font-family-three: var(--gh-font-body, 'Inter', sans-serif);
--font-weight-three-regular: 400;
--font-weight-three-medium: 500;
--font-weight-three-bold: 700;
--letter-spacing: -.01em;
}
</style>
{{/contentFor}}
{{/match}}
{{#match @custom.fonts "Sora + Inter"}}
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
@ -268,8 +305,10 @@
--font-family-one: var(--gh-font-heading, 'Sora', sans-serif);
--font-weight-one-light: 300;
--font-weight-one-bold: 600;
--font-family-two: var(--gh-font-heading, 'Sora', sans-serif);
--font-weight-two-bold: 600;
--font-family-three: var(--gh-font-body, 'Inter', sans-serif);
--font-weight-three-regular: 400;
--font-weight-three-medium: 500;
@ -278,6 +317,7 @@
</style>
{{/contentFor}}
{{/match}}
{{#match @custom.fonts "Syne + Inter"}}
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
@ -289,17 +329,21 @@
--font-family-one: var(--gh-font-heading, 'Syne', sans-serif);
--font-weight-one-light: 400;
--font-weight-one-bold: 700;
--font-family-two: var(--gh-font-heading, 'Syne', sans-serif);
--font-weight-two-bold: 700;
--font-family-three: var(--gh-font-body, 'Inter', sans-serif);
--font-weight-three-regular: 400;
--font-weight-three-medium: 500;
--font-weight-three-bold: 700;
--letter-spacing: -.01em;
}
</style>
{{/contentFor}}
{{/match}}
{{#match @custom.fonts "Work Sans + Inter"}}
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
@ -311,12 +355,15 @@
--font-family-one: var(--gh-font-heading, 'Work Sans', sans-serif);
--font-weight-one-light: 400;
--font-weight-one-bold: 700;
--font-family-two: var(--gh-font-heading, 'Work Sans', sans-serif);
--font-weight-two-bold: 700;
--font-family-three: var(--gh-font-body, 'Inter', sans-serif);
--font-weight-three-regular: 400;
--font-weight-three-medium: 500;
--font-weight-three-bold: 700;
--letter-spacing: -.01em;
}
</style>

View File

@ -1,6 +1,6 @@
{{!< default}}
{{#tag}}
<div class="archive-section{{#if feature_image}} is-image{{/if}}">
<div class="archive-section{{#if feature_image}} is-image{{/if}}{{>partial_mode}}">
{{#if feature_image}}
<div class="archive-image global-image">
{{>images/other_image other_image=feature_image alt=name}}