Çözüldü Xenforo 2.x php Koşulları / Conditional Statements for XenForo 2

Çözüldü Xenforo 2.x php Koşulları / Conditional Statements for XenForo 2
4
2K

imtsoft

Licenced
Katılım
20 Eki 2020
Mesajlar
69
Çözümler
1
Tepki puanı
28
Puanları
18
Aşağıdaki kodlar XF 1.5 da çalışıyordu ama 2.x da çalışmıyor, muadili varmıdır acaba ? tema kodları şeklinde değilde doğrudan php içinde çalışacak şekilde olacak. xenforo resmi sitesinde verdikleri örnekler hep template içinde kullanıma göre.

Mesala ben bir x.php sayfamda istiyorumki group id nosu 6 dan aşağı olanlar erişim sağlayamasın, yani işin özü grop id lere göre bazı yasaklı extra php sayfalar yapacağım..

Kod:
Dear Guests, welcome! Please, Giriş Yap or Kayıt Ol to view hide content!
 
Çözüm
Aşağıdaki kodlar XF 1.5 da çalışıyordu ama 2.x da çalışmıyor, muadili varmıdır acaba ? tema kodları şeklinde değilde doğrudan php içinde çalışacak şekilde olacak. xenforo resmi sitesinde verdikleri örnekler hep template içinde kullanıma göre.

Mesala ben bir x.php sayfamda istiyorumki group id nosu 6 dan aşağı olanlar erişim sağlayamasın, yani işin özü grop id lere göre bazı yasaklı extra php sayfalar yapacağım..

Kod:
Dear Guests, welcome! Please, Giriş Yap or Kayıt Ol to view hide content!

Ben bu kodlarda bir sorun görmüyorum,
Sadece değişkenlerinizin ney olduğunu tanımlamanız gerekir yoksa bu değerler null...
XenForo şablon yapılarında da koşullu ifade kullanmanız aynı amaca hizmet edecektir. Yapmak istediğiniz eğer XenForo 'dan bağımsız harici php dosyası değilse.

Sayfa olarak düşündüğünüz şeyi yine harici php oluşturmadan XenForo 'nun kendi node alanında yer alan Page biçimi ile daha fonksiyonel ve yönetilebilir bir yapı çıkarabilirsiniz. Ayrıca oluşturacağınız sayfanın kullanıcı izinlerini de rahatlıkla ayarlayabilirsiniz.

Dear Guests, welcome! Please, Giriş Yap or Kayıt Ol to view hide content!

Dear Guests, welcome! Please, Giriş Yap or Kayıt Ol to view hide content!

Oluşturduğunuz sayfa içerisinde yer alan Template HTML alanını kendi kodlarınızı dahil edebilir ve daha sonra bu sayfanın izinlerini ayarlayabilirsiniz.

Dear Guests, welcome! Please, Giriş Yap or Kayıt Ol to view hide content!


Şablon yapısı içinde
group id nosu 6 dan aşağı olanlar erişim sağlayamasın
Bunu basit bir şekilde yine koşullu ifade ile yapabilirsiniz.
Kod:
Dear Guests, welcome! Please, Giriş Yap or Kayıt Ol to view hide content!
x, y alanlarına sayfanızı görmesini istemediğiniz kullanıcı gruplarını aralarına virgül koyarak gizleyebilirsiniz.
 
CEvap için çok teşekkürler ustad, ancak ben dediğim gibi olayım harici bir php dosyası içinde ama oda XF php dosyası içinde yapacğaım için şablon kodları işimi görmüyor, eskiden yukarda verdiğim kodlar gibi basitçe yapabiliyorduk ama şuanda işler biraz karışmış gibi
 
Aşağıdaki kodlar XF 1.5 da çalışıyordu ama 2.x da çalışmıyor, muadili varmıdır acaba ? tema kodları şeklinde değilde doğrudan php içinde çalışacak şekilde olacak. xenforo resmi sitesinde verdikleri örnekler hep template içinde kullanıma göre.

Mesala ben bir x.php sayfamda istiyorumki group id nosu 6 dan aşağı olanlar erişim sağlayamasın, yani işin özü grop id lere göre bazı yasaklı extra php sayfalar yapacağım..

Kod:
Dear Guests, welcome! Please, Giriş Yap or Kayıt Ol to view hide content!

Ben bu kodlarda bir sorun görmüyorum,
Sadece değişkenlerinizin ney olduğunu tanımlamanız gerekir yoksa bu değerler null döner, eğer bir değişken atamadan yapacaksanız doğru dizgiyi kullanın.

Örnek:
$visitor değişkeni nedir?
Bunu bu şekilde yazarsanız bu değerin ney olduğunu tanımlamalısınız

$visitor = \XF::visitor();

veya kısa kullanımı,

(!\XF::visitor())

Yine de tüm bunları uygulamanız durumunda bile bu kodların tüm yapınızı etkilemeden sorunsuz bir şekilde çalışması beklenmemeli.

XenForo sisteminde harici bir sayfa yada bir .php dizinin response edilmesinin en doğru yöntemi;
İlgili class yapısını extend etmektir.

Kullanmanız gereken class

PHP:
Dear Guests, welcome! Please, Giriş Yap or Kayıt Ol to view hide content!

Doğru yapıyı uygulamanızı öneririm ...

PHP:
Dear Guests, welcome! Please, Giriş Yap or Kayıt Ol to view hide content!
 
Çözüm
Dinç hocam teşekkürler aslında dediğini gibi olay " $visitor = \XF::visitor(); " bundan ibaretmiş bunu eklemek gerekiyormuş
 
Quick Jump
2,620Konular
12,449Mesajlar
1,428Kullanıcılar
Geri
Üst