2

我使用 wordpress 创建了一个博客,它是在我的本地主机上开发的,主题是 LUGADA Theme found here

我想添加一个大于设计师指定为 300 x 70 的主题中指定尺寸的徽标。当我尝试使用他们提供的工具上传新徽标时,它会强制我将图像裁剪为所需的大小,我该如何解决这个问题?

我查看了 header.php 并发现了这个:

<img src="<?php header_image(); ?>" width="<?php echo HEADER_IMAGE_WIDTH; ?>" height="<?php echo HEADER_IMAGE_HEIGHT; ?>" alt="" />

我尝试将 HEADER_IMAGE_WIDTH 和 HEADER_IMAGE_HEIGHT 取出,但上传工具迫使我裁剪图像

我考虑过硬编码徽标,但希望在更改主题时它仍然可用。我也尝试过追踪 header_image(),我在 wp-includes/theme.php 中找到了它,但无法从那里弄清楚该怎么做。

有人可以建议我如何将符合我要求的徽标放入其中吗?

4

1 回答 1

2

我建议对这个主题进行一些调整,它们应该可以达到您正在寻找的结果。

首先,该主题目前正在使用一种已弃用的方法 ( add_custom_image_header),以便您上传您的徽标。让我们暂时停止它,使用更新的函数,如果您对结果满意,可以按照我的说明清理代码。

  1. 打开functions.php并找到第 135、136 和 176 行并将它们注释掉:

    //define('HEADER_IMAGE_WIDTH', 300); // use width and height appropriate for your theme
    //define('HEADER_IMAGE_HEIGHT', 300);
    
    //add_custom_image_header('lugada_header_style', 'lugada_admin_header_style');
    
  2. 在第 176 行之后添加以下代码:

    $header_defaults = array(
        'width'=>300,
        'height'=>200,
        'flex-height'=>true,
        'flex-width'=>true
    );
    add_theme_support( 'custom-header', $header_defaults );
    
  3. 在您的header.php文件中,继续并用以下代码替换第 68 行(删除宽度和高度属性):

    <img src="<?php header_image(); ?>" alt="" />
    

关于此代码的一些注释...

  • 您现在正在为自定义标题徽标使用更新的方法。这意味着您将来升级 WordPress 时遇到的问题会更少
  • 您现在使用灵活的高度和宽度,因此您可以随意裁剪
  • 您可以将这些高度和宽度值更改为您想要的任何值(默认值)
  • 您可以找到有关add_theme_support 此处使用的更多信息,并且您可能会找到更多有用的选项。

如果您对结果感到满意并想要清理代码,您可以删除第 135、136 和 176 行并删除名为lugada_header_style和的两个函数lugada_admin_header_style

玩得开心!

于 2013-01-04T21:16:56.467 回答