News:

Want to get involved in developing SMF, then why not lend a hand on our github!

Main Menu

1.1 serisi Default temaya yeni tuşlar eklemek

Started by Harzem, February 24, 2006, 03:03:38 PM

Previous topic - Next topic

Harzem

Selamlar,

Burada size, SMF 1.1 RC2 default temada, tema menüsüne yeni tuşların nasıl ekleneceğini yazıyorum. Hani şu "Home - Help - Search - Login - Register" yazan menü ;) Mesela ben, oraya bir "Kurallar" tuşu koydum. Siz de oraya eklemek istediklerinizi koyabilirsiniz.

Öncelikle, oraya ne eklemek istediğine karar verin :D Ben burada SMF'ye link veren bir tuş yapacağım.

Index.template.php açılır. Şu kod bulunur:

// Otherwise, they might want to [logout]...
if ($context['user']['is_logged'])
echo ($current_action == 'logout' || $context['browser']['is_ie4']) ? '<td class="maintab_active_' . $first . '">&nbsp;</td>' : '' , '
<td valign="top" class="maintab_' , $current_action == 'logout' ? 'active_back' : 'back' , '">
<a href="', $scripturl, '?action=logout;sesc=', $context['session_id'], '">' , $txt[108] , '</a>
</td>' , $current_action == 'logout' ? '<td class="maintab_active_' . $last . '">&nbsp;</td>' : '';


Altına, veya üstüne, veya buna benzer üstteki diğer kod bloklarının arasına, kısaca menüde nereye isterseniz oraya şu kod eklenir:

// El yapimi yeni menüm :)
if ($context['user']['is_logged'])
echo ($context['browser']['is_ie4']) ? '<td class="maintab_active_' . $first . '">&nbsp;</td>' : '' , '
<td valign="top" class="maintab_back'>
<a href="http://www.simplemachines.org/">SMF</a>
</td>';


Şimdi,
if ($context['user']['is_logged'])
olarak eklediğimiz yer, bu menüyü sadece üyelerin görmesini sağlıyor. Eğer sadece ziyaretçiler görsün dersek, bu tek satır kodu silip yerine şunu koyacağız:
if ($context['user']['is_guest'])

Eğer herkes görsün dersek o satırı sileceğiz, yerine bişey koymayacağız. Şimdi orada "SMF" yazan ve tıklayınca simplemachines.org'u açan bir tuşumuz oldu.

Eğer dersek ki, bu linke tıklayınca aynı pencerede değil de yeni bir sayfada açılsın, o zaman şu satırı silip:
<a href="http://www.simplemachines.org/">SMF</a>
yerine şunu koyacağız:
<a href="http://www.simplemachines.org/" target="_blank">SMF</a>

Not:
Bu koyduğumuz tuşlar hiçbir zaman "seçili" olmaz. Yani nasıl şu anda bu sitedeki tuşlardan "Home" seçili, ya da başkasına tıklayınca o seçili oluyor, bu tuşlar öyle olmaz. Hiç yapmadığım şey değil ;) ama seçili olması için yeni bir action tanımlamamız gerekiyor, ona yeni tema dosyaları atamamız gerekiyor, veritabanı ile oynamamız gerekiyor, ohoo, çok iş. Ama ille de o seçili olsun derseniz o zaman yeni bir yazı hazırlarım :D

Hadi kolay gelsin.

Elmacik, bunu SSS'ye koy istersen, sonra da bu postayı sil yer kaplamasın ;)

Elmacik

#1
Birincisi, bunu eksik vermişsin :D
İkincisi ben daha önce vermiştim :D Ama şimdi hiç arayıp bulmaklan uğraşamam :D
Seçili olması için yeni bir ekşın demişsin, gerek yok. Yani butonların seçili olması için.
Örneğini yaptım bakabilirsin: www.turkforum.cc/index.php?action=shout_elm
Array zaten hazır. Sadece kendi ekşınını ekleyeceksin onun içine.
O da senin bu bulduğun kodların hemen üstünde ;)
Düzenleme: Pardon sen ekşın koymamışsın :D
O zaman ekşın olmadan o buton nasıl seçili olur onu da ben anlatayım anlatayım.
Öncelikle butonların bulunduğu template_menu() fonksiyonu içine şunu koyalım:

