- Add "Explore our other services" block to service landing pages
with colour-tinted cards + Our Pricing entry (grey "All services" pill) - Wrap homepage Instagram CTA in <aside aria-label="..."> - Always emit og:image:width/height with 1200x630 fallback when image metadata is unknown - Add aria-current="page" to active desktop, mega-menu, and mobile nav links (exact-path match only — not "Services" parent) - Richer testimonial alt text derived from dog name in the detail field (e.g. "Archie, a happy Goodwalk dog walking client...") - Tier sitemap.xml priorities: home 1.0, services 0.9, pricing 0.8, about/contact 0.7, legal 0.3 (yearly changefreq) - Bump to 4.1.0
This commit is contained in:
@@ -179,11 +179,11 @@
|
||||
<Header navigation={data.content.navigation} />
|
||||
|
||||
{#if data.slug === 'pack-walks'}
|
||||
<ServiceLandingPage content={data.content} pageContent={packWalksContent} />
|
||||
<ServiceLandingPage content={data.content} pageContent={packWalksContent} currentPath={data.page.canonicalPath} />
|
||||
{:else if data.slug === 'dog-walking'}
|
||||
<ServiceLandingPage content={data.content} pageContent={dogWalkingContent} />
|
||||
<ServiceLandingPage content={data.content} pageContent={dogWalkingContent} currentPath={data.page.canonicalPath} />
|
||||
{:else if data.slug === 'puppy-visits'}
|
||||
<ServiceLandingPage content={data.content} pageContent={puppyVisitsContent} />
|
||||
<ServiceLandingPage content={data.content} pageContent={puppyVisitsContent} currentPath={data.page.canonicalPath} />
|
||||
{:else if data.slug === 'our-pricing'}
|
||||
<PricingPage content={data.content} pageContent={ourPricingContent} />
|
||||
{:else if data.slug === 'about' || data.slug === 'about-us'}
|
||||
|
||||
@@ -1,16 +1,23 @@
|
||||
import type { RequestHandler } from './$types';
|
||||
|
||||
const siteUrl = 'https://www.goodwalk.co.nz';
|
||||
const routes = [
|
||||
'/',
|
||||
'/pack-walks',
|
||||
'/dog-walking',
|
||||
'/puppy-visits',
|
||||
'/our-pricing',
|
||||
'/about',
|
||||
'/contact-us',
|
||||
'/terms-and-conditions',
|
||||
'/privacy-policy'
|
||||
|
||||
interface SitemapRoute {
|
||||
path: string;
|
||||
priority: string;
|
||||
changefreq: string;
|
||||
}
|
||||
|
||||
const routes: SitemapRoute[] = [
|
||||
{ path: '/', priority: '1.0', changefreq: 'weekly' },
|
||||
{ path: '/pack-walks', priority: '0.9', changefreq: 'monthly' },
|
||||
{ path: '/dog-walking', priority: '0.9', changefreq: 'monthly' },
|
||||
{ path: '/puppy-visits', priority: '0.9', changefreq: 'monthly' },
|
||||
{ path: '/our-pricing', priority: '0.8', changefreq: 'monthly' },
|
||||
{ path: '/about', priority: '0.7', changefreq: 'monthly' },
|
||||
{ path: '/contact-us', priority: '0.7', changefreq: 'monthly' },
|
||||
{ path: '/terms-and-conditions', priority: '0.3', changefreq: 'yearly' },
|
||||
{ path: '/privacy-policy', priority: '0.3', changefreq: 'yearly' }
|
||||
];
|
||||
|
||||
export const GET: RequestHandler = () => {
|
||||
@@ -19,11 +26,11 @@ export const GET: RequestHandler = () => {
|
||||
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
||||
${routes
|
||||
.map(
|
||||
(path) => ` <url>
|
||||
({ path, priority, changefreq }) => ` <url>
|
||||
<loc>${siteUrl}${path}</loc>
|
||||
<lastmod>${lastmod}</lastmod>
|
||||
<changefreq>${path === '/' ? 'weekly' : 'monthly'}</changefreq>
|
||||
<priority>${path === '/' ? '1.0' : '0.8'}</priority>
|
||||
<changefreq>${changefreq}</changefreq>
|
||||
<priority>${priority}</priority>
|
||||
</url>`
|
||||
)
|
||||
.join('\n')}
|
||||
|
||||
Reference in New Issue
Block a user