[英]Check and add to the post content
如何检查帖子是否具有元数据并按功能显示?
我有职位类型的投资组合和元字段(_wi_next-script-part和_wi_prev-script-part)
function wi_next_prev_part_links($content) {
global $wp_query;
$postid = $wp_query->post->ID;
if ( is_singular( 'portfolio' ) ) {
if ( get_post_meta( $postid, '_wi_prev-script-part', true ) ) {
$prev_script_part = get_post_meta( $postid, '_wi_prev-script-part', true );
$content .= '<a href="'. get_the_permalink($prev_script_part) .'" class="">← Prev Part Link</a>';;
}
if ( get_post_meta( $postid, '_wi_next-script-part', true ) ) {
$next_script_part = get_post_meta( $postid, '_wi_next-script-part', true );
$content .= '<a href="'. get_the_permalink($next_script_part) .'" class="">Next Part Link →</a>';
}
}
return $content;
}
add_filter ('the_content', 'wi_next_prev_part_links', 0);
有两种方法可以做到这一点。 一种是检查元密钥的值,另一种是检查元密钥是否存在。
检查值
如get_post_meta文档中所述,如果您尝试访问的元密钥不存在,该函数将返回一个空字符串或一个空数组。 由于空字符串和空数组都是虚假的,因此您可以使用简单的if
语句来检查元键是否具有有效的元数据,如下所示:
if ( get_post_meta( $postid, '_wi_prev-script-part', true ) )
{
//Do something
}
检查钥匙
但是,在某些情况下,空字符串被视为有效值。 如果您的代码将空字符串视为理想值,则需要检查,以了解元密钥本身的存在。 我们可以使用get_post_custom_keys函数来做到这一点:
if( in_array( '_wi_prev-script-part', get_post_custom_keys($postid) ) )
{
//Do something
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.