The pages that were not indexed have been redirected to the correct pages, and this correction has been updated in the .htaccess file.
This commit is contained in:
parent
3b77a9bdbb
commit
a834aee37a
24
.htaccess
Normal file
24
.htaccess
Normal file
@ -0,0 +1,24 @@
|
||||
# Enable rewrite engine
|
||||
RewriteEngine On
|
||||
|
||||
# --- SERVICES ---
|
||||
RedirectMatch 301 ^/etobicoke-treatment-service/cardiac-rehabilitation-etobicoke/?$ /etobicoke-treatment-service/cardiac-rehabilitation-in-etobicoke/
|
||||
RedirectMatch 301 ^/etobicoke-treatment-service/compression-stockings-etobicoke/?$ /etobicoke-treatment-service/compression-stockings-in-etobicoke/
|
||||
RedirectMatch 301 ^/etobicoke-treatment-service/cranio-sacral-therapy-etobicoke/?$ /etobicoke-treatment-service/cranio-sacral-therapy-in-etobicoke/
|
||||
RedirectMatch 301 ^/etobicoke-treatment-service/cupping-therapy-etobicoke/?$ /etobicoke-treatment-service/cupping-therapy-in-etobicoke/
|
||||
RedirectMatch 301 ^/etobicoke-treatment-service/fascial-stretch-therapy-etobicoke/?$ /etobicoke-treatment-service/fascial-stretch-therapy-in-etobicoke/
|
||||
RedirectMatch 301 ^/etobicoke-treatment-service/gait-assessment-etobicoke/?$ /etobicoke-treatment-service/gait-assessment-in-etobicoke/
|
||||
RedirectMatch 301 ^/etobicoke-treatment-service/intramuscular-stimulation-ims-etobicoke/?$ /etobicoke-treatment-service/intramuscular-stimulation-ims-in-etobicoke/
|
||||
RedirectMatch 301 ^/etobicoke-treatment-service/kids-physiotherapy-etobicoke/?$ /etobicoke-treatment-service/kids-physiotherapy-in-etobicoke/
|
||||
RedirectMatch 301 ^/etobicoke-treatment-service/motor-vehicle-accident-rehabilitation-etobicoke/?$ /etobicoke-treatment-service/motor-vehicle-accident-rehabilitation-in-etobicoke/
|
||||
RedirectMatch 301 ^/etobicoke-treatment-service/neuro-fascial-therapy-etobicoke/?$ /etobicoke-treatment-service/neuro-fascial-therapy-in-etobicoke/
|
||||
RedirectMatch 301 ^/etobicoke-treatment-service/orthotics-etobicoke/?$ /etobicoke-treatment-service/orthotics-in-etobicoke/
|
||||
RedirectMatch 301 ^/etobicoke-treatment-service/pre-post-operative-management-etobicoke/?$ /etobicoke-treatment-service/prepost-operative-management-clinic-in-etobicoke/
|
||||
RedirectMatch 301 ^/etobicoke-treatment-service/psychotherapy-etobicoke/?$ /etobicoke-treatment-service/psychotherapy-in-etobicoke/
|
||||
RedirectMatch 301 ^/etobicoke-treatment-service/shiatsu-therapy-etobicoke/?$ /etobicoke-treatment-service/shiatsu-therapy-in-etobicoke/
|
||||
RedirectMatch 301 ^/etobicoke-treatment-service/shockwave-therapy-etobicoke/?$ /etobicoke-treatment-service/shockwave-therapy-in-etobicoke/
|
||||
RedirectMatch 301 ^/etobicoke-treatment-service/surgical-rehab-etobicoke/?$ /etobicoke-treatment-service/surgical-rehab-in-etobicoke/
|
||||
RedirectMatch 301 ^/etobicoke-treatment-service/deep-tissue-massage-etobicoke/?$ /etobicoke-treatment-service/deep-tissue-massage-in-etobicoke/
|
||||
|
||||
# --- OTHER PAGES ---
|
||||
RedirectMatch 301 ^/ourapproach-physiotherapy-etobicoke/?$ /our-approach-physiotherapy-etobicoke/
|
||||
@ -3,10 +3,35 @@ import Link from "next/link";
|
||||
import { notFound } from "next/navigation";
|
||||
import { servicesList } from "@/utils/Services.utils";
|
||||
|
||||
const notFoundSlugs = [
|
||||
"cardiac-rehabilitation-etobicoke",
|
||||
"compression-stockings-etobicoke",
|
||||
"cranio-sacral-therapy-etobicoke",
|
||||
"cupping-therapy-etobicoke",
|
||||
"fascial-stretch-therapy-etobicoke",
|
||||
"gait-assessment-etobicoke",
|
||||
"intramuscular-stimulation-ims-etobicoke",
|
||||
"kids-physiotherapy-etobicoke",
|
||||
"motor-vehicle-accident-rehabilitation-etobicoke",
|
||||
"neuro-fascial-therapy-etobicoke",
|
||||
"orthotics-etobicoke",
|
||||
"pre-post-operative-management-etobicoke",
|
||||
"psychotherapy-etobicoke",
|
||||
"shiatsu-therapy-etobicoke",
|
||||
"shockwave-therapy-etobicoke",
|
||||
"surgical-rehab-etobicoke",
|
||||
"deep-tissue-massage-etobicoke",
|
||||
|
||||
];
|
||||
|
||||
|
||||
export async function generateStaticParams() {
|
||||
return servicesList.map((item) => ({
|
||||
slug: item.slug,
|
||||
}));
|
||||
const serviceParams = servicesList.map(item => ({ slug: item.slug }));
|
||||
|
||||
const redirectParams = notFoundSlugs.map(slug => ({ slug }));
|
||||
|
||||
// combine both arrays
|
||||
return [...serviceParams, ...redirectParams];
|
||||
}
|
||||
|
||||
export async function generateMetadata({ params }) {
|
||||
@ -52,12 +77,12 @@ export default function ServiceDetailPage({ params }) {
|
||||
</div>
|
||||
<div className="widget-content">
|
||||
<ul className="category-list clearfix">
|
||||
{servicesList.map((item) => (
|
||||
<li key={item.slug}>
|
||||
{servicesList.map((item, index) => (
|
||||
<li key={index}>
|
||||
<Link
|
||||
href={`/etobicoke-treatment-service/${item.slug}`}
|
||||
className={item.slug === service.slug ? "current" : ""}
|
||||
aria-label="Etobicoke treatment service">
|
||||
aria-label="Etobicoke treatment service">
|
||||
{item.shortTitle}
|
||||
</Link>
|
||||
</li>
|
||||
@ -89,7 +114,7 @@ export default function ServiceDetailPage({ params }) {
|
||||
<div className="service-details-content">
|
||||
<div className="content-one mb_60">
|
||||
<figure className="image-box mb_40">
|
||||
<img src={service.bigImg} alt={altText} loading="lazy"/>
|
||||
<img src={service.bigImg} alt={altText} loading="lazy" />
|
||||
</figure>
|
||||
<div
|
||||
className="service-details-description"
|
||||
|
||||
108
next.config.js
108
next.config.js
@ -11,114 +11,6 @@ const nextConfig = {
|
||||
// modern: true, // ✅ enable modern build (ES6+ for modern browsers)
|
||||
// polyfillsOptimization: true // ✅ remove unnecessary polyfills
|
||||
// },
|
||||
async redirects() {
|
||||
return [
|
||||
// --- SERVICES ---
|
||||
{
|
||||
source: "/etobicoke-treatment-service/cardiac-rehabilitation-etobicoke/",
|
||||
destination: "/etobicoke-treatment-service/cardiac-rehabilitation-in-etobicoke/",
|
||||
permanent: true,
|
||||
},
|
||||
{
|
||||
source: "/etobicoke-treatment-service/compression-stockings-etobicoke/",
|
||||
destination: "/etobicoke-treatment-service/compression-stockings-in-etobicoke/",
|
||||
permanent: true,
|
||||
},
|
||||
{
|
||||
source: "/etobicoke-treatment-service/cranio-sacral-therapy-etobicoke/",
|
||||
destination: "/etobicoke-treatment-service/cranio-sacral-therapy-in-etobicoke/",
|
||||
permanent: true,
|
||||
},
|
||||
{
|
||||
source: "/etobicoke-treatment-service/cupping-therapy-etobicoke/",
|
||||
destination: "/etobicoke-treatment-service/cupping-therapy-in-etobicoke/",
|
||||
permanent: true,
|
||||
},
|
||||
{
|
||||
source: "/etobicoke-treatment-service/fascial-stretch-therapy-etobicoke/",
|
||||
destination: "/etobicoke-treatment-service/fascial-stretch-therapy-in-etobicoke/",
|
||||
permanent: true,
|
||||
},
|
||||
{
|
||||
source: "/etobicoke-treatment-service/gait-assessment-etobicoke/",
|
||||
destination: "/etobicoke-treatment-service/gait-assessment-in-etobicoke/",
|
||||
permanent: true,
|
||||
},
|
||||
{
|
||||
source: "/etobicoke-treatment-service/intramuscular-stimulation-ims-etobicoke/",
|
||||
destination: "/etobicoke-treatment-service/intramuscular-stimulation-ims-in-etobicoke/",
|
||||
permanent: true,
|
||||
},
|
||||
{
|
||||
source: "/etobicoke-treatment-service/kids-physiotherapy-etobicoke/",
|
||||
destination: "/etobicoke-treatment-service/kids-physiotherapy-in-etobicoke/",
|
||||
permanent: true,
|
||||
},
|
||||
{
|
||||
source: "/etobicoke-treatment-service/motor-vehicle-accident-rehabilitation-etobicoke/",
|
||||
destination: "/etobicoke-treatment-service/motor-vehicle-accident-rehabilitation-in-etobicoke/",
|
||||
permanent: true,
|
||||
},
|
||||
{
|
||||
source: "/etobicoke-treatment-service/neuro-fascial-therapy-etobicoke/",
|
||||
destination: "/etobicoke-treatment-service/neuro-fascial-therapy-in-etobicoke/",
|
||||
permanent: true,
|
||||
},
|
||||
{
|
||||
source: "/etobicoke-treatment-service/orthotics-etobicoke/",
|
||||
destination: "/etobicoke-treatment-service/orthotics-in-etobicoke/",
|
||||
permanent: true,
|
||||
},
|
||||
{
|
||||
source: "/etobicoke-treatment-service/pre-post-operative-management-etobicoke/",
|
||||
destination: "/etobicoke-treatment-service/prepost-operative-management-clinic-in-etobicoke/",
|
||||
permanent: true,
|
||||
},
|
||||
{
|
||||
source: "/etobicoke-treatment-service/psychotherapy-etobicoke/",
|
||||
destination: "/etobicoke-treatment-service/psychotherapy-in-etobicoke/",
|
||||
permanent: true,
|
||||
},
|
||||
{
|
||||
source: "/etobicoke-treatment-service/shiatsu-therapy-etobicoke/",
|
||||
destination: "/etobicoke-treatment-service/shiatsu-therapy-in-etobicoke/",
|
||||
permanent: true,
|
||||
},
|
||||
{
|
||||
source: "/etobicoke-treatment-service/shockwave-therapy-etobicoke/",
|
||||
destination: "/etobicoke-treatment-service/shockwave-therapy-in-etobicoke/",
|
||||
permanent: true,
|
||||
},
|
||||
{
|
||||
source: "/etobicoke-treatment-service/surgical-rehab-etobicoke/",
|
||||
destination: "/etobicoke-treatment-service/surgical-rehab-in-etobicoke/",
|
||||
permanent: true,
|
||||
},
|
||||
{
|
||||
source: "/etobicoke-treatment-service/deep-tissue-massage-etobicoke/",
|
||||
destination: "/etobicoke-treatment-service/deep-tissue-massage-in-etobicoke/",
|
||||
permanent: true,
|
||||
},
|
||||
|
||||
{
|
||||
source: "/ourapproach-physiotherapy-etobicoke/",
|
||||
destination: "/our-approach-physiotherapy-etobicoke/",
|
||||
permanent: true,
|
||||
},
|
||||
|
||||
// --- TEAM PAGES ---
|
||||
{
|
||||
source: "/our-team-physiotherapy-etobicoke/chandra-babu/",
|
||||
destination: "/our-team-physiotherapy-etobicoke/chandra-babu-in-etobicoke/",
|
||||
permanent: true,
|
||||
},
|
||||
{
|
||||
source: "/our-team-physiotherapy-etobicoke/jo-anne/",
|
||||
destination: "/our-team-physiotherapy-etobicoke/jo-anne-in-etobicoke/",
|
||||
permanent: true,
|
||||
},
|
||||
];
|
||||
},
|
||||
|
||||
async headers() {
|
||||
return [
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user