معرفی RefineryCMS – سیستم مدیریت محتوای مبتنی بر Ruby

گردآوری و تالیف : ارسطو عباسی
تاریخ انتشار : 08 تیر 1398
دسته بندی ها : برنامه نویسی

تصمیم آنکه روی چه ابزارهایی کار بکنید می‌تواند تاثیر بسیار بزرگی روی کار، زمان و نتیجه نهایی‌تان بگذارد. 

همواره سعی کنید قبل از انتخاب راه‌حل‌های محبوب، به دیگر گزینه‌ها نیز نگاهی بیاندازید. این ایده خوبی است تا با امکانات متفاوتی آشنا شوید. در این مطلب قصد داریم یک سیستم مدیریت محتوای بسیار کاربردی که می‌تواند جایگزینی برای وردپرس و دروپال باشد را معرفی کنیم. نام این سیستم مدیریت محتوا RefineryCMS است. این سیستم با استفاده از زبان Ruby نوشته شده، بنابراین اگر با این زبان آشنایی داشته باشید می‌توانید به خوبی با آن کار بکنید. البته دانستن روبی برای ساختن وبسایت با استفاده از این سیستم اجباری نیست، اما با دانستن روبی می‌شود روی توسعه آن کار کرد. درست مانند آنکه شما با PHP می‌توانید برای وردپرس پلاگین و… بنویسید.

اما بیایید یک قدم به عقب برگشته و ابتدا با تعریفی بسیار ساده از CMS همراه شویم. CMS یا Content Management System به فارسی معادل سیستم مدیریت محتوا، ابزاری است که با استفاده از آن می‌توانید محتوای دیجیتالی یک وبسایت را ایجاد و یا ویرایش کرد. در حقیقت هر وبسایتی که از یک پنل مدیریت برخوردار باشد، به یک سیستم مدیریت محتوا نیز دسترسی دارد. حال ممکن است این سیستم مدیریت محتوا را خود صاحب سایت نوشته باشد و یا آنکه ممکن است از موارد آماده استفاده بکند. از محبوب‌ترین سیستم‌های مدیریت محتوا در دنیا می‌توان به وردپرس و دروپال اشاره کرد، اما گزینه‌های بسیار زیاد دیگری نیز هستند که می‌توانند در مقیاس‌های متفاوت‌تری به شما کمک بکنند. با استفاده از یک سیستم مدیریت محتوا شما می‌توانید وبلاگ، فروشگاه، وبسایت خبری و… را بسازید. بنابراین در زمان انتخاب یک ابزار بسیار مهم است که قابلیت‌های آن را بشناسید.

نصب و ویژگی‌های داخلی

در حال حاضر آخرین نسخه پایدار موجود برای این ابزار 4.0.3 است. RefineryCMS بیشتر از 384 مشارکت کننده در گیت‌هاب دارد، از این رو ویژگی‌های جدید بسیار زیادی نیز به آن اضافه می‌شود که هنوز در مرحله پایدار قرار نگرفته‌اند. 

یکی از ویژگی‌های بسیار خوب این ابزار، وجود مستندات روشن و ساده آن است. ما در اینجا قصد نداریم وارد جزئیات آن شویم، اما با یک نگاه به آن متوجه خواهید شد که پیاده‌سازی آن کار چندان سختی نیست. 

شما دو راه برای نصب این ابزار در پیش رو دارید. راه اول این است که آن را به عنوان یک پروژه موجود روبی استفاده کنید و راهکار دوم آن است که به شیوه یک اپلیکیشن مستقل از آن بهره بگیرید.

در هر صورت ما بعد از نصب نیاز خواهیم داشت تا یکسری از پلاگین‌های استاندارد این سیستم را نیز نصب کنیم. سه مورد مهم این پلاگین‌ها عبارتند از موارد زیر:

  • refineryCMS-authentication-device – برای احراز هویت کاربران.
  • RefineryCMS-wymeditor – برای آوردن قابلیت‌های ویرایش بصری در فرایند ساخت مطالب.
  • RefineryCMS-acts-as-indexed – برای پیاده‌سازی قابلیت جستجو در رابط کاربری ادمین.

