diff --git a/app/blog/[slug]/page.tsx b/app/blog/[slug]/page.tsx deleted file mode 100644 index 3bd4a5c..0000000 --- a/app/blog/[slug]/page.tsx +++ /dev/null @@ -1,546 +0,0 @@ -import { notFound } from "next/navigation"; -import Link from "next/link"; -import Image from "next/image"; -import { Calendar, Clock, ArrowRight, ArrowLeft } from "lucide-react"; -import { Button } from "@/components/ui/button"; - -// Blog posts data - placeholder content -export const blogPosts: Record< - string, - { - title: string; - content: string; - date: string; - readTime: string; - category: string; - image: string; - } -> = { - "system-integration-guide": { - title: "راهنمای جامع یکپارچه‌سازی سیستم‌ها: از صفر تا صد", - category: "یکپارچه‌سازی", - date: "۱۴۰۳/۰۹/۲۰", - readTime: "۱۲", - image: "/assets/main-pic/4section/Systems Integration.jpg", - content: ` -# راهنمای جامع یکپارچه‌سازی سیستم‌ها: از صفر تا صد - -یکپارچه‌سازی سیستم‌ها یکی از مهم‌ترین مفاهیم در دنیای فناوری اطلاعات و کسب‌وکارهای مدرن است. در این مقاله، به صورت کامل و جامع با این مفهوم آشنا می‌شوید. - -## مقدمه - -در دنیای امروز، کسب‌وکارها از سیستم‌های مختلفی استفاده می‌کنند: CRM، حسابداری، فروش، بازاریابی و... هر کدام از این سیستم‌ها به تنهایی کار می‌کنند، اما مشکل زمانی شروع می‌شود که بخواهیم این سیستم‌ها با یکدیگر ارتباط برقرار کنند. - -## یکپارچه‌سازی چیست؟ - -یکپارچه‌سازی سیستم‌ها به معنای اتصال نرم‌افزارها و سیستم‌های مختلف به یکدیگر است تا داده‌ها و اطلاعات به صورت خودکار و بدون دخالت انسان بین آن‌ها جابه‌جا شوند. - -### مزایای یکپارچه‌سازی - -- کاهش خطای انسانی -- صرفه‌جویی در وقت -- بهبود دقت داده‌ها -- افزایش بهره‌وری - -### چالش‌های پیش رو - -- پیچیدگی فنی -- هزینه‌های اولیه -- نیاز به تخصص -- امنیت اطلاعات - -## انواع یکپارچه‌سازی - -### یکپارچه‌سازی افقی - -این نوع یکپارچه‌سازی شامل اتصال سیستم‌های یک سطح در سازمان است. - -### یکپارچه‌سازی عمودی - -یکپارچه‌سازی عمودی شامل اتصال سیستم‌های مختلف سطوح سازمانی است. - -## نتیجه‌گیری - -یکپارچه‌سازی سیستم‌ها نه تنها یک نیاز، بلکه یک ضرورت برای کسب‌وکارهای مدرن است. با برنامه‌ریزی درست و انتخاب راهکار مناسب، می‌توانید از مزایای آن بهره‌مند شوید. - `, - }, - "automation-best-practices": { - title: "بهترین روش‌های اتوماسیون فرآیندهای کسب‌وکار", - category: "اتوماسیون", - date: "۱۴۰۳/۰۹/۱۵", - readTime: "۱۰", - image: "/assets/main-pic/4section/Process Automation.jpg", - content: ` -# بهترین روش‌های اتوماسیون فرآیندهای کسب‌وکار - -اتوماسیون فرآیندها یکی از مؤثرترین روش‌های بهبود عملکرد و افزایش بهره‌وری در کسب‌وکارهای مدرن است. - -## مقدمه - -در این مقاله، با بهترین روش‌ها و نکات مهم در زمینه اتوماسیون فرآیندهای کسب‌وکار آشنا می‌شوید. - -## اصول اتوماسیون موفق - -### شروع با فرآیندهای ساده - -همیشه بهتر است با فرآیندهای ساده و قابل پیش‌بینی شروع کنید. این کار به شما کمک می‌کند تا تجربه لازم را کسب کنید. - -### تمرکز بر ارزش - -قبل از اتوماسیون هر فرآیندی، مطمئن شوید که این کار ارزش اضافه می‌کند. - -### تست و بهبود مستمر - -اتوماسیون یک فرآیند یکباره نیست. باید به طور مستمر سیستم را تست و بهبود دهید. - -## نتیجه‌گیری - -با رعایت این اصول، می‌توانید فرآیندهای کسب‌وکار خود را به طور مؤثر اتوماسیون کنید. - `, - }, - "social-media-integration": { - title: "یکپارچه‌سازی شبکه‌های اجتماعی: راهنمای عملی", - category: "شبکه‌های اجتماعی", - date: "۱۴۰۳/۰۹/۱۰", - readTime: "۸", - image: "/assets/main-pic/4section/Interaction with Social Networks.jpg", - content: ` -# یکپارچه‌سازی شبکه‌های اجتماعی: راهنمای عملی - -یادگیری نحوه اتصال و مدیریت پلتفرم‌های مختلف شبکه‌های اجتماعی می‌تواند به شما کمک کند تا ارتباط مؤثرتری با مشتریان خود برقرار کنید. - -## مزایای یکپارچه‌سازی شبکه‌های اجتماعی - -- مدیریت متمرکز -- انتشار خودکار محتوا -- نظارت و تحلیل یکپارچه -- بهبود تعامل با مخاطبان - -## راهکارهای عملی - -در این بخش با روش‌های عملی یکپارچه‌سازی شبکه‌های اجتماعی آشنا می‌شوید. - `, - }, - "management-dashboards": { - title: "طراحی و پیاده‌سازی پنل‌های مدیریتی پیشرفته", - category: "مدیریت داده", - date: "۱۴۰۳/۰۹/۰۵", - readTime: "۹", - image: "/assets/main-pic/4section/Powerful Management panels.jpg", - content: ` -# طراحی و پیاده‌سازی پنل‌های مدیریتی پیشرفته - -پنل‌های مدیریتی قدرتمند به شما امکان می‌دهند تا داده‌های خود را به صورت مؤثر مدیریت و تحلیل کنید. - -## ویژگی‌های کلیدی - -پنل‌های مدیریتی پیشرفته باید دارای ویژگی‌های خاصی باشند تا بتوانند نیازهای کاربران را برطرف کنند. - -## طراحی UX/UI - -طراحی تجربه کاربری و رابط کاربری مناسب در موفقیت یک پنل مدیریتی بسیار مهم است. - `, - }, - "api-integration-fundamentals": { - title: "مبانی یکپارچه‌سازی API: راهنمای مبتدیان", - category: "توسعه", - date: "۱۴۰۳/۰۸/۲۸", - readTime: "۷", - image: "/assets/main-pic/4section/Systems Integration.jpg", - content: ` -# مبانی یکپارچه‌سازی API: راهنمای مبتدیان - -APIها پایه و اساس اتصال سیستم‌های مدرن هستند. در این مقاله با مفاهیم پایه آشنا می‌شوید. - -## API چیست؟ - -API یا رابط برنامه‌نویسی کاربردی، به برنامه‌ها اجازه می‌دهد تا با یکدیگر ارتباط برقرار کنند. - -## انواع API - -انواع مختلفی از API وجود دارد که هر کدام برای کاربردهای خاصی طراحی شده‌اند. - `, - }, - "workflow-automation": { - title: "خودکارسازی Workflow: از ایده تا اجرا", - category: "اتوماسیون", - date: "۱۴۰۳/۰۸/۲۰", - readTime: "۱۱", - image: "/assets/main-pic/4section/Process Automation.jpg", - content: ` -# خودکارسازی Workflow: از ایده تا اجرا - -یادگیری نحوه طراحی و پیاده‌سازی workflowهای خودکار می‌تواند به طور قابل توجهی کارایی کسب‌وکار شما را افزایش دهد. - -## مراحل طراحی Workflow - -1. شناسایی فرآیند -2. تحلیل نیازها -3. طراحی workflow -4. پیاده‌سازی -5. تست و بهبود - -## نتیجه‌گیری - -با رعایت این مراحل، می‌توانید workflowهای مؤثری برای کسب‌وکار خود طراحی کنید. - `, - }, -}; - -// Generate static params for all blog posts -export async function generateStaticParams() { - return Object.keys(blogPosts).map((slug) => ({ - slug: slug, - })); -} - -// Generate metadata for SEO -export async function generateMetadata({ - params, -}: { - params: Promise<{ slug: string }> | { slug: string }; -}) { - // Handle both sync and async params - const resolvedParams = - params instanceof Promise ? await params : await Promise.resolve(params); - const post = blogPosts[resolvedParams.slug]; - - if (!post) { - return { - title: "پست یافت نشد", - }; - } - - return { - title: post.title, - description: post.content.substring(0, 160), - }; -} - -export default async function BlogPostPage({ - params, -}: { - params: Promise<{ slug: string }> | { slug: string }; -}) { - // Handle both sync and async params (works with Next.js 13, 14, 15, 16) - const resolvedParams = - params instanceof Promise ? await params : await Promise.resolve(params); - const post = blogPosts[resolvedParams.slug]; - - if (!post) { - notFound(); - } - - return ( - <> - {/* Title Section */} -
-
-
- - - بازگشت به وبلاگ - - -
-
- - {post.category} - -
- -

