<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fa">
		<id>https://docs.joomlafarsi.com/index.php?action=history&amp;feed=atom&amp;title=%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DB%8C%DA%A9_%D9%85%D8%A7%DA%98%D9%88%D9%84_%D8%AC%D9%88%D9%85%D9%84%D8%A7</id>
		<title>ایجاد یک ماژول جوملا - تاریخچهٔ ویرایش‌ها</title>
		<link rel="self" type="application/atom+xml" href="https://docs.joomlafarsi.com/index.php?action=history&amp;feed=atom&amp;title=%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DB%8C%DA%A9_%D9%85%D8%A7%DA%98%D9%88%D9%84_%D8%AC%D9%88%D9%85%D9%84%D8%A7"/>
		<link rel="alternate" type="text/html" href="https://docs.joomlafarsi.com/index.php?title=%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DB%8C%DA%A9_%D9%85%D8%A7%DA%98%D9%88%D9%84_%D8%AC%D9%88%D9%85%D9%84%D8%A7&amp;action=history"/>
		<updated>2026-09-08T10:21:53Z</updated>
		<subtitle>تاریخچهٔ ویرایش‌های این صفحه در ویکی</subtitle>
		<generator>MediaWiki 1.26.2</generator>

	<entry>
		<id>https://docs.joomlafarsi.com/index.php?title=%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DB%8C%DA%A9_%D9%85%D8%A7%DA%98%D9%88%D9%84_%D8%AC%D9%88%D9%85%D9%84%D8%A7&amp;diff=2719&amp;oldid=prev</id>
		<title>Hamidy در ‏۸ فوریهٔ ۲۰۱۲، ساعت ۰۹:۳۰</title>
		<link rel="alternate" type="text/html" href="https://docs.joomlafarsi.com/index.php?title=%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DB%8C%DA%A9_%D9%85%D8%A7%DA%98%D9%88%D9%84_%D8%AC%D9%88%D9%85%D9%84%D8%A7&amp;diff=2719&amp;oldid=prev"/>
				<updated>2012-02-08T09:30:19Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://docs.joomlafarsi.com/index.php?title=%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DB%8C%DA%A9_%D9%85%D8%A7%DA%98%D9%88%D9%84_%D8%AC%D9%88%D9%85%D9%84%D8%A7&amp;amp;diff=2719&amp;amp;oldid=2694&quot;&gt;نمایش تغییرات&lt;/a&gt;</summary>
		<author><name>Hamidy</name></author>	</entry>

	<entry>
		<id>https://docs.joomlafarsi.com/index.php?title=%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DB%8C%DA%A9_%D9%85%D8%A7%DA%98%D9%88%D9%84_%D8%AC%D9%88%D9%85%D9%84%D8%A7&amp;diff=2694&amp;oldid=prev</id>
		<title>Shmata: /* ایجاد یک package نصبی از ماژول */</title>
		<link rel="alternate" type="text/html" href="https://docs.joomlafarsi.com/index.php?title=%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DB%8C%DA%A9_%D9%85%D8%A7%DA%98%D9%88%D9%84_%D8%AC%D9%88%D9%85%D9%84%D8%A7&amp;diff=2694&amp;oldid=prev"/>
				<updated>2012-01-31T05:35:15Z</updated>
		
		<summary type="html">&lt;p&gt;‏&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;ایجاد یک package نصبی از ماژول&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-right'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='fa'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;→ نسخهٔ قدیمی‌تر&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;نسخهٔ ‏۳۱ ژانویهٔ ۲۰۱۲، ساعت ۰۵:۳۵&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l275&quot; &gt;سطر ۲۷۵:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;سطر ۲۷۵:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;'''نکته : این فایل zip همان بسته نصبی ما خواهد بود .'''&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;'''نکته : این فایل zip همان بسته نصبی ما خواهد بود .'''&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/del&gt;در این مرحله میتوانیم از مدیریت جوملا اقدام به نصب این ماژول کنیم . بعد از نصب این ماژول فایل en-GB.mod_hello_world2.ini در language/en-GB/en-GB.mod_hello_world2.ini&amp;#160; قرار میگرد باقی فایلها در modules/mod_hello_world2 قرار میگرند این عمل توسط installer جوملا انجام میشود.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br /&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;در این مرحله میتوانیم از مدیریت جوملا اقدام به نصب این ماژول کنیم . بعد از نصب این ماژول فایل &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;en-GB.mod_hello_world2.ini&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;''' &lt;/ins&gt;در &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''&lt;/ins&gt;language/en-GB/en-GB.mod_hello_world2.ini&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;''' &lt;/ins&gt; قرار میگرد باقی فایلها در modules/mod_hello_world2 قرار میگرند این عمل توسط installer جوملا انجام میشود.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Shmata</name></author>	</entry>

	<entry>
		<id>https://docs.joomlafarsi.com/index.php?title=%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DB%8C%DA%A9_%D9%85%D8%A7%DA%98%D9%88%D9%84_%D8%AC%D9%88%D9%85%D9%84%D8%A7&amp;diff=2693&amp;oldid=prev</id>
		<title>Shmata: /* ایجاد یک package نصبی از ماژول */</title>
		<link rel="alternate" type="text/html" href="https://docs.joomlafarsi.com/index.php?title=%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DB%8C%DA%A9_%D9%85%D8%A7%DA%98%D9%88%D9%84_%D8%AC%D9%88%D9%85%D9%84%D8%A7&amp;diff=2693&amp;oldid=prev"/>
				<updated>2012-01-31T05:34:26Z</updated>
		
		<summary type="html">&lt;p&gt;‏&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;ایجاد یک package نصبی از ماژول&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-right'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='fa'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;→ نسخهٔ قدیمی‌تر&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;نسخهٔ ‏۳۱ ژانویهٔ ۲۰۱۲، ساعت ۰۵:۳۴&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l272&quot; &gt;سطر ۲۷۲:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;سطر ۲۷۲:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=ایجاد یک package نصبی از ماژول=&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=ایجاد یک package نصبی از ماژول=&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;اینک ما باید یک بسته zip از پوشه mod_hello_world2 تهیه کنیم به نام&amp;#160; mod_hello_world2.zip . در این مرحله میتوانیم از مدیریت جوملا اقدام به نصب این ماژول کنیم . بعد از نصب این ماژول فایل en-GB.mod_hello_world2.ini در language/en-GB/en-GB.mod_hello_world2.ini&amp;#160; قرار میگرد باقی فایلها در modules/mod_hello_world2 قرار میگرند این عمل توسط installer جوملا انجام میشود.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;اینک ما باید یک بسته zip از پوشه mod_hello_world2 تهیه کنیم به نام&amp;#160; mod_hello_world2.zip .&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;&amp;lt;br /&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;'''نکته : این فایل zip همان بسته نصبی ما خواهد بود .'''&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/ins&gt;در این مرحله میتوانیم از مدیریت جوملا اقدام به نصب این ماژول کنیم . بعد از نصب این ماژول فایل en-GB.mod_hello_world2.ini در language/en-GB/en-GB.mod_hello_world2.ini&amp;#160; قرار میگرد باقی فایلها در modules/mod_hello_world2 قرار میگرند این عمل توسط installer جوملا انجام میشود.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Shmata</name></author>	</entry>

	<entry>
		<id>https://docs.joomlafarsi.com/index.php?title=%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DB%8C%DA%A9_%D9%85%D8%A7%DA%98%D9%88%D9%84_%D8%AC%D9%88%D9%85%D9%84%D8%A7&amp;diff=2692&amp;oldid=prev</id>
		<title>Shmata در ‏۳۱ ژانویهٔ ۲۰۱۲، ساعت ۰۵:۳۲</title>
		<link rel="alternate" type="text/html" href="https://docs.joomlafarsi.com/index.php?title=%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DB%8C%DA%A9_%D9%85%D8%A7%DA%98%D9%88%D9%84_%D8%AC%D9%88%D9%85%D9%84%D8%A7&amp;diff=2692&amp;oldid=prev"/>
				<updated>2012-01-31T05:32:27Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-right'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='fa'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;→ نسخهٔ قدیمی‌تر&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;نسخهٔ ‏۳۱ ژانویهٔ ۲۰۱۲، ساعت ۰۵:۳۲&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l271&quot; &gt;سطر ۲۷۱:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;سطر ۲۷۱:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;در این قسمت مافایل های ترجمه انگلیسی ماژول نوشته ایم . در واقع دستورات&amp;#160; '''JText::_''' یا&amp;#160; '''JText::sprintf'''این امکان را فراهم میسازد تا بدون تغییر در HTML براحتی بتوانیم یک ترجمه برای ماژول اضافه کنیم .&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;در این قسمت مافایل های ترجمه انگلیسی ماژول نوشته ایم . در واقع دستورات&amp;#160; '''JText::_''' یا&amp;#160; '''JText::sprintf'''این امکان را فراهم میسازد تا بدون تغییر در HTML براحتی بتوانیم یک ترجمه برای ماژول اضافه کنیم .&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;=ایجاد یک package نصبی از ماژول=&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;اینک ما باید یک بسته zip از پوشه mod_hello_world2 تهیه کنیم به نام&amp;#160; mod_hello_world2.zip . در این مرحله میتوانیم از مدیریت جوملا اقدام به نصب این ماژول کنیم . بعد از نصب این ماژول فایل en-GB.mod_hello_world2.ini در language/en-GB/en-GB.mod_hello_world2.ini&amp;#160; قرار میگرد باقی فایلها در modules/mod_hello_world2 قرار میگرند این عمل توسط installer جوملا انجام میشود.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;اینک ما باید یک بسته zip از پوشه mod_hello_world2 تهیه کنیم به نام&amp;#160; mod_hello_world2.zip . در این مرحله میتوانیم از مدیریت جوملا اقدام به نصب این ماژول کنیم . بعد از نصب این ماژول فایل en-GB.mod_hello_world2.ini در language/en-GB/en-GB.mod_hello_world2.ini&amp;#160; قرار میگرد باقی فایلها در modules/mod_hello_world2 قرار میگرند این عمل توسط installer جوملا انجام میشود.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Shmata</name></author>	</entry>

	<entry>
		<id>https://docs.joomlafarsi.com/index.php?title=%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DB%8C%DA%A9_%D9%85%D8%A7%DA%98%D9%88%D9%84_%D8%AC%D9%88%D9%85%D9%84%D8%A7&amp;diff=2691&amp;oldid=prev</id>
		<title>Shmata در ‏۳۱ ژانویهٔ ۲۰۱۲، ساعت ۰۵:۳۱</title>
		<link rel="alternate" type="text/html" href="https://docs.joomlafarsi.com/index.php?title=%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DB%8C%DA%A9_%D9%85%D8%A7%DA%98%D9%88%D9%84_%D8%AC%D9%88%D9%85%D9%84%D8%A7&amp;diff=2691&amp;oldid=prev"/>
				<updated>2012-01-31T05:31:03Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-right'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;' lang='fa'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;→ نسخهٔ قدیمی‌تر&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;نسخهٔ ‏۳۱ ژانویهٔ ۲۰۱۲، ساعت ۰۵:۳۱&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l208&quot; &gt;سطر ۲۰۸:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;سطر ۲۰۸:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;توجه داشته باشید که ما میتوانیم به این الگو تعداد زبان و پارامترهای بیشتری را اضافه کنیم.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;توجه داشته باشید که ما میتوانیم به این الگو تعداد زبان و پارامترهای بیشتری را اضافه کنیم.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;br /&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;=اتصال به Database در [[جوملا]]=&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;div dir=ltr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;div dir=ltr&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;/modules/mod_hello_world2/helper.php&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;/modules/mod_hello_world2/helper.php&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Shmata</name></author>	</entry>

	<entry>
		<id>https://docs.joomlafarsi.com/index.php?title=%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DB%8C%DA%A9_%D9%85%D8%A7%DA%98%D9%88%D9%84_%D8%AC%D9%88%D9%85%D9%84%D8%A7&amp;diff=2690&amp;oldid=prev</id>
		<title>Shmata: صفحه‌ای جدید حاوی 'رده:کدنویسی و گسترش جوملا   = ماژول Hello World  = یک ماژول جوملا1.5 در حالت عادی م...' ایجاد کرد</title>
		<link rel="alternate" type="text/html" href="https://docs.joomlafarsi.com/index.php?title=%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF_%DB%8C%DA%A9_%D9%85%D8%A7%DA%98%D9%88%D9%84_%D8%AC%D9%88%D9%85%D9%84%D8%A7&amp;diff=2690&amp;oldid=prev"/>
				<updated>2012-01-30T21:25:39Z</updated>
		
		<summary type="html">&lt;p&gt;صفحه‌ای جدید حاوی &amp;#039;&lt;a href=&quot;/index.php?title=%D8%B1%D8%AF%D9%87:%DA%A9%D8%AF%D9%86%D9%88%DB%8C%D8%B3%DB%8C_%D9%88_%DA%AF%D8%B3%D8%AA%D8%B1%D8%B4_%D8%AC%D9%88%D9%85%D9%84%D8%A7&quot; title=&quot;رده:کدنویسی و گسترش جوملا&quot;&gt;رده:کدنویسی و گسترش جوملا &lt;/a&gt;  = ماژول Hello World  = یک &lt;a href=&quot;/index.php?title=%D9%85%D8%A7%DA%98%D9%88%D9%84&quot; title=&quot;ماژول&quot;&gt;ماژول&lt;/a&gt; جوملا1.5 در حالت عادی م...&amp;#039; ایجاد کرد&lt;/p&gt;
&lt;p&gt;&lt;b&gt;صفحهٔ تازه&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[رده:کدنویسی و گسترش جوملا ]] &lt;br /&gt;
= ماژول Hello World  =&lt;br /&gt;
یک [[ماژول]] جوملا1.5 در حالت عادی معمولا شامل 2 فایل می باشد . یک فایل شامل تنظیمات [[XML]] ویک فایل کنترل کننده [[PHP]] . فایل تنظیمات [[XML]] شامل اطلاعات عمومی ماژول می باشد اگر ماژول دارای پارامترهایی باشد که یک عملکرد یا یک مدل نمایش خاص را برای ماژول ارائه کند در قسمت پارامترهای ماژول نمایش داده می شود (که در قسمت مدیریت ماژول ها در مدیریت جوملا نمایش داده میشوند) .&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
فایل PHP وظیفه کنترل منطق برنامه و کارایی ماژول جوملا را برعهده دارد .&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
به عنوان مثال برای ایجاد یک ماژول ساده Hello World باید موارد زیر را انجام دهیم :&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
ابتدا باید یک پوشه در داخل پوشه ماژول ها (modules در فولدر ریشه جوملا ) ایجاد کنیم . نام این پوشه را mod_hello_world می گذاریم این نحوه نام گذاری و این نام حائز اهمیت است . &amp;lt;br /&amp;gt;&lt;br /&gt;
پس از ایجاد پوشه مورد نظر اقدام به ایجاد فایل XML نماییم , این فایل را در پوشه &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div dir=ltr&amp;gt;/modules/mod_hello_world/mod_hello_world.xml&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
ایجاد می کنیم دقت فرمایید که نحوه نام گذاری این فایل XML هم حائز اهمیت است .&amp;lt;br /&amp;gt;&lt;br /&gt;
نکته : این نکته بسیار مهم است که نام فایل XML و نام ماژول یکی باشند در غیر اینصورت نصب کننده [[جوملا]] قادر به نصب بسته ماژول نخواهد بود .&amp;lt;br /&amp;gt;&lt;br /&gt;
قوانین نامگذاری پوشه ها برای ایجاد ماژول : &amp;lt;br /&amp;gt;&lt;br /&gt;
•	تمامی پوشه ها باید با نام mod_ آغاز شوند&amp;lt;br /&amp;gt;&lt;br /&gt;
•	قسمت دوم نام تمام ماژول ها باید بانام فایل XML یکی باشد . &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;xml&amp;quot; &amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;install type=&amp;quot;module&amp;quot; version=&amp;quot;1.5.0&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;!--نام ماژول  --&amp;gt;&lt;br /&gt;
	&amp;lt;name&amp;gt;Hello World - Hello&amp;lt;/name&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
    &amp;lt;!-- نام نویسنده ماژول --&amp;gt;&lt;br /&gt;
	&amp;lt;author&amp;gt;Shahab Matapour&amp;lt;/author&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
    &amp;lt;!-- تاریخ ایجاد ماژول --&amp;gt;&lt;br /&gt;
	&amp;lt;creationDate&amp;gt;2011-06-23&amp;lt;/creationDate&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
    &amp;lt;!-- اطلاعات کپی رایت --&amp;gt;&lt;br /&gt;
	&amp;lt;copyright&amp;gt;All rights reserved by Sh Matapour 2011.&amp;lt;/copyright&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
    &amp;lt;!-- License اطلاعات --&amp;gt;&lt;br /&gt;
	&amp;lt;license&amp;gt;GPL 2.0&amp;lt;/license&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
    &amp;lt;!-- آدرس ایمیل نویسنده ماژول --&amp;gt;&lt;br /&gt;
	&amp;lt;authorEmail&amp;gt;sh.matapour@gmail.com&amp;lt;/authorEmail&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
    &amp;lt;!-- وب سایت نویسنده --&amp;gt;&lt;br /&gt;
	&amp;lt;authorUrl&amp;gt;www.studio-design.co&amp;lt;/authorUrl&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
    &amp;lt;!--  شماره نسخه ماژول --&amp;gt;&lt;br /&gt;
	&amp;lt;version&amp;gt;1.0.0&amp;lt;/version&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
    &amp;lt;!-- توضیحاتی مربوط به نحوه عملکرد و کارایی ماژول --&amp;gt;&lt;br /&gt;
	&amp;lt;description&amp;gt;Provides a basic &amp;quot;Hello World&amp;quot; notice&amp;lt;/description&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
    &amp;lt;!-- لیست تمامی فایلهایی که باید به همراه ماژول نصب گردند --&amp;gt;&lt;br /&gt;
	&amp;lt;files&amp;gt;&lt;br /&gt;
        &amp;lt;!--کنترلر اصلی ماژول  --&amp;gt;&lt;br /&gt;
		&amp;lt;filename module=&amp;quot;mod_hello_world&amp;quot;&amp;gt;mod_hello_world.php&amp;lt;/filename&amp;gt;&lt;br /&gt;
		&amp;lt;filename&amp;gt;index.html&amp;lt;/filename&amp;gt;&lt;br /&gt;
	&amp;lt;/files&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
    &amp;lt;!-- درصورتی که ماژول شما نیاز به پارامترهای اضافی داشت می توانید از این قسمت آن پارامترها را معرفی کنید --&amp;gt;&lt;br /&gt;
	&amp;lt;params /&amp;gt;&lt;br /&gt;
&amp;lt;/install&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
این دستورات XML صرفا برای معرفی نویسنده ماژول و تاریخ ایجاد و ... نیست بلکه برای شناسایی به نصب کننده جوملا در واقع این فایل به نصب کننده جوملا می گوید کدام فایلها باید به داخل جوملا کپی شوند و ایجاد بخش پارامترهای ماژول که از قسمت مدیریت ماژولها (از داخل جوملا ) مورد دسترسی و مدیریت قرار میگیرد, وظیفه تمامی اینکارها به عهده این فایل XML است . &amp;lt;br /&amp;gt;&lt;br /&gt;
توجه کنید به چه صورت برای تک تک فایلها یک reference ایجاد کردیم.&amp;lt;br /&amp;gt;&lt;br /&gt;
نکته : در بخش معرفی فایلها ما به هیچ عنوان '''نباید''' برای فایل XML مان یک reference ایجاد کنیم . &amp;lt;br /&amp;gt;&lt;br /&gt;
ایجاد فایل PHP در آدرس &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div dir=ltr&amp;gt;/modules/mod_hello_world/mod_hello_world.php&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php &amp;quot; &amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
//این خط برای تضمین امنیت در جوملا است.&lt;br /&gt;
defined('_JEXEC') or die('Direct Access to this location is not allowed.');&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;&lt;br /&gt;
    Hello World&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
وقتی این ماژول در جوملا اجرا چه اتفاقی می افتد ؟  پیغام Hello World در صفحه نمایش ظاهر میشود . این ساده ترین شکل ایجاد یک ماژول جوملا است .&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
در آخر نیز میتوانیم یک صفحه html ایجاد کنیم &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div dir=ltr&amp;gt;&lt;br /&gt;
/modules/mod_hello_world/index.html&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div dir=ltr&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&amp;lt;body bgcolor=&amp;quot;#FFFFFF&amp;quot;&amp;gt;&amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
این صفحه به منظور جلوگیری از دسترسی مستقیم غیر مجاز به ماژول ایجاد میشود. یعنی اگر کاربری که در مدیریت لاگین نکرده باشد و در آدرس بار خود ادرس ماژول را تایپ کند با یک صفحه سفید مواجه خواهد شد. ایجاد این صفحه برای ایجاد ماژولها اجباری نیست ولی برای جلوگیر از حمله مستقیم و دسترسی غیر مجاز مفید است .&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
برای ایجاد یک بسته نصبی از این ماژول کافیست کل پوشه mod_hello_world را با تمام محتویاتش یک بسته zip تهیه کنید نتیجه کار یک بسته mod_hello_world.zip خواهد شد و سپس میتوانید براحتی آنرا از طریق مدیریت افزونه ها در جوملا نصب کنید.&amp;lt;br /&amp;gt;&lt;br /&gt;
=حالت واقعی ماژول های جوملا =&lt;br /&gt;
ایجاد ماژول مرحله خیلی ساده و آسان بود در واقع فقط یک نمونه آزمایشی بود. در حقیقت ماژول های جوملا اهداف بزرگتری را دنبال میکنند قابلیتهای بیشتری برای ارائه دارند . بنابراین سعی میکنیم یک ماژول پیچیده تری نسبت به ماژول قبلی ایجاد کنیم. &lt;br /&gt;
برای ایجاد ماژولهای پیچیده تر ما نیاز داریم که از قبل با الگوی MVC (Model View Controller) آشنا باشیم . نام این ماژول را Hello World 2 میگذاریم و در آن معماری لایه بندی 3 لایه MVC را رعایت میکنیم.&amp;lt;br /&amp;gt;&lt;br /&gt;
= نیازمندیها =&lt;br /&gt;
برای ایجاد این ماژول ما به فایلها و فولدرهای زیر نیاز داریم :&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div dir=ltr&amp;gt;&lt;br /&gt;
/modules/mod_hello_world2/index.html &amp;lt;br /&amp;gt;&lt;br /&gt;
/modules/mod_hello_world2/mod_hello_world2.php &amp;lt;br /&amp;gt;&lt;br /&gt;
/modules/mod_hello_world2/mod_hello_world2.xml &amp;lt;br /&amp;gt;&lt;br /&gt;
/modules/mod_hello_world2/helper.php &amp;lt;br /&amp;gt;&lt;br /&gt;
/modules/mod_hello_world2/en-GB.mod_hello_world2.ini &amp;lt;br /&amp;gt;&lt;br /&gt;
/modules/mod_hello_world2/tmpl/index.html &amp;lt;br /&amp;gt;&lt;br /&gt;
/modules/mod_hello_world2/tmpl/default.php &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
= تفاوتها =&lt;br /&gt;
توجه کنید به جز فولدرها در این روش سه فایل در مقایسه با ماژول قبلی به این افزونه اضافه شده. این فایلها عبارتند از &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div dir=ltr&amp;gt;&lt;br /&gt;
helper.php , tmpl/default.php , en-GB.mod_hello_world2.ini&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
ما 2 هدف را به منظور اضافه کردن این فایلها دنبال میکنیم &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
هدف اول : جدا کردن منطق برنامه از نحوه نمایش خروجی  &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
هدف دوم : باز نویسی (خطا گیری , توسعه و ...) آن براحتی انجام میپذیرد &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
بنابراین در فایل &lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div dir=ltr&amp;gt;&lt;br /&gt;
/modules/mod_hello_world2/mod_hello_world2.php&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
خواهیم داشت :&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php &amp;quot; &amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
//برای جلوگیری از دسترسی مستقیم و غیر مجاز&lt;br /&gt;
defined('_JEXEC') or die('Direct Access to this location is not allowed.');&lt;br /&gt;
 &lt;br /&gt;
// include the helper file&lt;br /&gt;
require_once(dirname(__FILE__).DS.'helper.php');&lt;br /&gt;
 &lt;br /&gt;
// گرفتن پارامتر از تنظیمات ماژول&lt;br /&gt;
$userCount = $params-&amp;gt;get('usercount');&lt;br /&gt;
 &lt;br /&gt;
// گرفتن آیتم از هلپر برای نمایش&lt;br /&gt;
$items = ModHelloWorld2Helper::getItems($userCount);&lt;br /&gt;
 &lt;br /&gt;
// include the template for display&lt;br /&gt;
require(JModuleHelper::getLayoutPath('mod_hello_world2'));&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
این موضوع که تفاوت این قسمت را با ماژول قبلی متوجه شویم '''خیلی مهم''' است . درواقع وقتی که تصمیم گرفته ایم برروی منطق افزونه و قابلیتهای ان کارکنیم باید فایل helper را include کنیم و داده های آماده ای که میخواهند نمایش داده شوند و باید با یک قالب به خروجی ارسال شود .&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div dir=ltr&amp;gt;&lt;br /&gt;
/modules/mod_hello_world2/mod_hello_world2.xml&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;xml&amp;quot; &amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;utf-8&amp;quot;?&amp;gt;&lt;br /&gt;
&amp;lt;install type=&amp;quot;module&amp;quot; version=&amp;quot;1.5.0&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;!-- نام ماژول --&amp;gt;&lt;br /&gt;
	&amp;lt;name&amp;gt;Hello World 2 - Hello&amp;lt;/name&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
    &amp;lt;!-- نام نویسنده --&amp;gt;&lt;br /&gt;
	&amp;lt;author&amp;gt;Shahab Matapour&amp;lt;/author&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
    &amp;lt;!-- تاریخ نگارش افزونه --&amp;gt;&lt;br /&gt;
	&amp;lt;creationDate&amp;gt;2010-06-23&amp;lt;/creationDate&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
    &amp;lt;!-- اطلاعات کپی رایت --&amp;gt;&lt;br /&gt;
	&amp;lt;copyright&amp;gt;All rights reserved by Shahab Matapour 2011.&amp;lt;/copyright&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
    &amp;lt;!-- اطلاعات لایسنس --&amp;gt;&lt;br /&gt;
	&amp;lt;license&amp;gt;GPL 2.0&amp;lt;/license&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
        &amp;lt;!-- آدرس ایمیل نویسنده افزونه --&amp;gt;&lt;br /&gt;
	&amp;lt;authorEmail&amp;gt;sh.matapour@gmail.com&amp;lt;/authorEmail&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
    &amp;lt;!-- آدرس وب سایت نویسنده افزونه --&amp;gt;&lt;br /&gt;
	&amp;lt;authorUrl&amp;gt;www.studio-design.co&amp;lt;/authorUrl&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
    &amp;lt;!-- نسخه ماژول --&amp;gt;&lt;br /&gt;
	&amp;lt;version&amp;gt;1.0.0&amp;lt;/version&amp;gt; &lt;br /&gt;
 &lt;br /&gt;
    &amp;lt;!-- توضیحاتی راجب کارایی وقابلیتهای این ماژول --&amp;gt;&lt;br /&gt;
	&amp;lt;description&amp;gt;Provides a random listing of registered users&amp;lt;/description&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
    &amp;lt;!-- لیست تمامی فایلهامورد استفاده در ماژول --&amp;gt;&lt;br /&gt;
	&amp;lt;files&amp;gt;&lt;br /&gt;
		&amp;lt;filename module=&amp;quot;mod_hello_world2&amp;quot;&amp;gt;mod_hello_world2.php&amp;lt;/filename&amp;gt;&lt;br /&gt;
		&amp;lt;filename&amp;gt;index.html&amp;lt;/filename&amp;gt;&lt;br /&gt;
		&amp;lt;filename&amp;gt;helper.php&amp;lt;/filename&amp;gt;&lt;br /&gt;
		&amp;lt;filename&amp;gt;tmpl/default.php&amp;lt;/filename&amp;gt;&lt;br /&gt;
		&amp;lt;filename&amp;gt;tmpl/index.html&amp;lt;/filename&amp;gt;&lt;br /&gt;
	&amp;lt;/files&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
    &amp;lt;languages&amp;gt;&lt;br /&gt;
        &amp;lt;!-- فایلهای مربوط زبانهایی که این ماژول پشتیبانی میکند --&amp;gt;&lt;br /&gt;
        &amp;lt;language tag=&amp;quot;en-GB&amp;quot;&amp;gt;en-GB.mod_hello_world2.ini&amp;lt;/language&amp;gt;&lt;br /&gt;
    &amp;lt;/languages&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
    &amp;lt;!-- پارامترهای اختیاری که در مدیریت ماژول نمایش داده میشود --&amp;gt;&lt;br /&gt;
	&amp;lt;params&amp;gt;&lt;br /&gt;
        &amp;lt;!-- Class Suffix پارامتر مربوط به  --&amp;gt;&lt;br /&gt;
		&amp;lt;param name=&amp;quot;moduleclass_sfx&amp;quot; type=&amp;quot;text&amp;quot; default=&amp;quot;&amp;quot; label=&amp;quot;Module Class Suffix&amp;quot; description=&amp;quot;PARAMMODULECLASSSUFFIX&amp;quot; /&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
		&amp;lt;param name=&amp;quot;@spacer&amp;quot; type=&amp;quot;spacer&amp;quot; default=&amp;quot;&amp;quot; label=&amp;quot;&amp;quot; description=&amp;quot;&amp;quot; /&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
        &amp;lt;!-- این پارامتر به مدیریت این امکان را میدهد تا تعداد کاربرانی میتوانند این ماژول را مشاهده کنند محدود کند --&amp;gt;&lt;br /&gt;
        &amp;lt;param name=&amp;quot;usercount&amp;quot; type=&amp;quot;text&amp;quot; default=&amp;quot;5&amp;quot; label=&amp;quot;LABEL USER COUNT&amp;quot; description=&amp;quot;DESC USER COUNT&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;/params&amp;gt;&lt;br /&gt;
&amp;lt;/install&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
توجه داشته باشید که ما میتوانیم به این الگو تعداد زبان و پارامترهای بیشتری را اضافه کنیم.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div dir=ltr&amp;gt;&lt;br /&gt;
/modules/mod_hello_world2/helper.php&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php &amp;quot; &amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
defined('_JEXEC') or die('Direct Access to this location is not allowed.');&lt;br /&gt;
 &lt;br /&gt;
class ModHelloWorld2Helper&lt;br /&gt;
{&lt;br /&gt;
    /**&lt;br /&gt;
     * بازگرداندن لیست آیتمها&lt;br /&gt;
    */&lt;br /&gt;
    public function getItems($userCount)&lt;br /&gt;
    {&lt;br /&gt;
        // ایجاد یک کانکشن به بانک اطلاعاتی در جوملا&lt;br /&gt;
        $db = &amp;amp;JFactory::getDBO();&lt;br /&gt;
 &lt;br /&gt;
        // نحوه نگارش کوئری در جوملا &lt;br /&gt;
        $query = 'SELECT a.name FROM `#__users` AS a ORDER BY rand() LIMIT ' . $userCount  . '';&lt;br /&gt;
 	// اجرای کوئری در جوملا &lt;br /&gt;
        $db-&amp;gt;setQuery($query);&lt;br /&gt;
        $items = ($items = $db-&amp;gt;loadObjectList())?$items:array();&lt;br /&gt;
 &lt;br /&gt;
        return $items;&lt;br /&gt;
    } &lt;br /&gt;
 &lt;br /&gt;
} &lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
در این فایل helper ما سعی کردیم با بانک اطلاعاتی ارتباط برقرار کنیم و یک کوئری نیز اجرا کنیم این یک نمونه آموزشی و الگوی ارتباط با دیتابیس در جوملا 1.5 است.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div dir=ltr&amp;gt;&lt;br /&gt;
/modules/mod_hello_world2/tmpl/default.php&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;source lang=&amp;quot;php &amp;quot; &amp;gt;&lt;br /&gt;
&amp;lt;?php defined('_JEXEC') or die('Restricted access'); // no direct access ?&amp;gt;&lt;br /&gt;
&amp;lt;?php echo JText::_('RANDOM USERS'); ?&amp;gt;&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
    &amp;lt;?php foreach ($items as $item) { ?&amp;gt;&lt;br /&gt;
    &amp;lt;li&amp;gt;&lt;br /&gt;
        &amp;lt;?php echo JText::sprintf('USER LABEL', $item-&amp;gt;name); ?&amp;gt;&lt;br /&gt;
    &amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;?php } ?&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
در این فایل ما یک html نامرتب (فعلا بدون استایل) ایجاد کردیم در این فایل حلقه ای وجود دارد که باعث میشود تمام items هاییکه از helper بازگردانده میشود را به نمایش درآورد.&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div dir=ltr&amp;gt;&lt;br /&gt;
/modules/mod_hello_world2/en-GB.mod_hello_world2.ini&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;div dir=ltr&amp;gt;&lt;br /&gt;
LABEL USER COUNT=User Count &amp;lt;br /&amp;gt;&lt;br /&gt;
DESC USER COUNT=The number of users to display &amp;lt;br /&amp;gt;&lt;br /&gt;
RANDOM USERS=Random Users for Hello World2 &amp;lt;br /&amp;gt;&lt;br /&gt;
USER LABEL=%s is a randomly selected user &amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
در این قسمت مافایل های ترجمه انگلیسی ماژول نوشته ایم . در واقع دستورات  '''JText::_''' یا  '''JText::sprintf'''این امکان را فراهم میسازد تا بدون تغییر در HTML براحتی بتوانیم یک ترجمه برای ماژول اضافه کنیم .&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
اینک ما باید یک بسته zip از پوشه mod_hello_world2 تهیه کنیم به نام  mod_hello_world2.zip . در این مرحله میتوانیم از مدیریت جوملا اقدام به نصب این ماژول کنیم . بعد از نصب این ماژول فایل en-GB.mod_hello_world2.ini در language/en-GB/en-GB.mod_hello_world2.ini  قرار میگرد باقی فایلها در modules/mod_hello_world2 قرار میگرند این عمل توسط installer جوملا انجام میشود.&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
منبع : &amp;lt;nowiki&amp;gt; http://docs.joomla.org/Creating_a_simple_module&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
جمع آوری و ترجمه: [http://forum.joomlafarsi.com/members/26237-shmata شهاب مطاع پور]&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{{معرفی پشتیبانی}}&lt;br /&gt;
&lt;br /&gt;
{{کپی رایت}}&lt;br /&gt;
&lt;br /&gt;
[[رده:مقالات جوملا]] [[رده:زبان برنامه نویسی تحت وب]]&lt;/div&gt;</summary>
		<author><name>Shmata</name></author>	</entry>

	</feed>