php - 带有默认/后备图像的 WordPress 自定义 Logo

标签 php wordpress wordpress-theming logos

我正在尝试使用 WordPress 的新自定义 Logo 功能来完成以下任务:

  • 显示默认/备用 Logo 。
  • 如果 WordPress 版本支持自定义 Logo ,则允许用户在定制器中将默认/后备 Logo 替换为自定义 Logo 。
  • 如果 WordPress 版本不支持自定义 Logo 或未设置(或删除)自定义 Logo ,则显示默认/后备 Logo 。

到目前为止,这是我必须使用的最佳代码:

<?php if ( function_exists( 'the_custom_logo' ) ) : ?>
    <?php if ( has_custom_logo() ) : ?>
        <?php the_custom_logo(); ?>
    <?php else : ?> 
        <h1 class="site-title"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" rel="home" title="<?php bloginfo( 'name' ); ?>"><img src="<?php echo get_stylesheet_directory_uri(); ?>/images/logo.png" alt="<?php bloginfo( 'name' ); ?>" width="100" height="50" /></a></h1>
    <?php endif; ?>
<?php else : ?> 
    <h1 class="site-title"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" rel="home" title="<?php bloginfo( 'name' ); ?>"><img src="<?php echo get_stylesheet_directory_uri(); ?>/images/logo.png" alt="<?php bloginfo( 'name' ); ?>" width="100" height="50" /></a></h1>
<?php endif; ?>

是否有更干净或更有效的方法来执行此操作,而无需重复后备图像的代码两次?

最佳答案

谢谢,但我想我找到了更好的解决方案:

<?php if ( function_exists( 'the_custom_logo' ) && has_custom_logo() ) : ?>
    <?php the_custom_logo(); ?>
<?php else : ?> 
    <h1 class="site-title"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" rel="home" title="<?php bloginfo( 'name' ); ?>"><img src="<?php echo get_stylesheet_directory_uri(); ?>/images/logo.png" alt="<?php bloginfo( 'name' ); ?>" width="100" height="50" /></a></h1>
<?php endif; ?>

关于php - 带有默认/后备图像的 WordPress 自定义 Logo ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40635441/

相关文章:

php - PHP解析/语法错误;以及如何解决它们

javascript - AJAX 发布表单不起作用。它绝对没有任何作用

c# - PHP 中的部分类就像我们在 C# 中一样

css - 如何在自定义 Wordpress 主题中调整特定图像的大小?

php - 如何正确终止 zend 框架中的 session ?

wordpress - 如何将 WordPress 自动更新与 Git 作为版本控制相结合?

php - WordPress 20 13 子主题更改标题横幅大小

php - Woocommerce 返回价格未正确显示

wordpress - 删除菜单项和页面列表的li类和ID

Chrome 的 CSS 下拉菜单问题