feat: add testimonials within the daily email form
This commit is contained in:
parent
7f4358ebf8
commit
51481abd3c
|
@ -637,3 +637,5 @@ const { intro } = Astro.props;
|
|||
</div>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
<slot />
|
||||
|
|
|
@ -5,6 +5,7 @@ import _ from "lodash";
|
|||
interface Props {
|
||||
names: string[];
|
||||
title?: string;
|
||||
titleClasses?: string[];
|
||||
}
|
||||
|
||||
const defaultNames = [
|
||||
|
@ -27,7 +28,7 @@ const defaultNames = [
|
|||
'anonymous',
|
||||
];
|
||||
|
||||
const { title } = Astro.props as Props;
|
||||
const { title, titleClasses } = Astro.props as Props;
|
||||
const names = _(Astro.props.names || defaultNames);
|
||||
|
||||
const testimonials = await getCollection('testimonial', ({ id }) => names.includes(id));
|
||||
|
@ -38,7 +39,7 @@ const sortedTestimonials = _(names)
|
|||
---
|
||||
|
||||
{testimonials && (
|
||||
<h2>{title ?? 'What others have said'}</h2>
|
||||
<h2 class={titleClasses ? titleClasses.join(' ') : null}>{title ?? 'What others have said'}</h2>
|
||||
|
||||
<div class="mt-6 space-y-14">
|
||||
{_(sortedTestimonials).map(({ data: { image, name, tagline, text, url } }) => (
|
||||
|
|
|
@ -5,6 +5,7 @@ isFront: true
|
|||
---
|
||||
|
||||
import DailyEmailForm from '~/components/DailyEmailForm.astro';
|
||||
import Testimonials from '~/components/Testimonials.astro';
|
||||
import { numberOfYears } from '~/utils';
|
||||
|
||||
<div class="mb-4 w-32">
|
||||
|
@ -40,7 +41,11 @@ Book a [1-on-1 consultation call][call] or an [online pair programming session][
|
|||
|
||||
Register for my email list and get daily emails about Drupal, PHP and software development.
|
||||
|
||||
<DailyEmailForm />
|
||||
<DailyEmailForm>
|
||||
<div class="mt-10">
|
||||
<Testimonials names={["adam-nuttall"]} titleClasses={["sr-only"]} />
|
||||
</div>
|
||||
</DailyEmailForm>
|
||||
</aside>
|
||||
|
||||
[call]: /call
|
||||
|
|
Loading…
Reference in a new issue