it-swarm.asia

Özel logoları tüm temalara nasıl eklersiniz?

Blog ağımın kontrol paneline özel bir logo eklemek istiyorum. Smashing dergisinde bir tarif buldum ve şu kodu aldım:

//hook the administrative header output
add_action('admin_head', 'my_custom_logo');

function my_custom_logo() {
    echo '
      <style type="text/css">
      #header-logo { background-image: url('.get_bloginfo('template_directory').'/images/custom-logo.gif) !important; }
      </style>
    ';
 }

Nereye eklerim? Sanırım functions.php içine eklemeliyim. Ancak öyleyse, kodumu ortak çalışmalarımdaki her temaya eklemeliyim.

Herhangi biri onu tüm ağa ekleme fikri var mı? Gelecekte fikrimi değiştirirsem, yalnızca belirli bir alt için ayarlayabilirim ve tüm ağa bağlanmam gerekir :)

Teşekkür ederim!

1
user391

Bu logonun temaya bakılmaksızın ağ sitelerinizde görünmesini istiyorsanız, wp-content/mu-plugins içinde yeni bir PHP dosyası oluşturmanızı (eğer yoksa dizini oluşturmanızı) öneririm ve bu kodu bırakın yeni dosyanın içinde. Dosyanızı istediğiniz şekilde adlandırabilirsiniz - örneğin my-network-tweaks.php. Bu dosya tüm sitelere otomatik olarak eklenti olarak yüklenecektir.

Ve bu resmi belirli bir site için geçersiz kılmak istiyorsanız, bu işlevi takılabilir hale getirebilirsiniz. Bunun gibi:

<?php
//hook the administrative header output
add_action('admin_head', 'my_custom_logo');

// if override function exists load it up instead
if(function_exists('override_my_custom_logo')) {

    function my_custom_logo() {
        override_my_custom_logo();
    }

// fallback to original function
} else {

    function my_custom_logo() {
        echo '
        <style type="text/css">
            #header-logo { background-image: url('/path/to/images/custom-logo.gif) !important; }
        </style>
        ';
    }

}
?>

Resim yolunu değiştirdiğimi unutmayın, çünkü tüm ağ için tek bir dosyaya işaret etmesini istiyoruz. get_bloginfo('template_directory') işlevinin kullanılması görüntünün tema dizininden yüklenmesine neden olur.

Görüntüyü tek bir site için geçersiz kılmak istiyorsanız, Tom J Nowell'in kodunu override_my_custom_logo olarak yeniden adlandırmak için kullanın.

3
iv.draganov

Bunu functions.php dosyasına yerleştirin ve temanızın bir resim alt klasörüne custom-logo.gif (32x32 piksel) dosyası ekleyin.

//hook the administrative header output
add_action('admin_head', 'my_custom_logo');

function my_custom_logo() {
    echo '
<style type="text/css">
#header-logo { background-image: url('.get_bloginfo('template_directory').'/images/custom-logo.gif) !important; }
</style>
';
}
1
Tom J Nowell

Bunu sizin için otomatikleştirmek için Beyaz Etiket CMS eklentisini inceleyebilirsiniz.

1
Eric