Files
reui-blocks/blocks/content1.tsx
T

265 lines
11 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
"use client";
import {
AlignLeft,
GalleryVerticalEnd,
Lightbulb,
ListChecks,
RefreshCcw,
} from "lucide-react";
import { useEffect, useRef, useState } from "react";
import { Alert, AlertDescription, AlertTitle } from "@/components/ui/alert";
import { Badge } from "@/components/ui/badge";
import { cn } from "@/lib/utils";
interface Content1Props {
className?: string;
}
const faNum = (value: number) => value.toLocaleString("fa-IR");
const Content1 = ({ className }: Content1Props) => {
const [activeSection, setActiveSection] = useState<string | null>(null);
const sectionRefs = useRef<Record<string, HTMLElement>>({});
useEffect(() => {
const sections = Object.keys(sectionRefs.current);
const observerCallback = (entries: IntersectionObserverEntry[]) => {
entries.forEach((entry) => {
if (entry.isIntersecting) {
setActiveSection(entry.target.id);
}
});
};
let observer: IntersectionObserver | null = new IntersectionObserver(
observerCallback,
{
root: null,
rootMargin: "0px",
threshold: 1,
},
);
sections.forEach((sectionId) => {
const element = sectionRefs.current[sectionId];
if (element) {
observer?.observe(element);
}
});
return () => {
observer?.disconnect();
observer = null;
};
}, []);
const addSectionRef = (id: string, ref: HTMLElement | null) => {
if (ref) {
sectionRefs.current[id] = ref;
}
};
return (
<section dir="rtl" lang="fa" className={cn("py-32", className)}>
<div className="container max-w-7xl">
<div className="relative grid-cols-3 gap-20 lg:grid">
<div className="lg:col-span-2">
<div>
<Badge variant="outline">خودکارسازی بازاریابی</Badge>
<h1 className="mt-3 text-3xl font-extrabold">چگونه نرخ تبدیل لیدها را با اتوماسیون ایمیل افزایش دهید</h1>
<p className="mt-2 text-lg text-muted-foreground">
تیم‌های فروش B2B با پیاده‌سازی جریان‌های ایمیل هدفمند و امتیازدهی لید، میانگین نرخ تبدیل خود را تا ۳۵٪ بهبود داده‌اند. این راهنما مراحل عملی راه‌اندازی را توضیح می‌دهد.
</p>
<img
src="/block-media/shadcnblocks/block/placeholder-1.svg"
alt="تصویر مقاله"
className="my-8 aspect-video w-full rounded-md object-cover"
/>
</div>
<section
id="section1"
ref={(ref) => addSectionRef("section1", ref)}
className="prose mb-8 text-start dark:prose-invert"
>
<h2>راه‌اندازی جریان ایمیل</h2>
<div className="ms-3.5">
<div className="relative flex items-start pb-2">
<div className="absolute top-[2.75rem] h-[calc(100%-2.75rem)] w-px bg-border/70"></div>
<div className="absolute -ms-3.5 py-2">
<div className="flex size-7 shrink-0 items-center justify-center rounded-lg bg-muted">
<RefreshCcw className="h-3.5 w-3.5" />
</div>
</div>
<div className="ps-12">
<h3 className="mt-2 text-base font-semibold">
بخش‌بندی مخاطبان
</h3>
<p>
لیدها را بر اساس صنعت، اندازه شرکت و مرحله قیف فروش دسته‌بندی کنید تا هر گروه پیام متناسب دریافت کند.
</p>
</div>
</div>
<div className="relative flex items-start pb-2">
<div className="absolute top-[2.75rem] h-[calc(100%-2.75rem)] w-px bg-border/70"></div>
<div className="absolute -ms-3.5 py-2">
<div className="flex size-7 shrink-0 items-center justify-center rounded-lg bg-muted">
<GalleryVerticalEnd className="h-3.5 w-3.5" />
</div>
</div>
<div className="ps-12">
<h3 className="mt-2 text-base font-semibold">
طراحی دنباله ایمیل
</h3>
<p>
برای هر بخش، دنباله‌ای از ۳ تا ۵ ایمیل با فاصله زمانی مشخص طراحی کنید؛ از معرفی محصول تا دعوت به دمو زنده.
</p>
</div>
</div>
<div className="relative flex items-start pb-2">
<div className="absolute top-[2.75rem] h-[calc(100%-2.75rem)] w-px bg-border/70"></div>
<div className="absolute -ms-3.5 py-2">
<div className="flex size-7 shrink-0 items-center justify-center rounded-lg bg-muted">
<ListChecks className="h-3.5 w-3.5" />
</div>
</div>
<div className="ps-12">
<h3 className="mt-2 text-base font-semibold">فعال‌سازی و پایش</h3>
<p>
جریان را فعال کنید و نرخ باز شدن، کلیک و تبدیل را در داشبورد سامانه مدیریت ارتباط با مشتری روزانه بررسی کنید.
</p>
</div>
</div>
</div>
</section>
<section
id="section2"
ref={(ref) => addSectionRef("section2", ref)}
className="prose mb-8 text-start dark:prose-invert"
>
<h2>نتایج کمپین</h2>
<p>
پس از ۹۰ روز اجرای جریان ایمیل، تیم فروش CloudStar شاهد بهبود قابل‌توجهی در معیارهای کلیدی بود.
</p>
<div>
<table>
<thead>
<tr>
<th>تعداد لید</th>
<th>نرخ تبدیل</th>
</tr>
</thead>
<tbody>
<tr>
<td>{faNum(120)}</td>
<td>{faNum(8)}٪</td>
</tr>
<tr className="m-0 border-t p-0 even:bg-muted">
<td>{faNum(340)}</td>
<td>{faNum(14)}٪</td>
</tr>
<tr className="m-0 border-t p-0 even:bg-muted">
<td>{faNum(520)}</td>
<td>{faNum(22)}٪</td>
</tr>
</tbody>
</table>
</div>
<p>
لیدهایی که حداقل ۳ ایمیل از دنباله را باز کرده بودند، ۲.۸ برابر بیشتر احتمال تبدیل به مشتری داشتند.
</p>
<Alert>
<Lightbulb className="h-4 w-4" />
<AlertTitle>نکته عملی</AlertTitle>
<AlertDescription>
ایمیل‌های با موضوع شخصی‌سازی‌شده (نام شرکت مخاطب) نرخ باز شدن ۴۲٪ بالاتری نسبت به قالب‌های عمومی داشتند.
</AlertDescription>
</Alert>
</section>
<section
id="section3"
ref={(ref) => addSectionRef("section3", ref)}
className="prose mb-8 text-start dark:prose-invert"
>
<h2>امتیازدهی لید</h2>
<p>
تیم بازاریابی CloudStar با{" "}
<a href="#">مدل امتیازدهی رفتاری</a> لیدهای آماده خرید را شناسایی کرد.
</p>
<blockquote>
لیدهایی که صفحه قیمت را بازدید کرده و وایت‌پیپر را دانلود کرده‌اند، اولویت تماس فروش را دریافت می‌کنند.
</blockquote>
<p>
معیارهای امتیازدهی بر اساس تعامل دیجیتال تعریف شد:
</p>
<ul>
<li>بازدید صفحه قیمت: {faNum(15)} امتیاز</li>
<li>دانلود وایت‌پیپر: {faNum(10)} امتیاز</li>
<li>شرکت در وبینار: {faNum(25)} امتیاز</li>
</ul>
<p>
لیدهایی با امتیاز بالای {faNum(30)} به‌صورت خودکار به نماینده فروش اختصاص داده می‌شوند و زمان پاسخ‌گویی به کمتر از ۲ ساعت رسید.
</p>
</section>
</div>
<div className="sticky top-8 hidden h-fit lg:block">
<span className="flex items-center gap-2 text-sm">
<AlignLeft className="h-4 w-4" />
در این صفحه
</span>
<nav className="mt-2 text-sm" aria-label="فهرست مطالب">
<ul>
<li>
<a
href="#section1"
className={cn(
"block py-1 transition-colors duration-200",
activeSection === "section1"
? "font-medium text-primary"
: "text-muted-foreground hover:text-primary",
)}
>
راه‌اندازی جریان ایمیل
</a>
</li>
<li>
<a
href="#section2"
className={cn(
"block py-1 transition-colors duration-200",
activeSection === "section2"
? "font-medium text-primary"
: "text-muted-foreground hover:text-primary",
)}
>
نتایج کمپین
</a>
</li>
<li>
<a
href="#section3"
className={cn(
"block py-1 transition-colors duration-200",
activeSection === "section3"
? "font-medium text-primary"
: "text-muted-foreground hover:text-primary",
)}
>
امتیازدهی لید
</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
</section>
);
};
export { Content1 };