您可能在主题的header.php
. 加载此文件时$post
还不可用(将在循环中)。所以你需要先申报global $post;
.
但这不是最好的办法。如果你交换主题,什么?再来一次
请参见:Where to put my code: plugin or functions.php?
使用以下插件,我们将wp_head
并根据一些Conditional Tags:
<?php
/* Plugin Name: Print Audio OG */
add_action( \'wp_head\', \'print_audio_og_wpse_99152\', 0 );
function print_audio_og_wpse_99152()
{
// Print only in single posts or pages
if( is_single() || is_page() )
{
global $post;
$meta_value = get_post_meta( $post->ID, \'meta_audio_attachment\', true );
if( $meta_value )
echo "
<meta property=\'og:audio\' content=\'$meta_value\' />
<meta property=\'og:audio:title\' content=\'$post->post_title\' />
<meta property=\'og:audio:artist\' content=\'Test\' />
<meta property=\'og:audio:album\' content=\'Test Album\' />
<meta property=\'og:audio:type\' content=\'application/mp3\' />
";
}
}
你必须适应
get_post_meta
.<现在增加挂钩优先级
0
(零),以在呈现的HTML中移动插入点。