为什么“Standard”返回的GET_POST_Format()为空

时间:2012-07-11 作者:ilyo

我已启用自定义帖子类型

add_theme_support( \'post-formats\', array( \'aside\', \'link\', \'gallery\', \'status\', \'quote\', \'image\' ) );
默认帖子类型设置为Standard, 除了Standard 类型,当我有一个标准的帖子get_post_format() 返回空。我是否在启用它们时遗漏了什么?

1 个回复
最合适的回答,由SO网友:TheDeadMedic 整理而成

因为“标准”本身不是一种格式,它只是暗示has no formats.

。。。这有点欺骗性,因为它被列在格式元框中作为一种可供选择的格式

我认为“标准”很清楚地暗示了它的含义。如果您要创建的站点中的帖子从来都不是“标准”的,则返回默认设置:

if ( ! $format = get_post_format() )
    $format = \'gallery\';
或者,钩住wp_insert_post 如果尚未设置格式,则强制使用该格式。

function wpse_58121_set_default_format( $post_id ) {
    if ( ! get_post_format( $post_id ) )
        set_post_format( $post_id, \'gallery\' );
}

结束

相关推荐

Wordpress Child Themes

我试图在wordpress子主题中重新声明父主题已经在使用的函数。但是,在尝试执行此操作时,我收到一条“致命错误:无法重新声明”消息。此外,我尝试使用以下方法,但没有成功:if (!function_exists(\'jr_load_scripts\')) { // do fancy things here... } 这是the link 如果您想快速查看。。。EDIT: 以下是完整代码:if (!function_exists(\'jr_load_scripts\')) {