- {post.title} -

- -
-
- - {post.date} -
-
- - {post.readTime} دقیقه مطالعه -
-
-
-
-
-
- - {/* Featured Image with 3:2 aspect ratio */} -
-
-
- {post.title} -
-
-
- - {/* Content Section */} -
-
-
-
- {(() => { - const lines = post.content.split("\n"); - const elements: JSX.Element[] = []; - let listItems: string[] = []; - let numberedListItems: string[] = []; - let isNumberedList = false; - - lines.forEach((line, index) => { - const trimmedLine = line.trim(); - - // Close lists if empty line - if (!trimmedLine) { - if (listItems.length > 0) { - elements.push( -
    - {listItems.map((item, i) => ( -
  • - {item} -
  • - ))} -
- ); - listItems = []; - } - if (numberedListItems.length > 0) { - elements.push( -
    - {numberedListItems.map((item, i) => ( -
  1. - {item} -
  2. - ))} -
- ); - numberedListItems = []; - isNumberedList = false; - } - return; - } - - // Process numbered lists - if (/^\d+\.\s/.test(trimmedLine)) { - const content = trimmedLine.replace(/^\d+\.\s/, ""); - // Close bullet list if exists - if (listItems.length > 0) { - elements.push( -
    - {listItems.map((item, i) => ( -
  • - {item} -
  • - ))} -
- ); - listItems = []; - } - numberedListItems.push(content); - isNumberedList = true; - return; - } - - // Process bullet lists - if ( - trimmedLine.startsWith("• ") || - trimmedLine.startsWith("- ") || - trimmedLine.startsWith("* ") - ) { - const content = trimmedLine.substring(2); - // Close numbered list if exists - if (numberedListItems.length > 0) { - elements.push( -
    - {numberedListItems.map((item, i) => ( -
  1. - {item} -
  2. - ))} -
