Gönderen Konu: Blok İçinde Bloklar Oluşturmak - SimplePortal Modifikasyonu  (Okunma sayısı 2455 defa)

0 Üye ve 1 Ziyaretçi konuyu incelemekte.

Çevrimdışı D®agon

  • Ezberletmez Öğretir
  • Administrator
  • Süper Mega üye
  • *******
  • İleti: 11650
  • +524/-0
  • Cinsiyet: Bay
    • Arif Hocam
Modifikasyonun görünümü:
[img width=300 height=195]http://www.uyanangenclik.com/gallery/1_30_01_17_11_04_23.png[/img]

Blok İçinde Bloklar Oluşturmak için Bloklara yeni PHP içerik oluşturarak aşağıdaki kodları ekleyin.

[code]$blocks = array(
array(
'label' => 'Son İletiler',
'type' => 'sp_recent',
'parameters' => array('display' => 1),
),
array(
'label' => 'Son Konular',
'type' => 'sp_recent',
'parameters' => array('type' => 1, 'display' => 1),
),
array(
'label' => 'En Çok İleti Gönderenler',
'type' => 'sp_topPoster',
'parameters' => array(),
),
array(
'label' => 'Takvim',
'type' => 'sp_calendar',
'parameters' => array(),
),
);

global $txt;

$button_list = array();
foreach ($blocks as $id => $block)
{
$txt['sp_bib_label_' . $id] = $block['label'];

$button_list[] = array(
'text' => 'sp_bib_label_' . $id,
'image' => '',
'lang' => true,
'url' => '#sp_bib_' . $id . '" id="sp_bib_button_' . $id . '" onclick="sp_bib_change(' . $id . '); return false;',
);
}

$button_list[0]['active'] = true;

echo '
<div style="overflow: auto;">
', template_button_strip($button_list), '
</div>';

foreach ($blocks as $id => $block)
{
echo '
<div id="sp_bib_', $id, '"', $id != 0 ? ' style="display: none;"' : '', '>';

$block['type']($block['parameters'], 0);

echo '
</div>';
}

echo '
<script language="JavaScript" type="text/javascript"><!-- // --><![CDATA[
function sp_bib_change(id)
{
for (var i = 0; i < ', count($blocks), '; i++)
{
document.getElementById(\'sp_bib_\' + i).style.display = i == id ? \'\' : \'none\';
document.getElementById(\'sp_bib_button_\' + i).className = \'button_strip_\' + i + (i == id ? \' active\' : \'\');
}
}
// ]]></script>';[/code]

Şu anki haliyle Son İletiler, Son Konular, En Çok İleti Gönderenler ve Takvim bloklarını gösteriyor.

Daha fazlasını eklemek için:

/Sources/PortalBlocks.php'den göstermek istediğiniz blok türünün fonksiyon ismini almalıyız.
(Örneğin, Yönetim Ekibi türü için fonksiyon ismi sp_staff).

[code] array(
'label' => 'Alt Blok Başlığı',
'type' => 'FONKSİYON İSMİ',
'parameters' => array(), // Parametreler
),[/code]

Yani Yönetim Ekibi bloğu için şöyle bir şey ekleyeceğiz:

[code] array(
'label' => 'Yönetim Ekibi',
'type' => 'sp_staff',
'parameters' => array('lmod' => 0), // Moderatörleri gösterdik
),[/code]

[b]Not:[/b]
profil için; sp_userInfo
Online listesi; sp_whosOnline
arama için; sp_quickSearch

 

Voiser