Baglantilar


Kategori: Genel

Evet arkadaşlar üyeleri bu dökümanda herhangi bir modu manuel kurmayı öğreneceğiz.İlk önce manuel kurmayı şöyle bir özetleyelim.Manuel Kurulum Herhangi bir modu Admin panelinden değilde, kodları sitedeki dosyaları açarak elle değiştirmek demektir.Peki Neden Manuel kuralım, hazıra konmak varken.Bildiğiniz gibi bütün modlar default temaya göre kodlanır.Bunun sebebi herkesin sisteminde default temanın olmasıdır.Eğer bir defaultdan başka bir tema tercih ettiysek, kurmak istediğimiz bir modu manulel kurarız.

Şimdi genel olarak manuel kurulumu kavradık.Şimdi temel bilgilerden başlayarak yavaş yavaş manuel kurmayı öğrenelim.

package-info.xml dosya yapısı
Bu dosya her modifikasyonun içinde vardır.Bize genel bilgileri verir.
Komutlar
– <readme> </readme> = Manuel kurulum için iÅŸimize yarayan bir bilgi deÄŸil aslında.Ama ben yinede söyleyeyim.Bu komut Mod hakkında bilgi içerir.Modu otomatik kurarken üstte bir kaç bilgi gözükür iÅŸte o bu kodlar arasındaki yazılardır.2 türlü yapısı vardır;<readme type=”inline”> veya <readme type=”file”. <readme type=”file”>okubeni.txt</readme> bunun anlamı mod dosyası içindeki okubeni.txt dosyası içinde yazar ve mod hakkında bilgi içeriyor.EÄŸer bu “inline” ÅŸeklinde olsaydı, gerekli bilgiler <readme type=”inline”> Gerekli Bilgiler </readme>
ÅŸeklinde olurdu.
– <install> </install> = Modu manuel kuruyoruz deÄŸil mi? O zaman bu komutlar arasında kalan ÅŸeyler bizi ilgilendiriyor. <install for=”SMF 1.1″> ÅŸeklindeki ifadeler, bu modun, ancak orada yazılı forum sürümlerine uygulanabileceÄŸini ifade eder.
– <modification> </modification> = Modu kurmaya baÅŸladık, bu komut onun ifadesidir. <modification type=”file”> ifadesi, yapacağımız deÄŸiÅŸikliklerin package-info.xml dışında bir dosyada saklandığını ifade eder. Bu dosyanın kim olduÄŸunu, <modification format=”boardmod”> .mod uzantılı dosyalar, <modification format=”xml”> .xml uzantılı dosyalar olarak ifade eder. <modification reverse=”true”> ise, modu manuel kaldırmak istersek, burada yaptığımız iÅŸlemlerin tam tersini yapmamız gerektiÄŸini ifade eder. Ör: <modification type=”file” reverse=”false” format=”boardmod”>deneme_mod.mod</modification> Burada kod türü dosya (file) olarak ifade edilmiÅŸ ve bu dosya (yani kurulum bilgileri) deneme_mod.mod isimli dosyada saklanıyor denmiÅŸtir.
– <uninstall> </uninstall> = Modu manuel kaldıracaksak burası bizi ilgilendiriyor. <uninstall for=”SMF 1.1″> yazıyor ise bu modun sadece yazılı sistemden bu ÅŸekilde kaldırılacağını söyler.

– require-dir ve de require-file komutları

CODE

<require-dir name=”resimler” destination=”$imagesdir” />
<require-file name=”resim.jpg” destination=”$imagesdir/resimler” />


Bu örneğin birinci komutunda mod, paketin içinden resimler isimli klasörü çıkardı ve /Themes/default/images içerisine attı ve ikinci komutunda o resimler klasörüne resim.jpg isimli dosyayı attı.
– Code Komutu
<code>deneme.php</code>
Burada, deneme.php dosyası önce forum klasörüne atılır, daha sonra tarayıcıdan bu dosya açılmış gibi çalıştırılır. (mod kurulurken) Ama biz şu anda modu manuel kurmayı anlattığımız için kendimiz çalıştıracağız. Yani, deneme.php dosyasını paketten çıkarıp foruma atacağız, sonra da bir defaya mahsus olmak üzere bu dosyayı tarayıcıdan çalıştıracağız. Ör:
www.benimsitem.com/forumum/deneme.php

Modifikasyon dosyalarını açtığımızda asıl işlem yapacağımız 2 çeşit uzantı vardır.Bunlar .mod ve .xml uzantılardır.
.mod uzantılı modifikasyon kurulumu

– <edit file></edit file> = Bu komutu gördüğümüz dosyayı hemen açıyoruz çünkü iÅŸlemi bu dosya üzerinde yapacakmışız.
Örn: <edit file> $themedir/boardindex.template.php </edit file> $themedir default temasıdır. yani bundan sonraki kodl ataklarını default temasının boardindex.template.php dosyasına yapacakmışız.
$themedir => bu bizim varsayılan tema klasörümüz. Yani /Themes/default
$boarddir => bu bizim forumumuzun ana klasörü. Yani /
$sourcedir => bu bizim kaynak klasörümüz. Yani /Sources
$languagedir => bu bizim dil dosyalarımızın olduğu klasördür. Yani /Themes/default/languages
$imagesdir => bu bizim temamızıa ait tüm resimler / ikonlarımızın bulunduğu klasörümüzdür. Yani /Themes/images

