Echo piece of code from file

时间:2019-05-09 作者:Mark

您好,我为定制者提供了一些选项,可以更改徽标的显示位置和位置。为了避免重复同一段代码,我想知道是否可以将徽标代码放在一个文件中(以及我将执行类似过程的其他代码),并根据条件在不同的div中进行回显。

儿子,在我的标题中,它看起来是这样的:

    <header id="header" class="clear" role="banner">
        <div class="column column-one four-quarter">
            <div class="container clear">
                <?php if( get_theme_mod( \'mlwd_logo_layout\', \'insideheader\' ) == \'insideheader\' ) && get_theme_mod(\'mlwd_logo_position_y\', \'top\') :
                    echo // Piece of code from code.php file
                endif ?>
            </div>
        </div>
        <div class="column column-two four-quarter">
            <div class="container clear">
                <?php if( get_theme_mod( \'mlwd_logo_layout\', \'insideheader\' ) == \'insideheader\' ) && get_theme_mod(\'mlwd_logo_position_y\', \'bottom\') :
                    echo // Piece of code from code.php file
                endif ?>
            </div>
        </div>
    </header>
文件是这样的:

<div id="logo">
    <?php if( get_theme_mod( \'mlwd_logo_image\') ) : ?>
        <img src="<?php echo esc_url(get_theme_mod(\'mlwd_logo_image\')); ?>" alt="Logo"/>
    <?php else: ?>
        <h1>
            <a href="<?php echo home_url(); ?>" title="<?php bloginfo(\'name\'); ?>">
                <?php bloginfo(\'name\'); ?><?php echo $langblog;?>
            </a>
        </h1>
        <p>
            <?php bloginfo(\'description\'); ?><?php echo $langblog;?>
        </p>
    <?php endif ?>
</div>
有可能这样做吗?

非常感谢

1 个回复
最合适的回答,由SO网友:Qaisar Feroz 整理而成

您可以通过将一段代码放入函数中并在需要时调用它,就像调用任何模板标记一样。

<?php
function the_logo(){   ?>
     <div id="logo">
        <?php if( get_theme_mod( \'mlwd_logo_image\') ) : ?>
             <img src="<?php echo esc_url(get_theme_mod(\'mlwd_logo_image\')); ?>" alt="Logo"/>
         <?php else: ?>
             <h1>
                 <a href="<?php echo home_url(); ?>" title="<?php bloginfo(\'name\'); ?>">
                  <?php bloginfo(\'name\'); ?><?php echo $langblog;?>
                 </a>
             </h1>
              <p>
                  <?php bloginfo(\'description\'); ?><?php echo $langblog;?>
              </p>
          <?php endif ?>
      </div>
<?php } ?>
标题看起来像

    <header id="header" class="clear" role="banner">
        <div class="column column-one four-quarter">
            <div class="container clear">
                <?php if( get_theme_mod( \'mlwd_logo_layout\', \'insideheader\' ) == \'insideheader\' ) && get_theme_mod(\'mlwd_logo_position_y\', \'top\') :

                    // Piece of code from code.php file
                    the_logo();

                endif ?>
            </div>
        </div>
        <div class="column column-two four-quarter">
            <div class="container clear">
                <?php if( get_theme_mod( \'mlwd_logo_layout\', \'insideheader\' ) == \'insideheader\' ) && get_theme_mod(\'mlwd_logo_position_y\', \'bottom\') :

                    // Piece of code from code.php file
                    the_logo();

                endif ?>
            </div>
        </div>
    </header>
我希望这可能会有所帮助,