سلام ، آیا این بازدید اول شماست ؟ یا
نمایش نتایج: از شماره 1 تا 3 , از مجموع 3

موضوع: الگوی قالب جمولا2.5.6

Hybrid View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1

    تاریخ عضویت
    Aug 2012
    نوشته ها
    43
    تشکر
    16
    تشکر شده 3 بار در 3 ارسال

    الگوی قالب جمولا2.5.6

    سلام
    آیا مقاله زیر برای جوملا 2.5.6 مناسب است؟اگر نه لطفاً الگوی مربوط به ورژن 2.5.6 رو بدین.
    این مقاله مربوط به [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] جوملاست

    ایجاد یک فایل templateDetails.xml

    وجود این فایل در قالب*های [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] ضروری است. قالب*ها بدون وجود این فایل نمی*توانند توسط [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] شناسایی و مشاهده شوند. در واقع این فایل است قالب را به [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] معرفی می*کند. این فایل حاوی اطلاعاتی در مورد قالب و متادیتای قالب است.
    الگوی نگارش این فایل در خط پائین مشخص شده است .
    نکته: البته این الگو مربوط به نسخه [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید]1.5 است .



    <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE install PUBLIC "-//Joomla! 1.5//DTD template 1.0//EN" "http://www.joomla.org/xml/dtd/1.5/template-install.dtd"> <install version="1.5" type="template"> <name>mynewtemplate</name> <creationDate>2012-02-02</creationDate> <author>Shahab Matapour</author> <authorEmail>sh.matapour@gmail.com</authorEmail> <authorUrl>http://www.studio-design.co</authorUrl> <copyright>Shahab Matapour 2012</copyright> <license>GNU/GPL</license> <version>1.0.2</version> <description>My New Template</description> <files> <filename>index.php</filename> <filename>templateDetails.xml</filename> <folder>images</folder> <folder>css</folder> </files> <positions> <position>breadcrumb</position> <position>left</position> <position>right</position> <position>top</position> <position>user1</position> <position>user2</position> <position>user3</position> <position>user4</position> <position>footer</position> </positions> </install>

    برای نسخه [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] 1.7 و 1.6 از الگو زیر استفاده می*کنیم. دقت کنید که از تگ extension بجای install استفاده شده است.
    نکته: دقت کنید که مقابل version در خط دوم 1.6 را نوشتیم اگر برای [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] 1.7 تصمیم به ایجاد قالب داشتیم باید 1.7 را بنویسیم.



    <?xml version="1.0" encoding="utf-8"?> <extension version="1.6" type="template"> <name>mynewtemplate</name> <creationDate>2012-02-02</creationDate> <author>Shahab Matapour</author> <authorEmail>sh.matapour@gmail.com</authorEmail> <authorUrl>http://www.studio-design.co</authorUrl> <copyright>Shahab Matapour 2012</copyright> <license>GNU/GPL</license> <version>1.0.2</version> <description>My New Template</description> <files> <filename>index.php</filename> <filename>templateDetails.xml</filename> <folder>images</folder> <folder>css</folder> </files> <positions> <position>breadcrumb</position> <position>left</position> <position>right</position> <position>top</position> <position>user1</position> <position>user2</position> <position>user3</position> <position>user4</position> <position>footer</position> </positions> </extension>

    همانطور که کاملا مشخص است تمامی مشخصات در xml مابین elementها مشخص می*گردند. شاید نوشتن فایلی از ابتدا کمی دشوار باشد پیشنهاد اینست این کد را در داخل فایل templateDetails.xml خود کپی کنید و مشخصات elementها را بسته به نیازتان ویرایش کنید.
    Elementهای name تا description شامل مشخصات تولید کننده قالب [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید].
    name: نام قالب است .
    نکته مهم: name باید با نام پوشه قالب (در این مثال mynewtemplate) یکی باشد.
    creationDate: تاریخ ایجاد قالب
    author: نام تولید کننده قالب و ... همین طور به ترتیب تا عنصر description
    description: که توضیحاتی راجب این قالب ارائه میکند این توضیحات زمانی که قالب در [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] نصب میشود نمایش داده خواهدشد.
    قسمت files شامل تمامی فایل*هایی است که در قالب مورد استفاده قرار می*گیرد. ممکن است که شما در این لحظه از تعداد و نام فایل*های که قرار است در قالب از آنها استفاده کنید اطلاعی نداشته باشید، نگران این موضوع نباشید، شما می*توانید بعدا این قسمت را update کنید.
    بخش position هم برای معرفی موقعیت*هایی است که شما تصمیم دارید در قالب [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] از آنها استفاده کنید. در تنظیمات ماژول می*توانید این موقعیت*ها را برای نمایش یک ماژول انتخاب کنید.
    ایجاد فایل index.php

    صفحه index.php قالب*های [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] صفحه اصلی قالب*های [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] . در صورتی که شما مسلط به [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] باشید می*توانید این صفحه را همانند یک صفحه [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] معمولی ایجاد کنید فقط باید در بعضی از قسمت*های آن یکسری کدهای [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] اضافه کنید. که در این مقاله به تفضیل به آنها خواهیم پرداخت.
    صفحه ساختار ساده (بدون استایل) قالب [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] می*باشد.
    صفحه index.php [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] 1.5 با کدهای php زیر شروع میشود.



    <?php defined( '_JEXEC' ) or die( 'Restricted access' );?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->language; ?>" lang="<?php echo $this->language; ?>" >

    کد خط اول برای مسائل امنیتی [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] ست و برای جلوی گیری از دسترسی غیر مجاز است.
    خط بعدی Document Type Declaration(DOCTYPE) که اطلاعاتی راجع به این صفحه [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] به Web Crawlerها(خزنده*های موتورهای جستجو) ارائه می*کند.
    خط سوم هم به صفحه index.php قالب می*گوید که مدیر سایت چه زبانی را برای نمایش سایت (در [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] اصطلاحا front-end میگوییم) مشخص کرده است.
    همانطور که میدانید یک صفحه [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] به دو قست تقسیم میشود (head و body) بخش head شامل اطلاعاتی درخصوص منابعی که در این قالب [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] می*خواهیم از آن استفاده کنیم است در واقع از این قسمت باید آن منابع را به قالب لینک کنیم.
    بخش body شامل کدهای لایه مختلف ساختار قسمت*های مختلف قالب است .
    ویرایش توسط h.mallaki67 : 08-28-2012 در ساعت 06:52 PM

    جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.


  2. # ADS
    تبلیغات در جوملا فارسی
    تاریخ عضویت
    Always
    نوشته ها
    Many
     

  3. #2

    تاریخ عضویت
    Aug 2012
    نوشته ها
    43
    تشکر
    16
    تشکر شده 3 بار در 3 ارسال
    کد php مربوط بخش head صفحه index.php قالب

    برای قالب*هایی که از یک زبان استفاده میکنند (فارسی یا انگلیسی) از این کد استفاده می*کنیم.



    <head> <jdoc:include type="head" /> <link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/system/css/system.css" type="text/css" /> <link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/system/css/general.css" type="text/css" /> <link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/<?php echo $this->template; ?>/css/template.css" type="text/css" /> </head>

    برای قالب*های که از 2 زبان مختلف که یکی از آنها از راست به چپ است مثل فارسی ودیگری از چپ به راست است مثل انگلیسی (RTL یا LTR) استفاده می*کنند این کد را می*نویسیم:
    نکته: دقت کنید زبان فارسی و عربی چون هردو RTL هستند از نوع اول استفاده می*کنیم.



    <head> <jdoc:include type="head" /> <link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/system/css/system.css" type="text/css" /> <link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/system/css/general.css" type="text/css" /> <?php if($this->direction == 'rtl') : ?> <link href="<?php echo $this->baseurl ?>/templates/<?php echo $this->template; ?>/css/template_rtl.css" rel="stylesheet" type="text/css" /> <?php else: ?> <link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/<?php echo $this->template; ?>/css/template.css" type="text/css" /> <?php endif; ?> </head>
    خط

    <jdoc:include type="head" />

    اطلاعات مربوط به header را در قالب*های [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] قرار می*دهد شامل اطلاعات متا و عنوان صفحه و ...
    کدهای



    <link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/system/css/system.css" type="text/css" /> <link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/system/css/general.css" type="text/css" />
    برای اضافه کردن 2تا فایل css ای که تمام قالب*های [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] 1.5 از آنها استفاده میکنند.
    کدهای php برای قسمت body فایل index.phpقالب


    <body> <jdoc:include type="modules" name="top" /> <jdoc:include type="component" /> <jdoc:include type="modules" name="bottom" /> </body>

    خیلی شگفت آور است؟ ولی حقیقت دارد همین کدها برای راه اندازی و ایجاد یک قالب [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] کفایت می*کند. در این حالت ما 2 position به نام*های top و bottom داریم و یک موقعیت برای نمایش مطالب و سایر componentها داریم.
    دستور jdoc به [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] می*گوید که از سیستم مدیریت محتوا [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] یکسری منابع را فراخوانی (include) کند. Type مشخص کننده نوع آن منابع است دقت کنید که در اینجا type هم modules و هم component استفاده شده است.
    وقتی در یک قسمت از فایل index.php می*نویسیم:



    <jdoc:include type="modules" name="top" />

    یعنی در آن قسمت از قالب یک position به نام top ایجاد کن. به جای top هر اسم دیگری می*تواند باشد ولی به این نکته توجه داشته باشید که قبلا این نام را در فایل templateDetails.xml به عنوان position مشخص کرده باشیم.
    هنگامی در یک قسمت از فایل index.php قالب می*نویسیم:



    <jdoc:include type="component" />

    یعنی آن قسمت مکان کلیه مطالب (مقاله*ها و مطالبی که در مدیریت مطالب ایجاد می*شوند.) و کامپوننت*های [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] است. نوشتن این کد برای فایل index.php خیلی مهم است. شما می*توانید ماژول*های بیشتری در templateDetails.xml معرفی کرده و در صفحه index.php ایجاد نمایید. و در نهایت بستن تگ html به این صورت



    </html>

    انجام می*شود.
    در نهایت کد صفحه index.php قالب [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] 1.5 ما به این صورت شد:



    <?php defined( '_JEXEC' ) or die( 'Restricted access' );?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->language; ?>" lang="<?php echo $this->language; ?>" > <head> <jdoc:include type="head" /> <link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/mynewtemplate/css/template.css" type="text/css" /> </head> <body> <jdoc:include type="modules" name="top" /> <jdoc:include type="component" /> <jdoc:include type="modules" name="bottom" /> </body> </html>

    در [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] 1.5 ما می*توانیم کل پوشه mynewtemplate با تمام فایل*ها و ساب فولدرها در پوشه templates [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] آپلود کنیم یا آن را zip کنیم و از مدیریت [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] در قسمت نصب و حذف اقدام به نصب این قالب کنیم.
    بعد از نصب یا آپلود قالب باید به قسمت مدیریت قالب*ها برویم قالب mynewtemplate بر پیش فرض قرار دهیم.
    نکاتی در مورد اضافه کردن عکس و فایل javascript و غیره در قالب

    پیشتر گفتیم با صفحه index.php قالب همانند یک صفحه [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] رفتار کنید و در برخی موارد که نیاز به کد [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] دارد که در این مقاله آنرا آموزش می*دهیم. اگر شما یک عکس در فولدر images/stories داشته باشید و نام آن myimage.png باشد به صورت زیر در [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] اقدام به نمایش آن می*کنیم.



    <img src="images/stories/myimage.png" alt="Custom image" />
    اگر بخواهیم یک کلاس css به نام customImage به آن تصویر بدیم :

    <img src="images/stories/myimage.png" alt="Custom image" class="customImage" />

    استایل*های مربوط به cutomImage را می*توانیم در فایل template.css قالب بنویسیم.
    ولی اگر این کدها در یک قالب [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] بنویسید تصویر مورد نظر را نمایش نمی*دهد ما بعد از هر src در صفحه index.php قالب [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] 1.5 باید کد



    <?php echo $this->baseurl; ?>

    را اضافه کنیم. یعنی برای نمایش عکس در فولدر images/stories با نام myimage.png باید



    <img src="<?php echo $this->baseurl; ?>/images/stories/myimage.png" alt="Custom image" />

    بنویسیم. دقت کنید که در این مثال پوشه images در داخل root [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] قرار دارد.
    اگر همین عکس در پوشه image در داخل خود قالب (mynewtemplate) [مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید] بود باید به این صورت می*نوشتیم:



    <img src="<?php echo $this->baseurl; ?> /templates/<?php echo $this->template;?>/images/myimage.png" alt="Custom image" />

    جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.


  4. #3
    Team
    تاریخ عضویت
    Dec 2008
    محل سکونت
    ساری
    نوشته ها
    10,737
    تشکر
    295
    تشکر شده 2,409 بار در 2,066 ارسال
    دروود

    در خود اموزش هم ذکر شده مطلب مربوز به جوملا 1.5 هست !

    برای جوملا 2.5 مطلب برای انتشار در ویکی در حال اماده سازی هست
    میتونید از اموزش تبدیل قالب 1.5 به 2.5 کمک بگیرید

    در پناه ایزد

    جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.