یکی از ویژگی‌های داخلی این سیستم مدیریت محتوا برای مدیریت برگه‌های وبسایت (که البته به صورت پیشفرض در آن ادیتور WYSIWYG وجود ندارد) به شما در ساخت صفحات ایستا کمک می‌کند. با استفاده از این قابلیت شما قادر خواهید بود تا کارهای زیر را انجام دهید:

  • آپلود فایل‌ها با قابلیت پشتیبانی از تصاویر
  • تعیین ساختار سلسله‌ای برای محتوا
  • افزودن متا داده به محتوا در جهت بهینه‌سازی برای موتورهای جستجوگر
  • قابلیت استفاده از قالب‌های سفارشی برای یک برگه منحصر به فرد
  • لینک‌دهی به برگه در قسمت ناوبری وبسایت
  • تعیین URL برای برگه‌های زیرین

ویژگی‌هایی نیز در رابط کاربری این ابزار وجود دارد که به صورت پیشفرض موجود نیستند، اما نصب و فعال‌سازی آن‌ها بسیار ساده است:

  • استفاده از ابزار Google Analytics در این ابزار محدود شده، اما قابلیت‌های ادغام‌سازی برای استفاده کامل وجود دارد که می‌توانید از آن استفاده کنید.
  • افزودن فایل ترجمه برای محتوای یک برگه.

سفارشی‌سازی و افزونه‌ها

بیایید صادق باشیم، ظاهر صفحه اول وبسایت بعد از نصب کردن refineryCMS بسیار بد است، اما راه‌حل‌هایی برای درست کردن آن نیز موجود است. RefineryCMS به شدت به روبی وابسته است، اگر بخواهید ساختار برگه‌ها را در محیط کدنویسی تغییر دهید، نیاز دارید تا یک حداقل از Ruby on Rails را بدانید.

ساختار کلی این سیستم بسیار منعطف است، از این رو نباید برای کسی که تا حدی با روبی آشنایی دارد ایجاد تغییرات سخت باشد. اما اگر نمی‌توانید چنین کاری را انجام دهید مشکلی نیست، شما می‌توانید از طریق یکسری از افزونه‌ها، کارکرد کلی ابزارتان را تغییر دهید. در این قسمت من سه افزونه استاندارد را از صفحه Extensions انتخاب کرده‌ام و قصد دارم به صورت بسیار ساده آن‌ها را معرفی کنم:

افزونه Blog: این مورد یک افزونه استاندارد است که به وبسایت شما قابلیت‌های مدیریت یک وبلاگ را می‌دهد. قابلیت‌هایی مانند افزودن محتوا، ارسال نظر و انجام نظارت روی آن‌ها. 

افزونه Inquiries: پلاگینی بسیار ساده که به شما قابلیت ایجاد فرم تماس باما را می‌دهد. البته شما می‌توانید فرم‌های دیگری را نیز با استفاده از این افزونه ساخته و اطلاعات کاربران را در پنل ادمین خود مدیریت کنید.

افزونه Products: یک افزونه مناسب برای مدیریت محصولات وبسایت. شما می‌توانید در این افزونه یکسری محصول را در دسته‌بندی‌های مختلف ایجاد کرده و برگه‌هایی را برای نمایش آن‌ها انتخاب کنید.

افزونه‌های بسیار زیاد دیگری نیز در بخش افزونه‌های RefineryCMS وجود دارد که با نگاه به آن‌ها ارزش بالای این سیستم را متوجه خواهید شد.

در پایان

به نظرتان RefineryCMS قابلیت‌های مناسب برای انتخاب را دارد؟ شاید سوال سختی برای افراد معمولی باشد، اما قطعا یکی از انتخاب‌های خوب برای توسعه‌دهندگان Ruby on Rails خواهد بود. 

شما به عنوان یک توسعه‌دهنده Ruby on Rails می‌توانید در توسعه این ابزار کمک کرده و یا آن را با یک ابزار دیگر که خودتان ساخته‌اید ادغام کنید. اینگونه می‌شود بجای اختراع دوباره چرخ، از ابزارهای آماده استفاده کنید. 

منبع

مقالات پیشنهادی

  • سیستم های مدیریت محتوای دروپال

    دروپال یک سیستم مدیریت محتوا اپن سورس و همچنین فریمورک برنامه های تحت وب میباشد که با PHP نوشته شده و تحت مجوز GNU منتشر گردیده است. دروپال برنده چندی...

    پشتیبانی راکت