Ich habe das Twenty Seventeen Theme und ein Child Theme installiert. Jetzt möchte ich functions.php
den folgenden Code hinzufügen, um dem Tag <head>
mit der Aktion wp_head
Metadaten hinzuzufügen:
if ( is_single() ) echo get_post_meta($post->ID, "meta-head", true); ?>
Ich habe es versucht, aber es hat nicht funktioniert:
add_action ('wp_head','hook_inHeader');
function hook_inHeader() {
if ( is_single() ) {
echo get_post_meta($post->ID, "meta-head", true);
}
}
Der Grund, warum der bereitgestellte Code nicht funktioniert, ist, dass $post
nicht auf die globale $post
-Variable verweist, was hier das Ziel ist.
Mit get_the_ID()
können Sie auf die ID zugreifen, die dem aktuellen Beitrag zugeordnet ist. So würde ich es vorschlagen, aber es gibt auch andere Möglichkeiten:
add_action ( 'wp_head', 'hook_inHeader' );
function hook_inHeader() {
if ( is_single() ) {
// Get the post id using the get_the_ID(); function:
echo get_post_meta( get_the_ID(), 'meta-head', true );
/* Or, globalize $post so that we're accessing the global $post variable: */
//global $post;
//echo get_post_meta( $post->ID, 'meta-head', true );
/* Or, access the global $post variable directly: */
// echo get_post_meta( $GLOBALS['post']->ID, 'meta-head', true );
}
}