🔍️ Add seo page

This commit is contained in:
Luke Vella 2024-09-14 17:38:34 +01:00
parent 3fd4ae57b3
commit f645a8744a
No known key found for this signature in database
GPG key ID: 469CAD687F0D784C
4 changed files with 60 additions and 2 deletions

View file

@ -24,5 +24,6 @@
"availabilityPoll": "Availability Poll",
"solutions": "Solutions",
"howItWorks": "How it Works",
"status": "Status"
"status": "Status",
"when2MeetAlternative": "When2Meet Alternative"
}

View file

@ -36,5 +36,9 @@
"new": "New",
"metaTitle": "Rallly: Group Scheduling Tool",
"metaDescription": "Rallly is the fastest and easiest scheduling and collaboration tool. Create a meeting poll in seconds, no login required.",
"selfHostingBlog": "Rallly 3.0 Self-Hosting"
"selfHostingBlog": "Rallly 3.0 Self-Hosting",
"when2meetAlternativeMetaTitle": "Best When2Meet Alternative: Rallly",
"when2meetAlternativeMetaDescription": "Find a better way to schedule meetings with Rallly, the top free alternative to When2Meet. Easy to use and free.",
"when2meetAlternative": "Still using When2Meet?",
"when2meetAlternativeDescription": "Create professional, ad-free meetings polls for free with Rallly."
}

View file

@ -184,6 +184,17 @@ const Footer: React.FunctionComponent = () => {
/>
</Link>
</li>
<li>
<Link
className="inline-block font-normal text-gray-500 hover:text-gray-800 hover:no-underline"
href="/when2meet-alternative"
>
<Trans
i18nKey="when2MeetAlternative"
defaults="When2Meet Alternative"
/>
</Link>
</li>
<li>
<Link
className="inline-block font-normal text-gray-500 hover:text-gray-800 hover:no-underline"

View file

@ -0,0 +1,42 @@
import { useTranslation } from "next-i18next";
import { MarketingHero } from "@/components/home/hero";
import { getPageLayout } from "@/components/layouts/page-layout";
import { Marketing } from "@/components/marketing";
import { Trans } from "@/components/trans";
import { NextPageWithLayout } from "@/types";
import { getStaticTranslations } from "@/utils/page-translations";
const Page: NextPageWithLayout = () => {
const { t } = useTranslation(["home"]);
return (
<Marketing
title={t("home:when2meetAlternativeMetaTitle", {
defaultValue: "Best When2Meet Alternative: Rallly",
})}
description={t("home:when2meetAlternativeMetaDescription", {
defaultValue:
"Find a better way to schedule meetings with Rallly, the top free alternative to When2Meet. Easy to use and free.",
})}
>
<MarketingHero
title={t("home:when2meetAlternative", {
defaultValue: "Still using When2Meet?",
})}
description={t("home:when2meetAlternativeDescription", {
defaultValue:
"Create professional, ad-free meetings polls for free with Rallly.",
})}
callToAction={
<Trans i18nKey="home:createAPoll" defaults="Create a Meeting Poll" />
}
/>
</Marketing>
);
};
Page.getLayout = getPageLayout;
export default Page;
export const getStaticProps = getStaticTranslations(["home"]);