- ); - numberedListItems = []; - isNumberedList = false; - } - listItems.push(content); - return; - } - - // Close lists before other content - if (listItems.length > 0) { - elements.push( -
    - {listItems.map((item, i) => ( -
  • - {item} -
  • - ))} -
- ); - listItems = []; - } - if (numberedListItems.length > 0) { - elements.push( -
    - {numberedListItems.map((item, i) => ( -
  1. - {item} -
  2. - ))} -
- ); - numberedListItems = []; - isNumberedList = false; - } - - // Process headings - if (trimmedLine.startsWith("# ")) { - elements.push( -

- {trimmedLine.substring(2)} -

- ); - return; - } - if (trimmedLine.startsWith("## ")) { - elements.push( -

- {trimmedLine.substring(3)} -

- ); - return; - } - if (trimmedLine.startsWith("### ")) { - elements.push( -

- {trimmedLine.substring(4)} -

- ); - return; - } - - // Process links - if (trimmedLine.startsWith("[") && trimmedLine.includes("](")) { - const match = trimmedLine.match(/\[([^\]]+)\]\(([^)]+)\)/); - if (match) { - elements.push( -

- - {match[1]} - -

- ); - return; - } - } - - // Process regular text - elements.push( -

- {trimmedLine} -

- ); - }); - - // Close any remaining lists - if (listItems.length > 0) { - elements.push( -
    - {listItems.map((item, i) => ( -
  • - {item} -
  • - ))} -
