اللهم لك الحمد ، ومنك الفرج ، واليك المشتكي ، وأنت المستعان ، ولا حول ولا قوة الا بك ..
 
  الصحيفة التقنية  | الصفحة الرئيسية  | مركز تحميل مطور  | استخدم ختم مطور  | قوِ موضوعك هام |  أعلن في مُطِّورْ   | شرح السي بانل جديد |  افحص البيج رانك  | دعم فني مجاني RSS Facebook twitter Youtube




العودة   مطور Mtwer > أقسام تطوير المواقع > قسم لغات البرمجة وبرامج تصميم المواقع > لغات برمجة مواقع PHP, ASP, Java Script, Perl


لغات برمجة مواقع PHP, ASP, Java Script, Perl دورات، دروس، نقاشات، وتبادل خبرات في كلاً من php asp java scripts perl وغيرها.

عزيزي المطور ابتعد عن النقل، ولتكن مواضيعك جديدة وقيمة تعبر عن إبداعك وتميزك
إضافة رد
 
LinkBack أدوات الموضوع انواع عرض الموضوع
  #1  
قديم 07-06-2010, 02:19 AM
الصورة الرمزية vista-design
:: + عضو شرف + ::
الرتبةالرتبةالرتبةالرتبة
 

vista-design يستحق التميز

بيانات موقعي :
اصدار المنتدى : لا أملك منتدى
شرح برمجة موديلات مجلة joomla خطوة خطوة الجزء الأول





نعود معكم أعضاء وزوار موقعنا الكرام مع أحد دروس موقعنا المتواضعه, وفى هذا الدرس سوف نلقى الضوء على واحد من الدروس المهمه, وهو ما يجعلك تبدأ الخطو نحو التعامل مع برمجية المجلة الرائعة joomla , والتى يعمل بها موقعنا

اولا: فهرس الدرس مقسم كالأتى:

1-شرح الموديل بفكره عامة وما هو ووظيفته فى المجلة
2-شرح تركيبة الموديل من ملفات ومجلدات
3-شرح أساسيات ملف xml الخاص بالموديل
4-شرح التنبيهات المهمة فى برمجة موديل joomla
5-شرح مثال لرؤية الكود البرمجى للموديل وانعكاسه فى لوحة التحكم وخصائصه
نبدأ على بركة الله ................

1-شرح الموديل بفكرة عامة وما هو وظيفته فى المجلة :

module: هو عبارة عن أداة نستخدمها لاضفاء تحسينات للمجلة , وأقرب تشبيه لها لكم هو مثل الهاكات فى المنتديات
مثال: انظر للموقع على اليمين فسوف تجد موديل اليوتيوب وموديل عرض الاعلانات وموديل برنامج اليوم


2-شرح تركيبة الموديل من ملفات ومجلدات:

انظر لهذه الصوره لتعرف تركيبة الموديل:




-شرح تركيبة الموديل:
اولا: ملفات أساسيه : وهى الملفات :
1-ملف xml وعلى سبيل المثال advphp.xml
2-ملف php وعلى سبيل المثال advphp.php

2-ملفات فرعية : وهى الملفات :
1-ملف index.html
2-ملف helper.php
3-ملف en-gb.ini
4-مجلد tmpl بداخله ملفين :
-ملف default.php
-ملف index.html



-ماالفرق بين الملفات الاساسيه والملفات الفرعية؟

الملفات الأساسية هى التى لابد من استخدامها, ويمكنك ان تسوى بها موديل بسيط , اما الملفات الفرعية يمكنك عدم استخدامها, فهى فقط ملفات مساعده مع الموديلات التى تتطلب :
1-تغيير اللغة
2-اختيار أكثر من قالب له
3-فصل القطعه البرمجيه عن فريم ورك المجلة mvc



3-شرح أساسيات الxml الخاصة بالموديل:

-كما عرفنا سابقا ان ملف xml , من الملفات الاساسية التى لابد ان تكون موجوده

اولا: ما هى وظيفة ملف xml : هو الملف الذى سيقدم خيارات الموديل فى لوحة التحكم للتحكم به
ثانيا: ما هى أساسيات ومحتوى ملف xml ؟

انظر للصورة





طبعا الصورة واضحه......

ثالثا: خلونا نشوف مثال عامل لكود ملف xml من أحد الموديلات وانعكاسه على لوحة التحكم من خيارات للموديل

