web-dev-qa-db-ja.com

University Hubテーマの各ページのロゴを変更する

私はUniversity Hubテーマ http://wenthemes.com/item/wordpress-themes/university-hub/ を使用しています。解決策が見つかりませんでした。サイトの各ページのメインロゴを変更したいです。私はCSSでヘッダーの背景色を変更することができましたが、ロゴのためにそれは私がこのテーマのためのカスタムソリューションを必要としているようですが、私は本当にそれをする方法を知りません。ありがとうございます。 :D P.D .:私はすでに子供のテーマを使っています。

2
SpaceSpartan

Functions.phpファイルのbodyクラスにフィルタを追加します。これはpage/post/cpt slugに基づくクラスを追加します。

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' );

それから私はボディクラスに基づいてsrcを交換するためにjQueryを使うでしょう。あなたは、パス変数と、ロゴimgが置かれている親クラスを変更する必要があるでしょう(例では.site-brandingを使用しています)。

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 );

コードエディタ名をswapping-logo.js(またはその他)にしてドキュメントを作成し、jQueryをdepとしてエンキューします。あなたのテーマにjsを追加する方法はいたるところにあります。

1
Christina

これはWordPressに固有のものではありませんが、ヘッダーフックを削除してカスタムフィールドの画像または機能のある画像メタボックスで追加することができます。それから、 university_hub_action_header の安全性から、あなたのヘッダフックchild themeを使って出力してください。

または

カスタムフィールドまたは投稿のサムネイルを入力として使用してカスタムロゴをフィルタリングできます。

0
Dev