- ); - } - if (numberedListItems.length > 0) { - elements.push( -
    - {numberedListItems.map((item, i) => ( -
  1. - {item} -
  2. - ))} -
- ); - } - - return elements; - })()} -
-
-
-
- - {/* Back to Blog */} -
-
-
- -
-
-
- - ); -} - diff --git a/app/blog/page.tsx b/app/blog/page.tsx deleted file mode 100644 index 3679c1c..0000000 --- a/app/blog/page.tsx +++ /dev/null @@ -1,99 +0,0 @@ -import { BlogCard } from "@/components/blog-card"; - -// Blog posts data - placeholder content -const blogPosts = [ - { - slug: "system-integration-guide", - title: "راهنمای جامع یکپارچه‌سازی سیستم‌ها: از صفر تا صد", - excerpt: - "در این مقاله، به بررسی جامع فرآیند یکپارچه‌سازی سیستم‌ها می‌پردازیم. از تعاریف پایه تا روش‌های پیشرفته و بهترین روش‌های پیاده‌سازی را پوشش می‌دهیم.", - date: "۱۴۰۳/۰۹/۲۰", - readTime: "۱۲", - category: "یکپارچه‌سازی", - image: "/assets/main-pic/4section/Systems Integration.jpg", - }, - { - slug: "automation-best-practices", - title: "بهترین روش‌های اتوماسیون فرآیندهای کسب‌وکار", - excerpt: - "اتوماسیون فرآیندها یکی از کلیدی‌ترین راهکارهای بهبود بهره‌وری در کسب‌وکارها است. در این مقاله با اصول، چالش‌ها و راهکارهای عملی آشنا می‌شوید.", - date: "۱۴۰۳/۰۹/۱۵", - readTime: "۱۰", - category: "اتوماسیون", - image: "/assets/main-pic/4section/Process Automation.jpg", - }, - { - slug: "social-media-integration", - title: "یکپارچه‌سازی شبکه‌های اجتماعی: راهنمای عملی", - excerpt: - "یادگیری نحوه اتصال و مدیریت پلتفرم‌های مختلف شبکه‌های اجتماعی می‌تواند به شما کمک کند تا ارتباط مؤثرتری با مشتریان خود برقرار کنید.", - date: "۱۴۰۳/۰۹/۱۰", - readTime: "۸", - category: "شبکه‌های اجتماعی", - image: "/assets/main-pic/4section/Interaction with Social Networks.jpg", - }, - { - slug: "management-dashboards", - title: "طراحی و پیاده‌سازی پنل‌های مدیریتی پیشرفته", - excerpt: - "پنل‌های مدیریتی قدرتمند به شما امکان می‌دهند تا داده‌های خود را به صورت مؤثر مدیریت و تحلیل کنید. در این مقاله ویژگی‌های کلیدی را بررسی می‌کنیم.", - date: "۱۴۰۳/۰۹/۰۵", - readTime: "۹", - category: "مدیریت داده", - image: "/assets/main-pic/4section/Powerful Management panels.jpg", - }, - { - slug: "api-integration-fundamentals", - title: "مبانی یکپارچه‌سازی API: راهنمای مبتدیان", - excerpt: - "APIها پایه و اساس اتصال سیستم‌های مدرن هستند. در این مقاله با مفاهیم پایه، انواع APIها و نحوه استفاده از آن‌ها آشنا می‌شوید.", - date: "۱۴۰۳/۰۸/۲۸", - readTime: "۷", - category: "توسعه", - image: "/assets/main-pic/4section/Systems Integration.jpg", - }, - { - slug: "workflow-automation", - title: "خودکارسازی Workflow: از ایده تا اجرا", - excerpt: - "یادگیری نحوه طراحی و پیاده‌سازی workflowهای خودکار می‌تواند به طور قابل توجهی کارایی کسب‌وکار شما را افزایش دهد.", - date: "۱۴۰۳/۰۸/۲۰", - readTime: "۱۱", - category: "اتوماسیون", - image: "/assets/main-pic/4section/Process Automation.jpg", - }, -]; - -export default function BlogPage() { - return ( - <> - {/* Hero Section */} -
-
-
-

- وبلاگ -

-

- آخرین مقالات، راهنماها و نکات مفید در زمینه یکپارچه‌سازی، اتوماسیون و مدیریت سیستم‌ها -

-
-
-
- - {/* Blog Posts Grid */} -
-
-
- {blogPosts.map((post) => ( - - ))} -
-
-
- - ); -} - - - diff --git a/components/blog-card.tsx b/components/blog-card.tsx deleted file mode 100644 index 3fe8bcb..0000000 --- a/components/blog-card.tsx +++ /dev/null @@ -1,73 +0,0 @@ -import Link from "next/link"; -import Image from "next/image"; -import { Calendar, Clock, ArrowLeft } from "lucide-react"; -import { Card, CardContent, CardFooter, CardHeader } from "@/components/ui/card"; - -interface BlogCardProps { - slug: string; - title: string; - excerpt: string; - date: string; - readTime: string; - category: string; - image: string; -} - -export function BlogCard({ - slug, - title, - excerpt, - date, - readTime, - category, - image, -}: BlogCardProps) { - return ( - - - {/* Image with 3:2 aspect ratio */} -
- {title} - {/* Category Badge */} -
- - {category} - -
-
- - -

- {title} -

-
- - -

- {excerpt} -

-
- - -
- - {date} -
-
- - {readTime} دقیقه -
-
-
- - ); -} - - - diff --git a/components/header.tsx b/components/header.tsx index e056a0f..6696287 100644 --- a/components/header.tsx +++ b/components/header.tsx @@ -12,7 +12,6 @@ const menuItems = [ { name: 'درباره ما', href: '/about' }, { name: 'راه حل‌ها', href: '/solutions' }, { name: 'قیمت‌گذاری', href: '/pricing' }, - { name: 'وبلاگ', href: '/blog' }, ] export const HeroHeader = () => { diff --git a/components/pricing.tsx b/components/pricing.tsx index 848a1c4..e874e5f 100644 --- a/components/pricing.tsx +++ b/components/pricing.tsx @@ -18,7 +18,7 @@ export default function Pricing() {

راه‌حل‌های ما از ۲ میلیون تومان شروع می‌شوند و بر اساس نیازهای دقیق شما محاسبه می‌گردند. -

+