将div从unctions.php回显到header.php

时间:2012-11-15 作者:Skip

在标题部分内。php我有一个div结构

<div id="header">
<div id="masthead">
<div id="branding">
。。。

我想在“branding”中添加一个div,我可以通过编辑标题轻松完成这一任务。直接使用php。我还认为我可以使用函数。php收件人:

add_action(\'wp_head\', \'add_div\' );
。。。

然后在代码中回显。是否有任何方法可以定义代码应该在何处回传(即告诉add\\u div函数应该在何处添加代码)?

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

这个wp_head() 模板标记用于在HTML文档头而不是页面头中激发,用于输出脚本和样式表链接和标记,以及HTML文档头中的其他类似内容。

它应该出现在关闭HTML之前</head> 标记,如下所示:

<?php wp_head(); ?>
</head>
如果希望能够在HTML标记本身中输出某些内容,可以使用以下几个选项:

使用get_header( $slug ) 输出自定义header.php 在给定的上下文中。例如,如果希望在静态页面上输出额外的div,则在page.php, 你可以打电话get_header( \'page\' ), 然后将加载header-page.php.custom action hook, 然后为该挂钩编写回调:

<div id="header">
    <div id="masthead">
        <div id="branding">
            <?php do_action( \'wpse72753_branding_top\' ); ?>
然后,您可以定义一个回调以挂接到该位置:

function wpse72753_add_branding_div() {
    if ( is_page() ) {
        ?>
        <div><!-- some content --></div>
        <?php
    }
}
add_action( \'wpse72753_branding_top\', \'wpse72753_add_branding_div\' );
可能还有其他类似的解决方案,但底线是:WordPress不控制表示层的HTML结构;HTML结构完全依赖于主题。因此,无论您实现什么解决方案,都必须通过主题来实现。

编辑:此注释:

理论上,您可以通过函数将JQuery代码回送到头部。php创建div?

绝对地您只需将回调挂接到wp_head:

function wpse72757_add_head_script() {
    if ( ! is_admin() ) {
        ?>
<script type="text/javascript">
// script code goes here
</script>
        <?php
    }
}
add_action( \'wp_head\', \'wpse72757_add_head_script\' );
此回调将进入functions.php, 或者在站点插件中,等等。

结束

相关推荐

如何在Functions.php中使用PHP手动修复WordPress库代码?

Wordpress为内置的gallery功能输出了一些非常糟糕的代码,这已经被谈论了很多次了。这是负责库输出的核心代码(在/wp-includes/media.php中):function gallery_shortcode($attr) { global $post; static $instance = 0; $instance++; // Allow plugins/themes to override the de