it-swarm.com.de

Ändern Sie das Logo auf jeder Seite des University Hub-Themas

Ich verwende das University Hub-Thema http://wenthemes.com/item/wordpress-themes/university-hub/ und habe viel gesucht und keine Lösung gefunden. Ich möchte das Hauptlogo auf jeder Seite der Site ändern. Ich habe es mit CSS geschafft, die Hintergrundfarbe der Kopfzeile zu ändern, aber für das Logo brauche ich anscheinend eine benutzerdefinierte Lösung für dieses Thema, aber ich weiß wirklich nicht, wie ich das machen soll. Für jede Hilfe bin ich dankbar. Vielen Dank! : D P.D .: Ich verwende bereits ein Kinderthema.

2
SpaceSpartan

Ich würde der Body-Klasse in Ihrer functions.php-Datei einen Filter hinzufügen. Dies fügt eine Klasse hinzu, die auf dem page/post/cpt-Slug basiert:

PHP:

/**
 *
 * Add Page/Post Body Class Slug
 *
 * post-slug-for-post
 * page-slug-for-page
 *
 *
 */
function yourprefix_page_slug_body_class( $classes ) {
    global $post;
    if ( isset( $post ) ) {
        $classes[] = $post->post_type . '-' . $post->post_name;
    }
    return $classes;
}
add_filter( 'body_class', 'yourprefix_page_slug_body_class' );

Dann würde ich jQuery verwenden, um den src basierend auf der Body-Klasse zu tauschen. Sie müssen die Pfadvariable und möglicherweise die übergeordnete Klasse ändern, in der sich das Logo img befindet (im Beispiel wird .site-branding verwendet).

jQuery

 ( function( window, $, undefined ) {

     'use strict';


     $( document ).ready( function(  ) {


        /* ==== change logo based on body class ===

        // default logo and path
        var path  = 'http://yourdomain.com/wp-content/uploads/',
            logo  = 'logo-1.png'; // this is the default


        // logo 2 conditional change var value
        if ( $( 'body' ).is( '.page-such-and-such' ) ) {
            logo = 'logo-2.png';
        }

        // logo 3 conditional change var value
        if ( $( 'body' ).is( '.post-such-and-thing' ) ) {
            logo = 'logo-3.png';
        }

        // return the logo src
        $( '.site-branding img' ).attr( 'src', path + logo );


        // end swapping logo


    } ); //* end ready


} )( this, jQuery );

Erstellen Sie ein Dokument mit dem Namen swapping-logo.js (oder was auch immer) in Ihrem Code-Editor und stellen Sie es mit jQuery als dep in die Warteschlange. Die Anweisungen zum Hinzufügen von js zu Ihrem Thema finden Sie überall.

1
Christina

Dies ist nicht spezifisch für WordPress. Sie können jedoch versuchen, den Header-Hook zu entfernen und ihn mit einem Bild aus einem benutzerdefinierten Feld oder der Meta-Box für das vorgestellte Bild wieder hinzuzufügen. Dann geben Sie mit Ihrem Header-Hook university_hub_action_header alles aus der Sicherheit eines child theme aus.

Oder

Sie können das benutzerdefinierte Logo mithilfe von benutzerdefinierten Feldern oder der Miniaturansicht des Beitrags als Eingabe filtern.

0
Dev