توسعه وبسایت با CMS
توضیحات
بعد از تأیید طراحی، سایت رو پیادهسازی میکنیم؛ نه اینکه صرفاً یک قالب آماده رو برداریم و لوگوی شما رو جاش بذاریم. در نهایت، کدهای سایت رو تحویل میگیرید تا توسعهدهندههای دیگه هم بتونن ادامه کار رو انجام بدن و تیم خودتون بتونه محتوا رو از طریق CMS مدیریت کنه.
CMS رو بر اساس نیازهای پروژه انتخاب میکنیم، نه بر اساس ابزاری که بخوایم به هر قیمتی به شما بفروشیم:
- سایتهای محتوایی کوچک و پروژههایی با بودجه محدود
برای سایتهای سادهتر، میتونیم از CMSهای مبتنی بر Git مثل Sveltia استفاده کنیم. در این روش، محتوا داخل مخزن کد نگهداری میشه و به پایگاه داده جداگانهای روی سرور نیاز نداریم. در نتیجه، در صورت سازگاری پروژه با محدودیتهای سرویس میزبانی، میشه هزینه هاست رو هم پایین نگه داشت. از همین روش در پروژه BSquare استفاده کردیم.
- پروژههای ساختاریافته، چندزبانه یا در حال توسعه
برای پروژههایی که ساختار محتوایی پیچیدهتری دارن یا قراره در آینده گسترش پیدا کنن، از Payload CMS در کنار Next.js استفاده میکنیم. این ترکیب امکان تعریف مجموعههای محتوایی، ارتباط بین دادهها، فیلدهای چندزبانه و یک پنل مدیریت کاربردی رو فراهم میکنه.
از این روش در پروژههای Namayandegi Yab و سایت فعلی Bscenius استفاده کردیم.
- وردپرس، وقتی انتخاب مناسبی برای پروژه باشه
اگه محتوای فعلی سایت به وردپرس وابسته باشه، تیم شما از قبل با اون کار کنه یا محدودیتهای پروژه استفاده ازش رو منطقیتر کنن، وردپرس رو هم در نظر میگیریم. هدف اینه که ابزار مناسب پروژه رو انتخاب کنیم، نه اینکه بیدلیل با شرایط موجود بجنگیم.
بخش فرانتاند سایت رو طوری پیادهسازی میکنیم که به ساختار داخلی CMS وابستگی زیادی نداشته باشه. با استفاده از TypeScript و یک لایه تبدیل داده، ارتباط بین رابط کاربری و اطلاعات دریافتی از CMS رو مدیریت میکنیم. این کار به ما اجازه میده طراحی رابط کاربری رو حتی قبل از آماده شدن بکاند شروع کنیم و در صورت تغییر منبع داده، بدون نیاز به بازنویسی کل سایت، تغییرات لازم رو انجام بدیم.
روش کارمون رو هم در مستند «از تعریف نوع داده تا استفاده در پروژه واقعی» توضیح دادیم.
آموزش کار با سایت هم بخشی از تحویل پروژهست. بعد از تسویه حساب، کدهای پروژه متعلق به شماست. اگه بعد از راهاندازی هم برای نگهداری یا بهروزرسانی سایت به کمک نیاز داشته باشید، میتونید از خدمات پشتیبانی ما استفاده کنید.
چه چیزی شامل میشود
- کدهای قابل توسعه و نگهداریاستفاده از Next.js، TypeScript و کامپوننتهای واقعی بهجای محدود شدن به یک صفحهساز بسته. کدها ساختار مشخصی دارن و توسعهدهنده دیگه هم میتونه کار رو از همونجا ادامه بده.
- سیستم مدیریت محتوای متناسب با نیاز پروژهبرای سایتهای ساده، CMS مبتنی بر Git؛ برای پروژههای ساختاریافته و چندزبانه، Payload؛ و در صورت نیاز، وردپرس. انتخاب نهایی بر اساس بودجه و نیازهای واقعی شما انجام میشه.
- آموزش مدیریت محتوانحوه کار با پنل رو به کسی آموزش میدیم که قراره واقعاً ازش استفاده کنه. آموزش رو تا جایی ادامه میدیم که بتونه بدون کمک ما یک صفحه جدید منتشر کنه.
- مالکیت کامل پس از تسویه حسابکدهای پروژه، مخزن کد و سیستم مدیریت محتوای سایت در اختیار شما قرار میگیرن. برای استفاده و مدیریت سایت مجبور نیستید برای همیشه به ما وابسته بمونید.
چالش
بسیاری از سایتهای شرکتی کند هستن، بهروزرسانی محتواشون سخته و اونطور که باید، لحن و هویت خود کسبوکار رو نشون نمیدن. یکی از دلایلش اینه که سایت با یک قالب آماده یا صفحهسازی ساخته شده که حتی اعضای تیم هم تمایلی به کار کردن باهاش ندارن.
ما با سایت مثل یک محصول واقعی برخورد میکنیم؛ یعنی از ابتدا هدفهای مشخصی براش تعریف میکنیم، CMS رو متناسب با شیوه کار شما انتخاب میکنیم و تا زمان تحویل نهایی، مسئولیت اجرای پروژه رو بر عهده میگیریم. بعد از تحویل هم نباید برای تغییر یک عنوان، اضافه کردن یک خدمت یا انتشار یک نمونهکار به توسعهدهنده نیاز داشته باشید.
کاری که انجام میدهیم
- ساخت سایت با امکان مدیریت مستقلاز ابزارهای متنباز و استاندارد استفاده میکنیم تا کنترل سایت در اختیار شما باشه. هر زمان که بخواید، میتونید ادامه توسعه رو به یک توسعهدهنده دیگه بسپارید و سایت همچنان قابل استفاده باشه.
- انتخاب CMS متناسب با پروژهنیازهای یک سایت شرکتی کوچک با یک دایرکتوری بزرگ که ارتباط بین دادهها و امکان تبدیل شدن به یک مارکتپلیس رو داره، یکسان نیست. ما هم سیستم مدیریت محتوا رو بر همین اساس انتخاب میکنیم.
- مستندسازی ساختار فنیالگوها و روشهایی که در پروژههامون استفاده میکنیم، در بخش مستندات سایت توضیح داده شدن. میتونید با ساختار فنی کار آشنا بشید و بدون وابستگی به اطلاعاتی که فقط نزد ماست، پروژه رو ادامه بدید.
فرآیند ما
- 01
آمادهسازی زیرساخت
CMS، ساختار مجموعههای محتوایی و قراردادهای دادهای موردنیاز فرانتاند رو مشخص میکنیم. تنظیمات مربوط به تصاویر، زبانها و فیلدهای سئو هم در همین مرحله انجام میشن.
- 02
اتصال طراحی به محتوای واقعی
طرح تأییدشده رو به اطلاعات واقعی سایت متصل میکنیم. حالتهایی مثل خالی بودن یک فیلد یا در دسترس نبودن بعضی اطلاعات رو هم در نظر میگیریم تا سایت در این شرایط به مشکل نخوره.
- 03
آموزش مدیریت سایت
نحوه انتشار محتوا، ویرایش فیلدهای سئو و کار با پنل مدیریت رو آموزش میدیم. راهنمای مکتوب هم در اختیارتون قرار میگیره تا بعداً بتونید بهش مراجعه کنید.
- 04
تحویل نهایی
دسترسی مخزن کد، تنظیمات محیط اجرا و اطلاعات لازم برای ادامه کار رو تحویل میدیم. در صورت نیاز میتونید برای دورهای مشخص، خدمات پشتیبانی هم دریافت کنید؛ یا مدیریت سایت رو کاملاً خودتون بر عهده بگیرید.
چرا ما را انتخاب کنید
وابسته به یک تیم خاص نمیمونید
Next.js، Payload و CMSهای مبتنی بر Git ابزارهای استانداردی هستن. بنابراین، توسعهدهنده دیگهای که با این ابزارها آشنا باشه هم میتونه پروژه رو تحویل بگیره و ادامه بده.
همون افرادی که پروژه رو برنامهریزی میکنن، اون رو میسازن
تیم ما دو نفرهست و افرادی که درباره ساختار و نیازهای پروژه تصمیم میگیرن، خودشون هم در اجرای اون نقش دارن. پروژه شما قرار نیست به تمرینی برای یادگیری یک توسعهدهنده تازهکار تبدیل بشه.
محدوده و هزینه مشخص
هزینه بر اساس محدوده توافقشده پروژه تعیین میشه. اگه در ادامه به قابلیت جدیدی نیاز داشته باشید، قبل از شروع کار درباره جزئیات و هزینه اضافی با شما صحبت میکنیم.
سوالات متداول
سیستمی رو انتخاب میکنیم که با بودجه و نیازهای پروژه سازگار باشه. برای سایتهای ساده از CMSهای مبتنی بر Git مثل Sveltia استفاده میکنیم؛ برای پروژههای ساختاریافته و چندزبانه، Payload رو در نظر میگیریم؛ و اگر وردپرس از قبل انتخاب مناسبی برای پروژه باشه، از همون استفاده میکنیم. برای یک سایت ساده پنجصفحهای، بیدلیل سراغ راهکار پیچیدهتر نمیریم.