موضوعات مشابه

  1. 1 ساخت یک منو برای لود شدن یک فایل با شماره متغیر توسط کاربر
    توسط companyadc در انجمن سوالهای عمومی جوملا 1.5 فارسی
    پاسخ ها: 2
    آخرين نوشته: 10-17-2011, 06:52 AM
  2. تعریف یک کلاس در templateDetails
    توسط picasaeng در انجمن قالب های جوملا 1.7 فارسی
    پاسخ ها: 1
    آخرين نوشته: 09-29-2011, 09:04 PM
  3. نحوه ایجاد فایل CVS برای فروشگاه
    توسط p30p30 در انجمن کامپوننت های مامبو فارسی
    پاسخ ها: 5
    آخرين نوشته: 11-07-2008, 12:56 PM
  4. ایجاد یک کلاس برای ماژول
    توسط pctaz در انجمن قالب های مامبو فارسی
    پاسخ ها: 1
    آخرين نوشته: 02-27-2008, 02:21 PM
  5. راهنمای ایجاد یک theme برای Smf
    توسط Bdehghaniyan در انجمن گرافیک و قالب SMF
    پاسخ ها: 1
    آخرين نوشته: 07-16-2007, 08:08 AM

علاقه مندی ها (Bookmarks)

علاقه مندی ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •