Neler yeni

Foruma hoş geldin 👋, Ziyaretçi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

  • Forumdan daha fazla yararlanmak için, profilinizi telefon numaranız 📱 ile doğrulayın ve daha ayrıcalıklı olun 😉
    Daha fazla bilgi!
Kaynak ikonu

XF 2.0 404 sayfası özelleştirme

Bu eklenti, add-ons XenForo 2.0.X ile uyumlu ve stabil olarak çalışmaktadır.
Uyumlu XF 2 Sürümleri
Admincp/Şablonlar/error Şablonunu açıyoruz.

Şablonun varsayılan kodu aşağıdaki gibidir.
PHP:
<xf:title>{{ phrase('oops_we_ran_into_some_problems') }}</xf:title>

<div class="blockMessage">
    <xf:if is="$error">
        {$error|raw}
    <xf:else />
        <ul>
        <xf:foreach loop="$errors" value="$error">
            <li>{$error|raw}</li>
        </xf:foreach>
        </ul>
    </xf:if>
</div>

Şimdi $404_error adında değişken oluşturalım ve değerini gelen hata mesajına eşitleyelim.
PHP:
<xf:set var="$404_error" value="{$error|raw}" />

Ardından gelen hata mesajının 404 hata mesajı olduğunu anlamamız lazım ki ona göre şablon editlemesi yapalım. Bunu nasıl yapacağız derseniz, ufak bir if koşulu kuracağız ve atadığımız değerin 404 hata mesajına eşit olan cümlenin id si ile eşleşiyorsa özelleştirdiğimiz kodu çalıştıracağız. Kod aşağıdaki gibi olmalı.
PHP:
<xf:if is="$404_error == {{ phrase('requested_page_not_found') }}">

Şartlar if koşulumuzu karşıladığında if içerisine yazılan kodlar çalışacaktır. Burası tamamen hayal gücünüze kalmış. Yapacağınız işlemler kodlar sınırsız olasılık taşıyor, ama fantazi yapmanın da mantığı yok değil mi? :D

Ben hata mesajı ile birlikte arama sayfasının linkini koydum kod aşağıdaki gibidir.
PHP:
        <div>404</div>
        <div>{$error|raw}</div>
        <a href="{{ link('search') }}" >{{ phrase('search_everything') }}</a>

Dilerseniz html, css, jquery vs gibi dilleri kullanarak sayfaya bambaşka bir görünüm verebilirsiniz. Bu tamamen isteğinize kalmış.

Ek olarak her hata mesajlarının diller ve cümlelerdeki id değerlerine göre de if koşullarını arttırıp her mesaja özel tasarımlar yapabilirsiniz.

Toparlayacak olursak şablon kodunun tamamı şu şekilde olmalı.
PHP:
<xf:title>{{ phrase('oops_we_ran_into_some_problems') }}</xf:title>
<xf:set var="$404_error" value="{$error|raw}" />

<div class="blockMessage">
    <xf:if is="$404_error == {{ phrase('requested_page_not_found') }}">
        <div>404</div>
        <div>{$error|raw}</div>
        <a href="{{ link('search') }}">{{ phrase('search_everything') }}</a>
    <xf:else />
        <ul>
            <xf:foreach loop="$errors" value="$error">
                <li>{$error|raw}</li>
            </xf:foreach>
        </ul>
    </xf:if>
</div>

Kendi yazdığım kodun nacizhane önizlemesi aşağıdaki gibidir. :)
Opera Anlık Görüntü_2018-11-01_180743_cepkeyfi.com.png
Yazar
denizci-1
Görüntüleme
1,965
İlk yayınlama
Son güncelleme
Değerlendirme
0.00 yıldız 0 değerlendirme

denizci-1 ait diğer kaynakar

Foruma hoş geldin 👋, Ziyaretçi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.