$bizim_sayfa = $_GET['topic'];
if ($bizim_sayfa == 5)
$current_action = 'kurallar';

Burada HarzeM'in örneğini kullandım dedim ki kurallar butonunu bir topike yönlendirmek istiyorsunuz ve bunun da numarası 5
Daha sonra da bir butonun kodlarını kopyalayıp ekşını değiştiriyoruz :)
Örneğin yine HarzeM'in örneğini kullanacak olursak :D Aşağıdaki gibi yapabiliriz:

// Bizim deli kurallarımız..
echo ($current_action=='kurallar' || $context['browser']['is_ie4']) ? '<td class="maintab_active_' . $first . '">&nbsp;</td>' : '' , '
<td valign="top" class="maintab_' , $current_action == 'kurallar' ? 'active_back' : 'back' , '">
<a href="', $scripturl, '?topic=5.0">' , $txt[103] , '</a>
</td>' , $current_action == 'kurallar' ? '<td class="maintab_active_' . $last . '">&nbsp;</td>' : '';


Yeni buton ekliyorsak, konu haricinde bir şey açılacaksa, bu da kendimize özel bir sayfa, dolayısıyla da yeni bir ekşın demektir.
O zaman SSS diyorum başka bir şey demiyorum :P
Eline sağlık HarzeM, her ne kadar daha önce anlatılmış da olsa, eksik de olsa, her nerede yaşatılıyor ve yaşanıyorsa da :P :P :P
Home of Elmacik

$כђiŹøƒ®ΣиiΛ™

öncelikle ellerine sağlık harzem. ama ben şöyle bir şey istiyorum. elimde bir chat script kodu war. ben oraya tuş eklediğimde o tuşa bir link değilde o scrtip kodunu eklemk istiyorum.. bilmem anlatabildimmi.. :( zor bir şey mi istiyorum mümkün mü acaba. umarım sorunumu anlatabilmişimdir

Elmacik

#3
redstar, SSS... :)
Ekşın ekşın deyip durduğumuz odur ;) (action)
Home of Elmacik

Duranek

#4
Arkadaşlar öncelikle verdiğiniz bilgiler için teşekkür ederim. Ancak bunu denediğimde şöyle bir hata alıyorum.

Harzem

YAŞARAZZİ

diye bir hata aldığını sanmıyorum. Yanlış resmi koymuşsun ;)

Duranek

Çok özür dilerim. Mahcup oldum. Hemen düzelticem. Pardon. Tam siteyle uğraşıyordum. 2-3 tane imageshack açıktı karışmış özür dilerim tekrar.

Harzem

index.template.php dosyasında, resimde bahsi geçen kodları bul.

kırmızı ile işaretlenmiş satırın hemen üstündeki satır var, orada şu yazıyor:
class="maintab_back'>

sondaki tek tırnağı çift tırnak ile değiştir.

class="maintab_back">

diye yani. Yan yana iki tane tek tırnak koyma. Silip çift tırnak koymalısın.

KirpiX

yukarıda arkadaşın bahsetmiş olduğu yanlışlıkla yolladığı resimdeki gibi hata aldığımızda bu türde bir düzenlememi yapmamız lazım hep harzem? bende temalarda değişiklik yapmak için kolları sıvasam ilk denemelerimde bu türde bir hatalar çıkmakta ve vazgeçip geri dönmekteyimde :)
MsN Durumum Şu Anda------->
http://www.locked5.com/

Harzem

DreamWeaver gibi bir editör kullanırsan, kodlarda renklendirme sayesinde tırnak hatalarını rahatça görebilirsin.

Duranek

