Yeni sayfa yapmak için basit bir şekilde html bilmeniz gerekiyor.Öncelikle kalıplardan kullandığınız temaya girin ve yeni kalıp oluşturun.Örneğimizde kalıbın adını mybbdestek koyuyoruz.Ben size ilk denemeniz için hazır bir kod koyuyorum,gerekli yerleri kendinize göre düzenleyin.
<html>
<head>
<title>SAYFA BAŞLIĞI BURAYA</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9">
$headerinclude
</head>
<body>
$header
<table cellspacing="0" cellpadding="0" border="0" width="100%" align="center">
<tr>
<td class="tborder">
<table cellspacing="1" cellpadding="4" width="100%">
<tr>
<td class="thead"><strong>TABLO BAŞLIĞI BURAYA</strong></td>
<tr><td colspan="2" valign="top" class="trow1">
<table width="100%" border="0">
<tr>
KODUNUZ BURAYA
</tr></table></td></tr></table></td></tr></table>
$footer
</body>
</html>
Gerekli yerleri belirttim.Kendinize göre düzenlersiniz.Şimdi biraz kodları açıklayalım.
Html dilinin ana tagıdır.Herşey bunun içine yazılır.
Html tagının içindekiler:
Türkçesi kafa anlamına gelen bu tag,aynen html'in beyni gibidir.Önemli bilgiler bunun içinde yer alır.
Head tagının içindekiler:
Buraya sayfa başlığı yazılır.
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-9">
Bunun içinde sayfa kodlamaları gibi şeyler vardır.Şimdilik bununla pek işimiz olmayacak.
Bu html dilinde yer almaz.MyBB komutudur.headerinclude kalıbını çağırır.
Head tagının Sonu
-------------------------------------------------------------------
Türkçesi gövde anlamına gelen bu tag aynı şekilde html'in gövdesidir.Biz ağırlıklı bu tagın içinde çalışacağız.Kullanıcının gördüğü şeyler bu tagın içinde yer alır.
Body tagının içindekiler:
Bu tag da html'de yer almaz.MyBB komutudur, header kalıbını çağırır.
Bu tag tablo oluşturmaya yarar.Yukarıdaki örnekte gördüğünüz alttaki kodlar tablonun özelliklerini belirler.
cellspacing="0" cellpadding="0" border="0" width="100%" align="center"
Bunları tek tek inceleyecek değiliz ama esas gerekli olan ikisini inceleyelim.
Tablo kenarı kalınlığıdır.0 tavsiyemdir.
Tablo genişliğidir.Yukarıdaki örnekte yüzdelik kullanılmıştır.Yüzdelik kullanımında kullanıcıya gözüken sayfa üzerinden hesaplanır yani çözünürlük farklarında pek hissedilmez.Tavsiyem yüzdelik kullanın.Tablo tagının içinde kalan tagları incelemiyorum ararsanız bilgiye ulaşırsınız.
Bu tag da html'de yer almaz.MyBB komutudur, footer kalıbını çağırır.
Body tagının Sonu
-------------------------------------------------------------------
Html tagının Sonu
-------------------------------------------------------------------
Html hakkında genel bir bilgi edindik.Şimdi kalıbımızı çağıran php sayfasını oluşturacağız.Adı sizin isteğinize kalmış.İçeriğini veriyorum ve satır satır açıklayacağım.
<?php
define("IN_MYBB", 1);
require "./global.php";
require "./inc/functions_post.php";
add_breadcrumb("MyBB Destek Plugin Dersleri");
eval("\$mybbdestek .= \"".$templates->get("mybbdestek")."\";");
output_page($mybbdestek);
?>
Php kodunun başlangıcı.
define("IN_MYBB", 1);
require "./global.php";
require "./inc/functions_post.php";
Düzenlemeyeceğiniz yerler.
add_breadcrumb("MyBB Destek Plugin Dersleri");
Navigasyon çubuğunda gösterilecek metin.
eval("\$mybbdestek .= \"".$templates->get("mybbdestek")."\";");
output_page($mybbdestek);
Kalıbımızı çağırıyoruz.mybbdestek yazıları yerine kendi kalıbınızın adını yazın.
Php kodu sonu.
-------------------------------------------------------------------
Şimdi sıra plugin haline getirmekte.Yine size örnek bir kod sunacağım ve gerekli yerleri belirticeğim.
<?php
function pluginAdınız_info()
{
return array(
'name' => 'Plugin Adı',
'description' => 'Plugin açıklaması',
'website' => 'Plugin websitesi',
'author' => 'Yapan',
'authorsite' => 'yapanın sitesi',
'version' => 'plugin versiyonu'
);
}
function pluginAdınız_activate()
{
global $db;
$new_templates['mybbdestek'] = "<html>
<head>
<title>MYBB DESTEK</title><meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-9\">
{\$headerinclude}
</head>
<body>
{\$header}
<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" width=\"100%\" align=\"center\">
<tr>
<td class=\"tborder\">
<table cellspacing=\"1\" cellpadding=\"4\" width=\"100%\">
<tr>
<td class=\"thead\"><strong>MYBB DESTEK</strong></td>
<tr><td colspan=\"2\" valign=\"top\" class=\"trow1\">
<table width=\"100%\" border=\"0\">
<tr>
Yeni sayfa dersleri by Kabus
</tr></table></td></tr></table></td></tr></table>
{\$footer}
</body>
</html>";
foreach($new_templates as $title => $template)
{
$db->query("INSERT INTO `".TABLE_PREFIX."templates` VALUES (NULL, '$title', '$template', '-2', '120', '', '1158715531')");
}
}
function pluginAdınız_deactivate()
{
global $db;
$delete_templates = array('mybbdestek');
foreach($delete_templates as $title)
{
$db->query("DELETE FROM `".TABLE_PREFIX."templates` WHERE title='$title' AND sid='-2'");
}
}
?>
Açıklamaları pluginde yaptım ama bazı bölümleri yine de açıklamamız gerekiyor.
function pluginAdınız_info()
info fonksiyonu.Plugin bilgileri bu fonksiyonun içinde bulunur.
function pluginAdınız_activate()
activate fonksiyonu.Plugin aktif edildiğinde yapılacak işlemler burada bulunur.
function pluginAdınız_deactivate()
deactivate fonksiyonu.Plugin kapatılınca yapılacak işlemler burada bulunur.
$new_templates['mybbdestek'] = "<html>
<head>
<title>MYBB DESTEK</title><meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-9\">
{\$headerinclude}
</head>
<body>
{\$header}
<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" width=\"100%\" align=\"center\">
<tr>
<td class=\"tborder\">
<table cellspacing=\"1\" cellpadding=\"4\" width=\"100%\">
<tr>
<td class=\"thead\"><strong>MYBB DESTEK</strong></td>
<tr><td colspan=\"2\" valign=\"top\" class=\"trow1\">
<table width=\"100%\" border=\"0\">
<tr>
Yeni sayfa dersleri by Kabus
</tr></table></td></tr></table></td></tr></table>
{\$footer}
</body>
</html>";
Bu kodu açıklamam gerekiyor çünkü burda kalıp bilgileri mevcut.
$new_templates['mybbdestek']
mybb destek yerine kendi kalıbınızın adını yazın.
<html>
<head>
<title>MYBB DESTEK</title><meta http-equiv="Content-Type\" content=\"text/html; charset=iso-8859-9\">
{\$headerinclude}
</head>
<body>
{\$header}
<table cellspacing=\"0\" cellpadding=\"0\" border=\"0\" width=\"100%\" align=\"center\">
<tr>
<td class=\"tborder\">
<table cellspacing=\"1\" cellpadding=\"4\" width=\"100%\">
<tr>
<td class=\"thead\"><strong>MYBB DESTEK</strong></td>
<tr><td colspan=\"2\" valign=\"top\" class=\"trow1\">
<table width=\"100%\" border=\"0\">
<tr>
Yeni sayfa dersleri by Kabus
</tr></table></td></tr></table></td></tr></table>
{\$footer}
</body>
</html>
Kalıp içeriği.Kendi kalıbınızın içeriğini girin.Fakat görüldüğü gibi ""larda, ' 'lar da ve $ işaretlerinin başında \ var.Çünkü PHP bunları çeşitli php kodları olarak algılar.Bunların html olduğunu böyle belirtiyoruz.Siz de kendi kodlarınızı buna göre düzenleyin.Artık yapılacak birşey kalmadı.İlk plugininizi yapın ve yorumlarınızı belirtin.
Tamamı bana aittir.Emeğe saygı...