it-swarm.com.de

Fügen Sie Sie HTML direkt nach dem <body> -Tag ein

Ich benutze das Wordpress-Thema Twenty Twelve (ein Kind, um genau zu sein).

Ich möchte wissen, wie man HTML-Code direkt nach dem Öffnen des Körpers in die Datei functions.php und nicht in die Datei header.php einfügt.

Ist das möglich?

6
Ramanan

Twenty Twelve hat keine Hooks, die unmittelbar nach dem <body>-Tag ausgelöst werden.

Kopieren Sie daher in Ihrem untergeordneten Thema, das das übergeordnete Thema "Twenty Twelve" erweitert, den header.php in Ihr untergeordnetes Themenverzeichnis.

Öffnen Sie die header.php-Datei in Ihrem untergeordneten Design und fügen Sie unmittelbar nach dem öffnenden Body-Tag einen Aktions-Hook hinzu, an den Sie sich über Ihre functions.php-Datei anschließen können.

Zum Beispiel in Ihrer twenty-twelve-child/header.php Datei:

<body <?php body_class(); ?>>

<?php do_action('after_body_open_tag'); ?>

Dann in deiner twenty-twelve-child/functions.php Datei:

function custom_content_after_body_open_tag() {

    ?>

    <div>My Custom Content</div>

    <?php

}

add_action('after_body_open_tag', 'custom_content_after_body_open_tag');

Dies wird dann in Ihrem HTML wie folgt dargestellt:

<body>
<div>My Custom Content</div>

Literatur-Empfehlungen:

https://developer.wordpress.org/reference/functions/do_action/

12
userabuser

Eine sehr, sehr, sehr schmutzige Lösung wäre:

/* Insert tracking code or other stuff directly after BODY opens */
add_filter('body_class', 'wps_add_tracking_body', PHP_INT_MAX); // make sure, that's the last filter in the queue
function wps_add_tracking_body($classes) {

  // close <body> tag, insert stuff, open some other tag with senseless variable      
  $classes[] = '"><script> /* do whatever */ </script><noscript></noscript novar="';

  return $classes;
}

Füge diesen Code in functions.php ein

function my_function() {
 echo'<div id="from_my_function"></div>';

}
add_action('wp_head', 'my_function');
0
Jatinder Kaur