uodate route

This commit is contained in:
Raven Scott 2024-09-25 23:52:55 -04:00
parent 75e87c8d93
commit b23e3071b6

16
app.js
View File

@ -206,8 +206,18 @@ app.post('/contact', async (req, res) => {
} }
}); });
// Blog Post Route // Blog Post Route for new URLs (without /blog prefix)
app.get('/:slug', (req, res) => {
handleBlogPost(req, res);
});
// Blog Post Route for old URLs (with /blog prefix)
app.get('/blog/:slug', (req, res) => { app.get('/blog/:slug', (req, res) => {
handleBlogPost(req, res);
});
// Function to handle blog posts (used in both routes)
function handleBlogPost(req, res) {
const slug = req.params.slug; const slug = req.params.slug;
const markdownFile = fs.readdirSync(path.join(__dirname, 'markdown')) const markdownFile = fs.readdirSync(path.join(__dirname, 'markdown'))
.find(file => titleToSlug(file.replace('.md', '')) === slug); .find(file => titleToSlug(file.replace('.md', '')) === slug);
@ -226,9 +236,7 @@ app.get('/blog/:slug', (req, res) => {
} else { } else {
res.redirect('/'); // Redirect to the home page if the blog post is not found res.redirect('/'); // Redirect to the home page if the blog post is not found
} }
}); }
// Sitemap Route
// Sitemap Route // Sitemap Route
app.get('/sitemap.xml', (req, res) => { app.get('/sitemap.xml', (req, res) => {
const hostname = req.headers.host || 'http://localhost'; // Ensure this is your site URL in production const hostname = req.headers.host || 'http://localhost'; // Ensure this is your site URL in production