كود:
<?xml version="1.0" encoding="utf-8"?>
<install type="module" version="1.5.0">
	<name>Find Us on Facebook</name>
	<author>River Media</author>
	<creationDate>November 2009</creationDate>
	<copyright>Copyright (C) 2005 - 2010 Open Source Matters. All rights reserved.</copyright>
	<license>http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL</license>
	<authorEmail>joomladds@river-media.net</authorEmail>
	<authorUrl>joomladds.com</authorUrl>
	<version>1.0.6</version>
	<description>This module will display a "Find Us On Facebook" link with an image.</description>
	<files>
		<filename module="mod_fuofb">mod_fuofb.php</filename>
        <filename>index.html</filename>
        <filename>helper.php</filename>
        <filename>tmpl/default.php</filename>
        <filename>tmpl/index.html</filename>
        <filename>assets/find-us-on-facebook-1.png</filename>
        <filename>assets/find-us-on-facebook-2.png</filename>
        <filename>assets/find-us-on-facebook-3.png</filename>
        <filename>assets/find-us-on-facebook-4.png</filename>
	</files>
	<params>
		<param name="facebook_url" type="text" default="" label="Facebook URL" description="Enter the URL to your Facebook page." />
		<param name="target" type="list" default="1" label="Target" description="Target window when the link is clicked">
			<option value="0">Parent Window With Browser Navigation</option>
			<option value="1">New Window With Browser Navigation</option>
			<option value="2">New Window Without Browser Navigation</option>
		</param>
		<param name="title_text" type="text" default="Visit our Facebook page and become a fan." label="Title Text" description="Enter the text you want to show in the title pop up" />
		<param name="image_choice" type="list" default="1" label="Image Choice" description="Select which image you would like">
			<option value="1">Style 1</option>
			<option value="2">Style 2</option>
			<option value="3">Style 3</option>
			<option value="4">Style 4</option>
		</param>
		<param name="image_align" type="list" default="center" label="Image Alignment" description="Choose image alignment, left, right or center">
			<option value="left">Left</option>
			<option value="right">Right</option>
			<option value="center">Center</option>
		</param>
		<param name="@spacer" type="spacer" default="" label="" description="" />
		<param name="moduleclass_sfx" type="text" default="" label="Module Class Suffix" description="" />
	</params>
	<params group="advanced">
		<param name="cache" type="list" default="1" label="Caching" description="Select whether to cache the content of this module">
			<option value="1">Use global</option>
			<option value="0">No caching</option>
		</param>
		<param name="cache_time" type="text" default="900" label="Cache Time" description="The time before the module is recached" />
	</params>
</install>

وهذه صورة الموديل فى لوحة التحكم :




انظر لخيارات الموديل, هذا هو ما انتجه لنا ملف xml
ملاحظه: القائمة اليسرى اللى على يسار خيارات الموديل , ليس لك بها علاقه , فالمجلة تضيفها تلقائيا بدون تدخل بأى كود منك, وهى خاصه بموضع ومكان ظهور الموديل فى الاقسام




4-شرح التنبيهات المهمه فى برمجة موديل جملة :

اولا: لابد ان تتذكر عملية scope resolution operator التى تستخدم بكثرة فى برمجيات جملة ؟

-يرمز ل scope resolution operator بالرمز :: تسمح لك لاستدعاء اى ثابت تم تحديده داخل اى كلاس

مثال عملى :

فلنفرض اننا فى كلاسات مجلة جمله كلاس اسمها JModuleHelper وبداخلها الفانكشن getLayoutPath

ونريد الدخول لها سوف تكون كالاتى:

كود:
require(JModuleHelper::getLayoutPath('xxx'));
حيث xxx هى اسم المتغير الذى تريد تنفيذه على هذه الفانكشن

لمزيد من المعلومات عن scoper resolution operator


ثانيا: بعض الملاحظات فى برمجة الموديلات :

1- اذا أردت حظر الوصول لملف الموديل مباشرة , استخدم العبارة الاتيه:

كود:
defined('_JEXEC') or die('Direct Access to this location is not allowed.');
2-لجلب خيار param من ملف xml وليكن مثال عملى لذلك:

فى ملف الxml يوجد خيار رابط الموقع وليكن الفيس بوك:

كود:
<param name="facebook_url" type="text" default="" label="Facebook URL" description="Enter the URL to your Facebook page." />

صورته:




اذا أردت استدعاء هذا الخيار فى ملف php سوف يكون الاستدعاء كالاتى:

كود:
$facebook_url		= $params->get('facebook_url', 'http://facebook.com/');

حددنا متغير ثم جلبنا الlabel الخاص ب param حيث قيمة المتغير الاول هى اسم label , والقيمة الثانية
هى القيمة الافتراضية التى سيتم وضعها فى الخيار وهى رابط موقع الفيس بوك



5-شرح مثال عملى لرؤية الكود البرمجى لاحد الموديلات مشاهدة خياراته فى لوحة التحكم
راح نأخذ المثال السابق وهو موديل الفيس بوك:


الموديل مرفق........

تركيبة الموديل:
1-ملفات أساسيه وفرعيه
2-مكانه : انظر لرئيسية الموقع على اليسار
3-تركيبه ملف الmod_fuofb.xmll : انظر لمثال ملف الxml السابق
4-تركيبة ملف الmod_fuofb.php :
كود:
defined('_JEXEC') or die('Restricted access');

require_once( dirname(__FILE__).DS.'helper.php' );

