IT GALAXY
Registered User
- تاریخ عضویت
- 23 مارس 2013
- نوشتهها
- 473
- لایکها
- 277
وردپرس و جوملا، از محبوب ترین CMS های منبع باز هستند. این CMS ها، جامعه پشتیبان بزرگ و فعالی دارند و راهنماهای آن ها به وفور در اینترنت یافت می شود. وردپرس، به خاطر طراحی زیبای محیط و رنج وسیع قالب های فوق العاده و در دسترس، معمولا اولین گزینه اجتماع توسعه دهندگان برای انتخاب است. اما جوملا، به خاطر بدنامی ای که برای کارایی پایین و خروجی هایی که که گاهی اوقات اشتباه هستند (که البته این را از مامبو به ارث برده است)، رنج آور است. البته در نسخه 1.5، هسته جوملا، به وسیله توسعه پذیری های پیشرفته و خروجی HTML بهتر، بازنویسی شد. یکی از تفاوت های وردپرس و جوملا، در مدل تم های آنهاست. یک برنامه نویس که از جوملا به سمت وردپرس می رود ممکن است این احساس را داشته باشد که وردپرس نیازهای بیشتری از او را برطرف می کند و در حالت عکس، کسی که به سمت جوملا می رود، ممکن است احساس کند جوملا، انعطاف پذیری و تغییر پذیری کمتری دارد. دلیل این امر، مدل های مختلفی است که در تم های این CMS ها قرار داده شده است.
مدل قالب وردپرس، بر پایه ساختار دید مرحله ای است. به این معنی که در هر تم، می توانید برای فایل های لیست پست شده ها، یا یک پست خاص و یا صفحه های آرشیو، دید خاصی داشته باشید. این فایل ها، مستقل از یکدیگر هستند و این قابلیت وردپرس، به برنامه نویس اجازه می دهد هر شیوه دیدن را به طور خاص طراحی کند. ولی این کار، بخش های زیادی از کد را تکراری می کند. تنها بخش معمول در قالب، سرنوشته و پانوشته است که می توانند به طور مستقیم، در یک دید مستقل و در کد نوشته شوند. مهم ترین اشکال این مدل این است که در دیدهای مختلف، معمولا از نمایش های مختلفی استفاده نمی شود. برای غلبه بر این مشکل، یک تم در ساختار ترتیبی و با دیدهای نوعی بیشتر ساخته شد که در موارد خاص مانند یک سیستم پشتیبان عمل می کند. مدل قالب جوملا
جوملا (Joomla)، از شیوه متفاوتی برای قالب های خود استفاده می کند. قالب های جوملا، روی یک ساختار معمول که در فایل index.php تعریف شده است، ساخته شده اند. این فایل، هم شامل محتوای ایستا و هم شامل تگ های قالب است که مانند نگهدارنده محتوا عمل می کند و در فاز رندر شدن صفحه، با خروجی HTML جایگزین می شود. تگ های قالب، در نوع محتوایی که فراهم می کنند تفاوت دارند. مثل اجزا، پیغام، ماژول، سرصفحه و غیره. اصل این ساختار، این مساله را نشان می دهد که هر دید در خروجی CMS، یک صفحه کامل نیست ولی چیزهایی که باید را نشان می دهد. در اولین نگاه، برنامه نویسی که از مدل تم گذاری وردپرس استفاده می کند، شاید فکر کند که هیچ راهی برای تغییر دادن یک محتوا وجود نداشته باشد. درواقع جوملا، بر الگوی معماری MVC تکیه کرده است. به این معنی که در آن استخراج و نمایش داده جدا شده
است.
تغییرات قالب ها
جوملا برای تغییر دید پیش فرض، الگویی به نام ابطال قالب دارد که سیستم، پوشه قالب را برای پیدا کردن یک فایل دید تغییر داده شده، و برای جایگزینی به جای دید پیش فرض، جستجو می کند. ابطال قالب که در جوملا وجود دارد، روش خوبی برای سفارشی کردن قالب یک وب سایت، بدون شکستن قفل آن است. آن سوی هسته
در چند سال گذشته، افزونه ها، تحول عظیمی در صنعت نرم افزار به وجود آوردند. همانطور که اشاره شد، CMS های مدرن، بر پایه گسترش پذیری توسعه یافتند و به همین دلیل است که می توانیم از هسته آن به راحتی استفاده کنیم و قسمت های ویژه ای را در بالاترین سطح آن بسازیم. این طراحی قسمت بندی شده، به چند دلیل یک مدل توسعه موثر است:
- نگهداری بهتر. توسعه دهندگان نیازی به اصلاح هسته برای اضافه کردن یا تغییر قابلیت ندارد.
- سبک تر و امن تر. قابلیت هایی که مورد نیاز هستند، در آن قرار داده شده است. این عمل، مصرف کمتر حافظه، حجم کمتر و آسیب پذیری کمتر را نتیجه می دهد.
- چرخه های توسعه جداگانه برای هسته و قابلیت ها. توسعه دهندگان می توانند قابلیت های جدیدی اضافه کنند درحالی که تیمی که روی هسته کار می کنند، روی کارایی سیستم تمرکز کرده اند.