توسعهدهنده(ها) | MODX LLC |
---|---|
مخزن | |
سیستمعامل | چندسکویی |
مجوز | جیپیال |
مادایکس (MODX) یک سیستم مدیریت محتوا و چارچوب نرمافزاری تحت وب متن باز و آزاد جهت نشر اطلاعات در وب و اینترانت است. مادایکس تحت پروانه جیپیال توسط زبان برنامهنویسی پیاچپی و با استفاده از پایگاه داده مایاسکیوال و اسکیوالسرور ایجاد شدهاست. این سیستم در سال ۲۰۰۷ برنده جایزه متعهدترین سیستم مدیریت محتوای متن باز از سوی موسسه پکت گردید[۱].
ریموند اروینگ و رایان ترش پروژه MODX CMS را در سال ۲۰۰۴ با توسعه افزونه DocVars برای Etomite آغاز کردند. در مارس ۲۰۰۵ همه ارجاعات به "MODx" از انجمنهای گفتگوی Etomite حذف گردید. این اقدام در راستای درخواست بنیانگذار Etomite جهت توقف پشتیبانی از مادایکس صورت گرفت. با این کار، مادایکس تبدیل به انشعابی از Etomite شد.
در مه ۲۰۰۵ انجمنهای گفتگوی مادایکس راه اندازی شد و Jason Coward به تیم مدیریتی پیوست. در سال ۲۰۰۷ Raymond به صورت دوستانه از پروژه جدا شد و در سالهای بعد Shaun McCormick نیز به عضویت تیم مدیریتی درآمد.
در سال ۲۰۰۸ کاربران مادایکس، نماد جدیدی برای این پروژه طراحی کردند.
در سال ۲۰۱۰ اولین نسخهٔ MODX Revolution به صورت کاملاً از نو کدنویسی شده ارائه شد. در مه ۲۰۱۰ MODX LLC به عنوان شرکت ثبت گردید[۲] و اولین همایش رسمی خود MODXpo را در دالاس آمریکا با حمایت مایکروسافت برگزار کرد.[۳]
در اکتبر سال ۲۰۱۲ MODX LLC سرویس ابری MODX Cloud را برای سایتهای تحت MODX راه اندازی کرد.[۴]
در مارس ۲۰۱۳ سرویس ابری MODX Cloud وارد شراکت با SiphonLabs شد. همچنین پیشنهاد پشتیبانی وردپرس نیز مدنظر قرار گرفت.[۵] این همکاری دوامی نیاورد و در جولای ۲۰۱۳ MODX Cloud مجدداً مستقل شد.[۶]
در جولای ۲۰۱۳، Mark Hamstra (یکی از توسعه دهندگان شناخته شدهٔ انجمن MODX) سرویس modmore را به عنوان اولین منبع افزونههای تجاری MODX راه اندازی کرد.[۷]
در نوامبر ۲۰۱۳ دومین همایش رسمی MODXpo در شهر کلن آلمان برگزار شد.
در ژانویه ۲۰۱۴ سیستم MODX به مجموعهٔ بیتنامی افزوده شد.[۸]
در ژوئیه ۲۰۱۴ نسخهٔ ۲٫۳ MODX به صورت عمومی عرضه شد.[۹] این نسخه بیشتری تغییرات و بهبودها را در چندین سال اخیر داشتهاست.
در سپتامبر ۲۰۱۴ modmore میزبان اولینی همایش MODX Weekend را در اوترخت هلند به عهده گرفت.[۱۰]
MODX ۳ تغییرات اساسی در سیستم ایجاد خواهد کرد. این نسخه هماکنون بهصورت alpha (آزمایشی) در دسترس است.
مادایکس امکان جداسازی کامل محتوا (اچتیامال خام)، ظاهر و شمایل (استانداردهای سازگار با سی اس اس و جاوااسکریپت) و منطق (پیاچپی، اسنیپت) را میدهد.
همچنین قابلیتهای دیگر شامل:
نسخه Revolution با هدف اصلاح نقایص نسخه Evolution پایهریزی شد به اضافه امکانات جدیدی که ایجاد آنها در نسخه قبلی مشکل یا غیرممکن بود.
Jason Coward به عنوان برنامهنویس اصلی Revolution و طراح کتابخانه پیاچپی با نام xPDO[۱۲] پیشنهاد نگارش نسخه جدید با استفاده از این کتابخانه را داد تا Revolution ساختار یک فریمورک کامل برای پروژهها را دارا باشد. Revolution به صورت یک CMS/CMF[۱۳]، هم به عنوان یک سیستم مدیریت محتوا با امکانات کامل و مثالزدنی عمل میکند و هم به عنوان یک فریمورک قدرتمند.
از مشخصههای اصلی نسخه Revolution نکات زیر مورد توجه بیشتری هستند:
تگهای مادایکس در Revolution دچار تغییر شدهاست. نمونه قالب بالا در Revolution به شکل زیر است:
<!DOCTYPE>
<html>
<head>
<title>[[++site name]] :: [[*pagetitle]]</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" href="some/path/to/styles.css" />
<script type="text/javascript" src="some/path/to/mootootls.js"></script>
<script type="text/javascript" src="some/path/to/jquery.js"></script>
<script type="text/javascript" src="some/path/to/any-other.js"></script>
<style type="text/css">
.someClass { margin:10px; }
</style>
</head>
<body>
<div class="post">
<h1><a href="[[~[[*id]]]">[[*pagetitle]]</a></h1>
<div class="content">[[*content]]</div>
<div class="commnets">[[!Quip?thread=`blog-post-[[*id]]`]]</div>
</div>
<div class="footer">
[[$copyright_info]]
</div>
</body>
</html>
همانطور که بیان شد، هسته نسخه Revolution بازنویسی و براساس xPDO تغییر کردهاست. نویسندگان با فراهم کردن APIهایی اقدام به همسانسازی و سازگاری کدهای قدیمی با هسته جدید کردهاند ولی شیوه جدید پویاتر، سادهتر و قدرتمندتر است.
نمونه یک اسنیپت ساده با استفاده از امکانات جدید:
<?php
$docid = isset($_POST['docid']) ? $_POST['docid'] : $modx->resourceIdentifier;
$parent = $modx->getObject('modDocument', $docid)->get('parent');
$document = $modx->newObject('modDocument');
$document->set('pagetitle', 'Page Title');
$document->set('parent', $parent);
$document->set('content', 'This is some content.');
$result = $document->save();
return $result==true ? 'Success' : 'Failed';
?>
پلاگینها در نسخه جدید مانند Evolution فراخوانی میشوند ولی با رویدادهای سفارشی و بیشتر. نمونه یک شمارنده اطلاعات برای کاربران:
if($modx->event->name == 'OnWebLogin') {
$modUser = $user; // Plugin parameter
$profile = $modUser->getOne('myProfileModel');
$profile->set('experiment', $profile->get('experiment')+1);
$result = $profile->save();
return $result==true ? 'Success' : 'Failed';
}
مادایکس دارای یک جامعه جهانی از کاربران و توسعه دهندگان است. این جوامع مادایکس را به زبانهای بومی خود ترجمه کردهاند. این ترجمهها عبارتند از: آلزاس، بلغاری، چینی، چکی، دانمارکی، هلندی، فنلاندی، فرانسوی، آلمانی، یونانی، عبری، ایتالیایی، ژاپنی، نروژی، فارسی، فیلیپینی، لهستانی، پرتغالی (برزیلی و اروپایی)، روسی، صربی، اسپانیولی، سوئدی و ترکی. همچنین جوامع فعال دیگری به زبانهای هندی و انگلیسی دارد.
مادایکس در جولای ۲۰۰۷ برندهٔ جایزهٔ متعهدترین سیستم مدیریت محتوای متن باز از سوی مؤسسه پکت گردید[۱].
در ١٤ ژانویه ٢٠٠٨، Linux.com به بررسی مادایکس پرداخت و چنین نتیجهگیری کرد: "مادایکس یک سیستم ساده برای استفاده، قابل استانداردسازی، قابل بهینهسازی برای موتورهای جستجو، کاربردی و توسعهپذیر است"[۱۵].
در ٦ فوریه ٢٠٠٩، در نظرسنجی سایت OpenSourceCMS.com از بین ٧٨ سیستم مدیریت محتوا براساس نظرات کاربران، نسخه 0.9.6.3 مادایکس با ٢٨٨٥ رأی در جایگاه سوم قرار گرفت. رتبههای اول و دوم به ترتیب، Jaws با ۳٩٨٥ رأی و CMS Made Simple با ٣٠٥٢ رأى بودند.
|archive-date=
را بررسی کنید (کمک)
|بازبینی=
را بررسی کنید (کمک)