$facebook_url		= $params->get('facebook_url', 'http://facebook.com/');
$target				= $params->get('target',1);
$image_style		= $params->get('image_choice', 1);
$image_align		= $params->get('image_align', 'center');
$popup_text			= $params->get('title_text', '');
$set_Itemid			= intval($params->get('set_itemid', 0));
$moduleclass_sfx	= $params->get('moduleclass_sfx', '');

$img = modFUOFBHelper::getFUOFBImage( $popup_text, $image_style );
$url = $facebook_url;
	
require(JModuleHelper::getLayoutPath('mod_fuofb'));

5-صورة خيارات الموديل فى لوحة التحكم:




وبهيك انتهى المثال



كانت هذه مقدمه ومدخل بسيط لكيفية برمجة موديلات المجلة

ترقبوا الدروس القادمه, لانى تونى مهتم ببرمجة المجلة من فترة قريبه وما سوينا الا القليل

للاستفاده ومعرفه برمجية المجلة

راجع الdocs الخاص بهـــــــــــا من هـــــــــــــــنــــــــــــــــا


أخوكم vista-design
الملفات المرفقة
نوع الملف: zip mod_fuofb.zip‏ (44.4 كيلوبايت, المشاهدات 174)
التوقيع :
عالم مطورى الويب لتعليم برمجة وتصميم المواقع
www.advphp.com

----------------
اول برمجياتى,اسكربت AraDown العملاق لاشهار المواقع وزيادة دخلك من ادسنس

http://aradown.info
رد مع اقتباس
قديم 07-06-2010, 10:13 AM   رقم المشاركة : [2]
مُطوِّرْ مسؤول
الرتبة الرتبة الرتبة الرتبة الرتبة الرتبة الرتبة الرتبة
الصورة الرمزية مطور
 

مطور يستحق التميز

بيانات موقعي :
إسم الموقع : مطور
اصدار المنتدى : لا أملك منتدى
بارك الله في جهودك يا محمد

الف شكر يا مبدع ودرس قيم ومفيد كعادتك

تقبل تحياتي


التوقيع:
‏مُطوِّرْ
خطوتك الأولى من مستخدم إلى مطور
مطور غير متواجد حالياً   رد مع اقتباس
قديم 07-06-2010, 06:42 PM   رقم المشاركة : [3]
مطور نشيط
الرتبةالرتبة
الصورة الرمزية Golden-Boy
 

Golden-Boy يستحق التميز

بيانات موقعي :
إسم الموقع :
اصدار المنتدى :
درس في غاية الرووعه اخي فيستا .. مشكووور على الجهد .. ما قصرت أخوووي


التوقيع:

عضو جديد في معهد مطور التطويري - Mtwer.com/vb
يمكنك تعديل التوقيع من خلال لتوحة تحكمك الخاصة عبر الرابط التالي : لوحة التحكم

Golden-Boy غير متواجد حالياً   رد مع اقتباس
إضافة رد

العلامات المرجعية

مواضيع جديدة في قسم لغات برمجة مواقع PHP, ASP, Java Script, Perl

أدوات الموضوع
انواع عرض الموضوع

ضوابط المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا يمكنك اضافة مرفقات
لا يمكنك تعديل مشاركاتك

BB code متاحة
كود [IMG] متاحة
كود HTML معطلة
Trackbacks are متاحة
Pingbacks are متاحة
Refbacks are متاحة

الانتقال السريع

المواضيع المتشابهه
الموضوع كاتب الموضوع المنتدى مشاركات آخر مشاركة
تثبيت نظام الليونكس بجانب ويندوز خطوة خطوة الجزار99 قسم البرامج العامة المشروحة 10 28-03-2011 03:05 PM
كتاب تعلم الفوتوشوب خطوة بخطوة - للمبتدئين - الجزء الأول احمد سيد قرني دروس و برامج تصميم المواقع وبرامج التصميم 4 30-12-2010 02:46 AM
خطوة خطوة مع المراهق..نحو التغيير Azhar القسم العام للمواضيع العامة 0 06-11-2010 07:56 PM
كيفية التراجع اكثر من 800 خطوة بالفوتوشوب و 199 خطوة بالأيميج ريدي.. star wolf دروس تصميم و شروحات مصورة 0 06-11-2010 03:26 PM




Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.5.2
new notificatio by 9adq_ala7sas
الحقوق محفوظة لكل المطورين والمواقع العربية

Security team


المعهد غير مسؤول عن أي اتفاق تجاري أو تعاوني بين الأعضاء
فعلى كل شخص تحمل مسؤولية نفسه إتجاه مايقوم به من بيع وشراء وإتفاق وأعطاء معلومات موقعه
التعليقات المنشورة لا تعبر عن رأي معهد مطور ولا نتحمل أي مسؤولية قانونية حيال ذلك ( ويتحمل كاتبها مسؤولية النشر )

جميع الأوقات بتوقيت GMT +3. الساعة الآن 03:55 AM.