Cevabınız için çok teşekkür ederim. Ancak sorunum şu.. 7dana temasında denedim bunu 7dana temasının index.templateinde..Ama böyle oldu.

Harzem


Duranek

İlla git default kullan yani diyosun  :D Çok istiyorum bu tip şeyler eklemek ama genelde hepsi default için oluyor  :( Neyse.. Yine de çok sağolun.

AmoN

merhaba banada 7 dana için lasm ne yapabilirm

rottegroupe

Harzem ellerine sağlık yalnız bir kaç kuralına el attım site sahibine haber verin demişsin bende buradan haber vereyim :)
SSPE (Subakut Sklorezon Panansefalit - Kızamık Virüsü)

BU ÇOCUKLAR ÖLMESİN

www.sspehastaligi.net

Harzem

Zaten benim kurallara el atmayan kalmadı ki :) Kasıp yazdım o kadar :P

Yok yok şaka, ben kastım ki siz kasmadan kural koyabilesiniz. Gönül rahatlığıyla kullan. Haber verdiğin için de teşekkür ederim.

Crazy

Buton eklemeyle ilgili genel ingilizce yardım sayfasından bakarak aşağıdaki gibi bir ekleme yaptım.. (bana daha kolay geldi cunku)

index.template.php 'de

function template_menu()  kodunun altında bir yere

// Show the [Radyo] button.
echo ($current_action == 'Radyo' || $context['browser']['is_ie4']) ? '<td class="maintab_active_' . $first . '">&nbsp;</td>' : '' , '
<td valign="top" class="maintab_' , $current_action == 'radyo' ? 'active_back' : 'back' , '">
<a href="http://72.232.194.50:8009/listen.pls">' , Radyo , '</a>
</td>' , $current_action == 'radyo' ? '<td class="maintab_active_' . $last . '">&nbsp;</td>' : '';


kodunu ekledim..
Her yerde güzel bir şekilde gözüküyor gözükmesine de..Action tanımlı olmadıgı icin forum hata mesajları icinde
Use of undefined constant Radyo - assumed 'Radyo'
Dosya: /home/fistik/domains/fistikforum.com/public_html/test/Themes/default/BoardIndex.template.php (eval?)
Satır: 554

şeklinde bir hata alıyorum..Acaba bu hatadan kurtulmak icin ne yapmalıyım?

Elmacık'ın http://www.simplemachines.org/community/index.php?board=76.0 adresinde verdiği işleri de denedim.. ancak o şekilde yapınca verilen linki yazdıgımda (www.site.com/forum/index.php?action=radyo   gibi ) sadece radyonun url adresi cıkıyor..

Yardımcı olabilirseniz sevinirim..

Harzem


Crazy

Teşekkür ederim harzem, dediğin gibi yaptıktan sonra kontrol ettim, hata mesajı da üretilmiyor, saolasın

TeKYureK

ya bunun teachhead tema için olanı yokmu potal kurdum mkportal forumu portala gommedım forumdan portala gecış istıyorum

my_sweet_shadow

arkadaşlar default theme kullanıyorum harzem arkadaşın dediklerini aynen yaptım ilk önce duranek arkadaşa verdiği template hatasının aynısını verdi sonra yine harzemin dediğigibi ' olan tırnağı " yaptım ama bu seferde o satıra hata verdi bunun kısa ve öz olarak cevabı yokmudur çok karışmış bu topic veyi aksiyonmu tanımlamak lazım sorun nerede yani

my_sweet_shadow

Quote from: my_sweet_shadow on May 30, 2006, 06:41:01 AM
arkadaşlar default theme kullanıyorum harzem arkadaşın dediklerini aynen yaptım ilk önce duranek arkadaşa verdiği template hatasının aynısını verdi sonra yine harzemin dediğigibi ' olan tırnağı " yaptım ama bu seferde o satıra hata verdi bunun kısa ve öz olarak cevabı yokmudur çok karışmış bu topic veyi aksiyonmu tanımlamak lazım sorun nerede yani

