web-dev-qa-db-ja.com

カスタムロゴリンクの変更

WordpressのカスタムロゴURLを別のWebサイトに変更しようとしています。私はこれをphpとchildをテーマにしてさまざまな方法で試してみましたが、試すたびにサイトが壊れてしまいます。

子テーマを作成し、私のheader.phpファイルをコピーしました。

カスタムロゴについて説明しているheader.phpファイルのセクションは次のとおりです。

            <div class="logo">
                <?php if( function_exists( 'the_custom_logo' ) && has_custom_logo() ) : ?>
                <figure class="logo-image">
                    <?php flash_the_custom_logo(); ?>
                    <?php if( get_theme_mod( 'flash_transparent_logo', '') != '') : ?>
                    <a href="<?php echo esc_url( home_url( '/' ) ); ?>">
                        <img class="transparent-logo" src="<?php echo esc_url( get_theme_mod( 'flash_transparent_logo', '' ) ); ?>" />
                    </a>
                    <?php endif; ?>
                </figure>
                <?php endif; ?>

私はphpについてはかなり新しいので、私はそれをコーディングすることはあまり得意ではありませんが、これは私が私のロゴのURLを変更しようとして試みたものです:

この行は上記のコードから変更する必要があると思います。

   <a href="<?php echo esc_url( home_url( '/' ) ); ?>">

だから私はこれらを試してみました:(私は単に例としてグーグルを使っています)

  <a href="<?php echo esc_url(https://www.google.com/); ?>">

  <a href="https://www.google.com/">

私は1年前のスレッドから、フィルタがスレッドからのこのようなオプションである可能性があることを見ました: どのようにget_custom_logo()を変更しますか? 。しかし、私はそこにどこに私の新しいURLを入れるべきかわからない。

add_filter( 'get_custom_logo',  'custom_logo_url' );
function custom_logo_url ( $html ) {

$custom_logo_id = get_theme_mod( 'custom_logo' );
$url = network_site_url();
$html = sprintf( '<a href="%1$s" class="custom-logo-link" rel="home" 
itemprop="url">%2$s</a>',
    esc_url( $url  ),
    wp_get_attachment_image( $custom_logo_id, 'full', false, array(
        'class'    => 'custom-logo',
    ) )
);
return $html;    
}

誰かが私がこの問題を見つけ出すのを手伝うことができたら私は本当にそれを感謝するでしょう。私はそれを自分で調べてコーディングしてみましたが、何もうまくいきませんでした。

1
Cakers

あなたはただリンクのhref属性にあなたのURLを入れる必要があります - このように(私は http://example.com を使いました):

            <?php if( function_exists( 'the_custom_logo' ) && has_custom_logo() ) : ?>
            <figure class="logo-image">
                <?php flash_the_custom_logo(); ?>
                <?php if( get_theme_mod( 'flash_transparent_logo', '') != '') : ?>
                <a href="http://example.com">
                    <img class="transparent-logo" src="<?php echo esc_url( get_theme_mod( 'flash_transparent_logo', '' ) ); ?>" />
                </a>
                <?php endif; ?>
            </figure>
            <?php endif; ?>
1
Mihai Papuc