تبدیل قالب‌های جوملا 1.5 به قالب‌های جوملا 1.6 -1.7 -2.5   

از دانشنامه جوملا فارسی - مامبو فارسی
پرش به: ناوبری، جستجو

مقدمه

در این مقاله سعی شده به تفاوتهای بین Template های جوملا در نسخه 1.5.X با 1.6.X و 1.7.x بپردازیم
اگر تا بحال قالب هایی که در جوملا 1.5 به درستی کار میکنند را در جوملا 1.6 آپلود (نصب) کرده باشید در حالت معمول این قالبها را نمی توان در پنل مدیریتی و در بخش مدیریت قالب ها مشاهده و ویرایش و استفاده کرد. این موضوع به این دلیل است که قالبهای جوملا 1.5 با نسخه 1.6 باهم کمی متفاوت اند

فایل templateDetails.xml

است که قالبهای جوملا 1.5 با نسخه 1.6 باهم کمی متفاوت اند
فایل templateDetails.xml باعث نصب شدن قالب و شناساندن قالب به جوملا میشود که خوشبختانه در هردو نسخه این فایل وظیفه نصب کردن قالبهارا به عهده دارد ولی نحوه شناساندن قالب 1.5( در فایل templateDetails.xml ) با قالب 1.7 و 1.6 در چند تگ XML باهم متفاوت اند.
در جوملا 1.5 در فایل templateDetails.xml پارامترها را با تگ <params> و هر بخش کوچکتر از پارامتر با تگ <param> معرفی میگردد.ولی در جوملا 1.6 و 1.7 به جای تگ <params> از تگ <config> وبخشهای داخلی از تگهای زیر که به ترتیب :
<source lang="xml" > <fields> <fieldset> <field> <feild/> <fieldset/> <fields/> </source> استفاده میکند. الگوی زیر مربوط به قالبهای 1.7 و 1.6 است : <source lang="xml" > <config>

   <fields name="params">
       <fieldset name="basic">
           <field name="" type=" default="" label="" description="">

<option value="1">On</option> <option value="0">Off</option>

           </field>
           <field name="" type="" default="" label="e" description="" />
       </fieldset>
   </fields>

</config> </source>

تبدیل قالبهای جوملا 1.7 به قالبهای قابل استفاده برای جوملا 2.5

اگر قالب جوملا 1.7 شما بدرستی در جوملا 1.7 نصب میشود و قابل استفاده است میتوانید با یک تغییر کوچک در فایل templateDetails.xml از آن قالب در جوملا 2.5 نیز استفاده نمایید تمام کاری که باید انجام دهید اینست که با یک text editor فایل templateDetails.xml را باز کنید و <source lang="xml" > <version>1.7.0</version> </source> را تبدیل به <source lang="xml" > <version>2.5.1</version> </source> نمایید .

تفاوتهای اساسی بین قالبها

2 مورد مهم که باید حتما به توجه کنیم :
1. اضافه کردن doctypeجدید مربوط به نسخه های جوملا 1.6 و 1.7
2. تبدیل تگ ها install فایل xmlجوملا 1.5 به تگ extension در 1.7
<source lang="php" > <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE install PUBLIC "-//Joomla! 1.6//DTD template 1.0//EN" "http://www.joomla.org/xml/dtd/1.6/template-install.dtd"> <extension version="1.7" type="template" client="site"> </source> در نسخه یک ویژگیها جدید به doctype ها اضافه شده به نام client که مقدار site بیانگر اینست که قالب برای front-end و مقدار administrator بیانگر اینست که قالب برای back-end میباشد.

عنوان سایت

کد نمایش عنوان سایت <source lang="php" > <?php echo $mainframe->getCfg('sitename');?> </source> که در جوملا 1.5 معرف نام سایت بود در جوملا 1.6 و 1.7 به <source lang="php" > $app = JFactory::getApplication(); </source> وو این کد هم در جوملا 1.6 و 1.7 معادل عنوان سایت است <source lang="php" > $app->getCfg('sitename'); </source>

کد های نمایش خطا ها و پیغامها

این کدها به ترتیب در جوملا 1.5 <source lang="php" > $this->error->code $this->error->message </source> تبدیل به این کد در جوملا 1.6 و 1.7 شده است <source lang="php" > $this->error->getCode(); $this->error->getMessage(); </source>

یک نکته در مورد قالب Beez جوملا

اگر شما تصمیم به پیاده سازی قالب Beez جوملا 1.5 در 1.6 و 1.7 گرفته اید ممکن است با پیغام خطای

JHtml: :icon not supported. File not found.

مواجه شوید برای فیکس کردن این خطا باید در خود قالب beez5 جوملا 1.6 و 1.7 به

html/com_content/article/default.php

بروید و کد زیر را به ابتدای آن اضافه کنید. <source lang="php" > JHtml::addIncludePath( JPATH_COMPONENT . '/helpers' ); </source>


منبع : http://docs.joomla.org/Upgrading_a_Joomla_1.5_template_to_Joomla_1.6

جمع آوری و ترجمه: شهاب مطاع پور

Indent support.png
هر گونه سوال و یا مشکلی در این رابطه دارید، می‌توانید در انجمن تخصصی تیم جوملا فارسی جستجو کرده و در صورت عدم دریافت نتیجه مورد نظر، سوال جدیدی را مطرح کنید.
8.pngاستفاده از مطالب دانشنامه جوملا فارسی - مامبو فارسی با ذکر منبع ( دانشنامه جوملا فارسی ) و لینک مستقیم به http://docs.joomlafarsi.com بلامانع است.