sorunumu hallettim arkadaşlar default tema için crazy arkadaşın yaptığını ve daha sonra harzemin dediğini yapınca oluyor ellerinize sağlık teşekkür ederim

thesinaps

Arkadaşlar ben de default dışında Çöl Ateşinde şöyle yaptım:

şu kodu arattım
// If the user is a guest, show [login] button.
if ($context['user']['is_guest'])
echo ($current_action == 'login' || $context['browser']['is_ie4']) ? '<td class="maintab_active_' . $first . '">&nbsp;</td>' : '' , '
<td valign="top" class="maintab_' , $current_action == 'login' ? 'active_back' : 'back' , '">
<a href="', $scripturl, '?action=login">' , $txt[34] , '</a>
</td>' , $current_action == 'login' ? '<td class="maintab_active_' . $last . '">&nbsp;</td>' : '';


Üstüne şunu yapıştırdım:
// the [kurallar]button
echo ($current_action == 'kurallar' || $context['browser']['is_ie4']) ? '<td class="maintab_active_' . $first . '">&nbsp;</td>' : '' , '
<td valign="top" class="maintab_' , $current_action == 'kurallar' ? 'active_back' : 'back' , '">
<a href="http://127.0.0.1/kurallar.php">' , Kurallar , '</a>
</td>' , $current_action == 'kurallar' ? '<td class="maintab_active_' . $last . '">&nbsp;</td>' : '';

Ben bunu siteye kurallar koymak için yaptım. Localhostda denedim çalıştı. Burda hxxp:127.0.0.1/kurallar.php [nonactive] yazan yere istediğinizi koyarak butonu koyabilirsiniz. Diğer temalarda yapmak için yine ilk başta verdiğim ve ya benzer bir kodu bulun sonra onlardan birini sadece adreslerini[mesela ben üye listesini kullandım] değiştirerek ve $txt[454] benzeri yazan yere de buton adını koyarak yapın.

celix

bende bazı temalarda forum cıkmıyo tiny portal kurulu oldugu için ne yapabılrım
www.hackbilgisi.com   

vectorman

Arkadaslar SMF 1.0.7 SMF RC2 ye donusturulebiliyo mu?
Son surum yazio orda ama ben REc Kullanmak istiyorum ne yapmam lazim birisi acikca anlatirsa sevinirim!

Elmacik

Sık sorulan sorular isimli başlıktan bu soruyu ve cevabını okursan kolaylıkla yapabilirsin ;)
Bu bölümde sabit başlık kendisi..
Home of Elmacik

metebey

Arkadaşlar Ben Bu Şekilde Yaptım Güzel Olmadı Değil Yani...  8)

Quote// Show the [Buton İsmi] button.
   echo ($current_action=='Buton İsmi' || $context['browser']['is_ie4']) ? '<td class="maintab_active_' . $first . '">&nbsp;</td>' : '' , '
            <td valign="top" class="maintab_' , $current_action == 'Buton İsmi' ? 'active_back' : 'back' , '">
               <a href="SİTE URL'Sİ BURAYA YAZILACAK">Buton İsmi<a>
            </td>' , $current_action == 'Buton İsmi' ? '<td class="maintab_active_' . $last . '">&nbsp;</td>' : '';

ahmet_gd

peki helios multide n'apabilirm oyun modu kurmayı düşünüyorum ona birde resim gerekecek sanırım birini alıp üstüne oyun yazmak gerek galiba ama kodlar nasıl olmalı
www.dijitalgrup.org Hepinizi Bekleriz.



2 Modifikasyonum:


Msn Durumu 1.0 : Msn Durumunuzu Forumda Gösterir (1.1RC2)
Arka Fon Müziği  : Kullanıcı İstediği Müziği Kendi Profiline Girildiği Anda Çalırmasını Sağlar (1.1RC2)


Önemli:ahmet_0734@hotmail Olarak Kullandığım Adresi Artık Kullanmıyorum. [email protected] 'u Kullanıyorum.

