Compare commits

..

3 commits

Author SHA1 Message Date
a5f89d33af fix: website URL on RSS feed is no longer determined by NODE_ENV enviornment variable
Some checks failed
Deploy Next.js application / deploy (push) Failing after 22m19s
2024-09-08 20:41:26 +02:00
737a342c3b feat: add script for robots.txt file generation 2024-09-08 20:39:05 +02:00
f452f0023b fix: adjust padding for email address field for newsletter form 2024-09-08 20:36:22 +02:00
3 changed files with 18 additions and 12 deletions

12
app/robots.ts Normal file
View file

@ -0,0 +1,12 @@
import type { MetadataRoute } from "next";
export default function robots(): MetadataRoute.Robots {
return {
rules: {
userAgent: "*",
allow: "/",
disallow: "/unsubscribe"
},
sitemap: `${process.env.NEXT_PUBLIC_WEBSITE_URL}/sitemap.xml`
};
}

View file

@ -6,12 +6,6 @@ import { toHTML } from "@portabletext/to-html";
export const dynamic = "force-static"; export const dynamic = "force-static";
export async function GET() { export async function GET() {
// Define the site URL based on the environment
const SITE_URL =
process.env.NODE_ENV === "production"
? `${process.env.NEXT_PUBLIC_WEBSITE_URL}`
: "http://localhost:3000";
const postsQuery = `*[_type == 'blog'] | order(_createdAt desc) { const postsQuery = `*[_type == 'blog'] | order(_createdAt desc) {
title, title,
"slug": slug.current, "slug": slug.current,
@ -25,9 +19,9 @@ export async function GET() {
const feed = new RSS({ const feed = new RSS({
title: "SVR.JS Blog", title: "SVR.JS Blog",
description: "Explore the latest blog posts from SVR.JS", description: "Explore the latest blog posts from SVR.JS",
feed_url: `${SITE_URL}/rss.xml`, feed_url: `${process.env.NEXT_PUBLIC_WEBSITE_URL}/rss.xml`,
site_url: `${SITE_URL}`, site_url: `${process.env.NEXT_PUBLIC_WEBSITE_URL}`,
image_url: `${SITE_URL}/metadata/svrjs-cover.png`, image_url: `${process.env.NEXT_PUBLIC_WEBSITE_URL}/metadata/svrjs-cover.png`,
language: "en-US", language: "en-US",
pubDate: new Date().toUTCString() pubDate: new Date().toUTCString()
}); });
@ -36,12 +30,12 @@ export async function GET() {
feed.item({ feed.item({
title: post.title, title: post.title,
description: toHTML(post.content), description: toHTML(post.content),
url: `${SITE_URL}/blog/${post.slug}`, url: `${process.env.NEXT_PUBLIC_WEBSITE_URL}/blog/${post.slug}`,
date: new Date(post._createdAt).toUTCString(), date: new Date(post._createdAt).toUTCString(),
enclosure: { enclosure: {
url: post.titleImage url: post.titleImage
? urlFor(post.titleImage).url() ? urlFor(post.titleImage).url()
: `${SITE_URL}/blog-missing.png` : `${process.env.NEXT_PUBLIC_WEBSITE_URL}/blog-missing.png`
}, },
author: "SVR.JS" author: "SVR.JS"
}); });

View file

@ -81,7 +81,7 @@ const Newsletter = () => {
aria-label="Email Information" aria-label="Email Information"
onSubmit={(e) => e.preventDefault()} onSubmit={(e) => e.preventDefault()}
> >
<div className="group flex items-center gap-x-4 pl-4 pr-1 rounded-[9px] bg-accent/80 hover:bg-accent shadow-outline-gray hover:shadow-transparent focus-within:bg-accent focus-within:!shadow-outline-gray-focus transition-all duration-300"> <div className="group flex items-center gap-x-4 pl-1 md:pl-4 pr-1 rounded-[9px] bg-accent/80 hover:bg-accent shadow-outline-gray hover:shadow-transparent focus-within:bg-accent focus-within:!shadow-outline-gray-focus transition-all duration-300">
<Mail className="hidden sm:inline w-6 h-6 text-[#4B4C52] group-focus-within:text-secondary-foreground group-hover:text-secondary-foreground transition-colors duration-300" /> <Mail className="hidden sm:inline w-6 h-6 text-[#4B4C52] group-focus-within:text-secondary-foreground group-hover:text-secondary-foreground transition-colors duration-300" />
<Input <Input
value={input} value={input}