如果要从名为wpse_desc
:
然后,有一种方法可以使用您的代码片段做到这一点:
function wpse_custom_meta_description()
{
// Nothing to do
if ( ! is_single() )
return;
// Fetch our custom field value
$desc = get_post_meta( get_queried_object_id(), \'wpse_desc\', true );
// Output
if( ! empty( $desc ) )
printf(
\'<meta name="description" content="%s" />\',
esc_attr( trim( $desc ) )
);
}
add_action( \'wp_head\', \'wpse_custom_meta_description\' , 2 );
避开content属性的值很重要,因为您不希望您网站的作者能够编写以下内容:
><script>alert(\'Hello World!\');</script><
我们可能还想用
wp_strip_all_tags()
并限制字数
wp_trim_words()
, 也使用
wp_strip_all_tags()
, 但我们应该记住,它仍然允许使用很长的单词。如果你需要一个最大长度,那么你可能需要进一步研究,我相信有各种各样的方法。
在这里,我们使用wpse_
前缀,以避免可能的名称冲突。
希望您可以根据自己的需要进行调整,例如使用帖子摘录或帖子内容回退。