Arbalot

aynı mantıkla arayıp buluyorsun.
home diye arama yap index.tempalte.php de karsına bu kodlara yakın bişiler gelir zaten...

özgür şahin

Sol tarafa yeni tuşları eklemeyi başardım. Ancak aşağıda vereceğim resimdeki örnek gibi "ayrı bir tuşu" o sayfanın en sağına nasıl koyabiliriz?



Teşekkürler.

özgür şahin

Quote from: osahin on July 27, 2006, 04:33:05 PM
Sol tarafa yeni tuşları eklemeyi başardım. Ancak aşağıda vereceğim resimdeki örnek gibi "ayrı bir tuşu" o sayfanın en sağına nasıl koyabiliriz?



Teşekkürler.

Cevap?

e_f_e_han

valla bende sohbet ekledim ... hoş durdu gerçekten... sağolun emeklerine sağlık...

bide sormadan geçmeyeyim... mesela yeni bir site kurdum. pazartesi akşamı açılıyor ayyildizsohbet.net diye. şimdi ben bu butonu sohbet sitemize yönlendirdim. ama ayrı bir pencerede açmasını istiyorum. kullandığım kod:

// Show the [Buton İsmi] button.
   echo ($current_action=='Buton İsmi' || $context['browser']['is_ie4']) ? '<td class="maintab_active_' . $first . '">&nbsp;</td>' : '' , '
            <td valign="top" class="maintab_' , $current_action == 'Buton İsmi' ? 'active_back' : 'back' , '">
               <a href="SİTE URL'Sİ BURAYA YAZILACAK">Buton İsmi<a>
            </td>' , $current_action == 'Buton İsmi' ? '<td class="maintab_active_' . $last . '">&nbsp;</td>' : '';
_EFELERİN EFE'Sİ_
""""""""""""""""   ESKİDENDİ O   """"""""""""""""



Harzem

Şu satırı:
<a href="SİTE URL'Sİ BURAYA YAZILACAK">Buton İsmi<a>

Şöyle yap:
<a href="SİTE URL'Sİ BURAYA YAZILACAK" target="_blank">Buton İsmi<a>

manner

#33
Sharaph arkadaşın  kodları ile yaptım ve çalıştı ve o kdar çok sevindim ki anlatamam yaaa , Gerçekten bu bilgiler için Allah razı olsun arkadaşlar ....
emeğinize sağlık diyorum .

sharaph arkadaşım senin istediğin şekilde olması için
bul
<a href="SİTE URL'Sİ BURAYA YAZILACAK">Buton İsmi<a>

değiştir
<a href="SİTE URL'Sİ BURAYA YAZILACAK" target="_blank">Buton ismi</a>

bunu yap eminim olacak ;)
http://forum.hayatinritmi.com  >>>  hayatin ritmini güncel tutun  ...

frankeistein

Quote from: neonmurat on July 20, 2006, 05:36:15 AM
Arkadaşlar Ben Bu Şekilde Yaptım Güzel Olmadı Değil Yani...  8)

Quote// Show the [Buton İsmi] button.
   echo ($current_action=='Buton İsmi' || $context['browser']['is_ie4']) ? '<td class="maintab_active_' . $first . '">&nbsp;</td>' : '' , '
            <td valign="top" class="maintab_' , $current_action == 'Buton İsmi' ? 'active_back' : 'back' , '">
               <a href="SİTE URL'Sİ BURAYA YAZILACAK">Buton İsmi<a>
            </td>' , $current_action == 'Buton İsmi' ? '<td class="maintab_active_' . $last . '">&nbsp;</td>' : '';
saol arkadaşım

uyesuyes2

