【问题标题】:WordPress Custom Logo with Default/Fallback Image带有默认/后备图像的 WordPress 自定义徽标
【发布时间】:2016-11-16 15:04:34
【问题描述】:

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

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

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

<?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 wordpress wordpress-theming logos


    【解决方案1】:

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

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

    【讨论】:

      【解决方案2】:

      您可以在相同的if 条件下测试function_exist()has_custom_logo() 以获得单个else 条件。

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-11-14
        • 2019-01-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多