我正在尝试更改wordpress上的自定义徽标url,以转到其他网站。我尝试了很多不同的方法来处理php和子主题,但每次我尝试一些东西,它都会破坏网站。
我创建了一个子主题并复制了标题。php文件。
这是标题中的部分。关于自定义徽标的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非常陌生,因此我并不擅长编写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/">
一年前,我从一个线程中看到,过滤器可以是线程中的一个选项:
How to change get_custom_logo() url? . 然而,我不知道我的新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;
}
如果有人能帮我解决这个问题,我将不胜感激。我尝试过自己研究它并编写代码,但都没有成功。