// Show the [Buton İsmi] button.
   echo ($current_action=='Buton İsmi' || $context['browser']['is_ie4']) ? '<td class="maintab_active_' . $first . '">&nbsp;</td>' : '' , '
            <td valign="top" class="maintab_' , $current_action == 'Buton İsmi' ? 'active_back' : 'back' , '">
               <a href="SİTE URL'Sİ BURAYA YAZILACAK">Buton İsmi<a>
            </td>' , $current_action == 'Buton İsmi' ? '<td class="maintab_active_' . $last . '">&nbsp;</td>' : '';

arkadaşlar yukarıdaki linki tıladığımda boyutları belirlenmiş popup pencerede açmak istiyorum ama ayarlayamadım birtürlü deli oldum bi yardımcı olur musunuz?

RaPİzMiR

yaw arkadaslar bılıyorum bana kızacaksınız ama bısı sorcam bu yapılan olaylar sadece ucretlı forumlar ıcın mı ???tek bır cevap ıstıyorum!tesekkur edıyrm !

Alpay

Harzem ilk msjda

<td valign="top" class="maintab_back'>

yazmışsın

class="maintab_back">

böyle olmucak mı kardeş diğer türlü parse alıyoruz ;)

NoPasaran

Orange teması için yardımcı olabilirmisiniz?
kralkartal.net SMF 2.0.8

cedric1452

a new damage tema kullanıyorum
1.1.3 serisi
portal butonu eklemek istediğimde butonların düzeni bozuluyor
butonlar üst çerçevenin üstünde yukardan aşağıya sıralanmış şekilde geliyor
şu an ekledim butonu ama portal yerine forum yazıyor

eklediğim kod bu
// Show the [portal] button.
echo ($current_action == 'portal' || $context['browser']['is_ie4']) ? '' : '' , '
<li class="mainNav-home"><a href="http://www.ibtf.net">portal</a></li>' , $current_action == 'portal' ? '' : '';

nasıl düzeltebilirim?

HoT_sOuRcE_

// Show the [portal] button.
echo ' $context['browser']['is_ie4']) ? '' : '' , '
<li class="mainNav-home"><a href="http://www.ibtf.net">portal</a></li>;


bi dener misin? kafam biraz dolu saçmalamış olabilirim ;)
Ne Mutlu Türk'üm Diyene!!!

Bursa Gazi Anadolu Lisesi İnternet Sitesi ve Forumu
Forumuma Üye Olabilmek İçin Bursa Gazi Anadolu Lisesi Mensubu Olmanız Gerekli!

cedric1452


ejderizma

selam arkadaşlar benim sorunumda buna benzer oldugu için farklı bir konu açmak istemedim... benim sorunum default tema kullanıyorum ama tuşları yazı olarak değilde gif butonu yapmak istiyorum nasıl yapabilirim şimdiden teşekkürler

otuzsubat

 selam Arkadaşlar Baylon temaya nasıl koyarım bunları buton olarak koyuyorum ancak yazı olarak görünüyor chat ve oyun butonu eklemek istiyorum , yardım ederseniz sevinirim... teşekkür ederim.
Suskunluğum asaletimdendir. Her lafa verecek cevabım var. Ama bir lafa bakarım, lafmı diye. Birde söyleyene bakarım adam mı diye. M.C.R

www.rap.name

Evo™

Böyle birşey olacak mantık aynı mantık.

// Mevzuat butonu
   if ($context['user']['is_logged'])
      echo ($context['browser']['is_ie4']) ? '<td class="maintab_active_' . $first . '">&nbsp;</td>' : '' , '
            <td valign="top" class="maintab_back'>
               <a href="http://www.restorasyonmerkezi.com/forum/mevzuat/">Mevzuat</a>
            </td>';


Tabi o resimde verdiğin site vb' ben direkt onun linkini verdim sende kendin gitmesini istediğin linki eklersen istediğin olacaktır.

ოկtђ

Sağol Faydalı bir anlarım olmuş.Yeni başladığımda çok uğraşmıştım :D

SurvivaL

2,0 RC2 de nasıl eklicez yeni link :S

Default temaya Portal adında bi link eklemek istiyorum.

Advertisement: