feat(doctor): enhance doctor schema with addresses, ratings, and social media links
feat(robots): update disallow rules to include '/panel' feat(sitemap): implement separate sitemaps for doctors, clinics, and blogs feat(icons): add social media icons for doctor profiles
This commit is contained in:
@@ -5,6 +5,19 @@ import LikeDI from "@/components/icons/LikeDI";
|
||||
import StarDI from "@/components/icons/StarDI";
|
||||
import TickCircle from "@/components/icons/TickCircle";
|
||||
import DoctorAvatar from "@/app/component/DoctorAvatar";
|
||||
import Instagram from "@/components/icons/Instagram";
|
||||
import Telegram from "@/components/icons/Telegram";
|
||||
import Aparat from "@/components/icons/Aparat";
|
||||
import Youtube from "@/components/icons/Youtube";
|
||||
import Linkedin from "@/components/icons/Linkedin";
|
||||
|
||||
const SOCIAL_ICONS = {
|
||||
instagram: Instagram,
|
||||
telegram: Telegram,
|
||||
aparat: Aparat,
|
||||
youtube: Youtube,
|
||||
linkedin: Linkedin,
|
||||
};
|
||||
|
||||
function Title({ doctor }) {
|
||||
return (
|
||||
@@ -67,6 +80,26 @@ function Title({ doctor }) {
|
||||
</div>
|
||||
</div>
|
||||
</CustomLoading>
|
||||
{doctor?.social_media && Object.values(doctor.social_media).some(Boolean) && (
|
||||
<div className="flex items-center gap-2">
|
||||
{Object.entries(doctor.social_media).map(([key, url]) => {
|
||||
if (!url) return null;
|
||||
const Icon = SOCIAL_ICONS[key];
|
||||
if (!Icon) return null;
|
||||
return (
|
||||
<a
|
||||
key={key}
|
||||
href={url}
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
className="flex items-center justify-center p-1.5 rounded-full bg-[#F8F8FF]"
|
||||
>
|
||||
<Icon />
|
||||
</a>
|
||||
);
|
||||
})}
|
||||
</div>
|
||||
)}
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
|
||||
Reference in New Issue
Block a user