– <search for></search for> = Bu kod ara anlamındadır.bi önceki edit file dosyası üzerinde bu kodlar arasındaki, kodları arayacağız
– <add after></add after> = hemen sonra ekle demek <add after> burada yazan kodları yukarıda search ettiÄŸimiz kodlardan hemen sonra ekliyoruz </add after>
– <add before></add before> = hemen önce ekle demek <add after> burada yazan kodları yukarıda search ettiÄŸimiz kodlardan hemen önce ekliyoruz
– <replace></replace> = DeÄŸiÅŸtir demek <replace> Burada yazan kodları search ettiÄŸimiz kodlarla deÄŸiÅŸtiriyoruz </replace>

Manuel Kurulum örneği

QUOTE

<edit file>
$themedir/boardindex.template.php
</edit file>

boardindex.template.php dosyasını açıyoruz.

QUOTE

<search for>
// Show the “Child Boards: “. (there’s a link_children but we’re going to bold the new ones…)
</search for>

// Show the “Child Boards: “. (there’s a link_children but we’re going to bold the new ones…) kodunu arıyoruz

QUOTE

<add after>
if (!empty($board[‘children’]))
{
</add after>

Aradığımız kodun hemen sonrasına;
if (!empty($board[‘children’]))
{
Kodunu ekliyoruz

QUOTE


<edit file>
$themedir/index.template.php
</edit file>

Ä°ndex.template.php dosyasını açıyoruz…

QUOTE

<search for>
// Show the menu here, according to the menu sub template.
template_menu();
</search for>

// Show the menu here, according to the menu sub template.
template_menu();

diye arama yapıyoruz…

<add before>
echo ‘<br /><table align=”center” width=”100%”><tr><td class=”catbg” align=”center”>Manuel Mod Kurulumu</td></tr></table>’;
</add before>

Hemen öncesine
echo ‘<br /><table align=”center” width=”100%”><tr><td class=”catbg” align=”center”>Manuel Mod Kurulumu</td></tr></table>’;
Kodunu ekliyoruz

QUOTE

<edit file>
$themedir/boardindex.template.php
</edit file>

QUOTE

<search for>
<td class=”windowbg2″ width=”100%”>
<span class=”middletext”>
‘, $txt[‘most_online_today’], ‘: <b>’, $modSettings[‘mostOnlineToday’], ‘</b>.
‘, $txt[‘most_online_ever’], ‘: ‘, $modSettings[‘mostOnline’], ‘ (‘ , timeformat($modSettings[‘mostDate’]), ‘)
</span>
</td>
</search for>

QUOTE

<replace>
<td class=”windowbg2″ width=”100%” aling=”center”>
Burda online olanlar yazması gerekiyor ama ben bunu kaldırıp yerine su anda okudugunuz metini ortanmış biçimde ekliyorum
</td>
</replace>

bununla deÄŸiÅŸtiriyoruz

.xml Dosyaları ile modifiye

Değişiklik kodları

CODE

<file name=”$languagedir/Modifications.turkish.php”>
<operation>
<search position=”after”><![CDATA[
?>]]></search>
<add><![CDATA[
//]]></add>
</operation>
</file>

– <file name DeÄŸiÅŸiklik yapacagımız dosyayı tanımlar bize (<edit file> ile aynı iÅŸlev)
– <operation> operasyonu baÅŸlatıyoruz
– <add><![CDATA[ Modun Ä°ÅŸlevi ]]</add> Bu kod yapacagımız deÄŸiÅŸikliÄŸin yazılı oldugu yerdir…Modun Ä°ÅŸlevi yazan yerde kodlar yazar ve biz ordaki kodları bize seach te ne diyorsa ona gore ekleriz…
– <search position=”after”><![CDATA[ Aranacak kodlar ]]></search> arıyoruz
– position=”after” Aranacak kodların eklenecek kodlardan sonra olacagını anlatıyor (<add before> iÅŸlevinin aynısı)
– position=”before” Aranacak kodların eklenecek kodlardan önce olacagını anlatıyor (<add after> iÅŸlevinin aynısı)
– position=”replace” Aranacak kodların eklenecek kodlarla deÄŸiÅŸtileceÄŸini anlatıyor…
– position=”end” Dosyanın sonuna ekleneceÄŸini anlatıyor

Manuel Kurulum Örneği

QUOTE

<file name=”$themedir/index.template.php”>


İndex.template.php dosyasını açıyoruz

QUOTE

<search position=”before”><![CDATA[
// Show the menu here, according to the menu sub template.
template_menu();]]></search>

// Show the menu here, according to the menu sub template.
template_menu();diye arama yapıyoruz

QUOTE


<add><![CDATA[echo ‘<br /><table align=”center” width=”100%”><tr><td class=”catbg” align=”center”>Manuel Mod Kurulumu</td></tr></table>’;
]]></add>

hemen sonra echo ‘<br /><table align=”center” width=”100%”><tr><td class=”catbg” align=”center”>Manuel Mod Kurulumu</td></tr></table>’; bu kodları ekliyoruz

GeliÅŸen mantıklar yine aynısın takıldığınız yer olursa lütfen söyleyiniz…

- Bu yazı şu ana kadar 568 kez görüntülendi..
Yorumlar ve Geribildirimler
1 adet
benimjoomla #
27 Aralık 2008, 04:26

selam dostum eline sağlık anlatınlarım için paylaşımın için. dostum bu yazı sana ail ise alıntı değil ise smf de seni görmek isteriz.. bende smf yapısına başvurdum yeni yeni öğreniyorum fakat sen uçmuşsun:D
bence senin fikirlerine ihtiyacımız var yeni modül bulmaya yeni şeyler bulmak iyi olmazmı paylaşmak demi. neyse tekrardan teşekkür ederim.

Sizin Yorumunuz



Yazilar için RSS aboneligi