在POST保存期间运行函数并将变量添加到POST元

时间:2012-10-03 作者:George Kendros

我正在创建一个页面,使用oEmbed从Vimeo获取信息。一切正常,但对vimeo的多次调用导致了页面加载问题(显然)。

我想知道是否有可能在创建/保存帖子时进行相同的oEmbed调用,然后用信息填充各种帖子元变量。

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

是的,非常肯定。将下面的框架代码作为一个函数的基础,该函数可以执行您想要的操作,并将其放置在您的函数中。php:

function your_vimeo_meta_function ($post_id) {

    // some verifications first
    if ( $post_id == null || empty($_POST) )
        return;

    if ( !isset( $_POST[\'post_type\'] ) || $_POST[\'post_type\']!=\'post\' )  
        return; 

    if ( wp_is_post_revision( $post_id ) )
        $post_id = wp_is_post_revision( $post_id );

    global $post;  
    if ( empty( $post ) )
        $post = get_post($post_id);

    /* 
     * do your vimeo stuff here 
     */

    update_post_meta($post_id, \'your_vimeo_key_name\', $your_vimeo_value);
    // if this key doesn\'t exist, it will be created. If it exists, it will be updated
}
add_action(\'save_post\', \'your_vimeo_meta_function\', 12 );

结束

相关推荐

列出分类法:如果分类法没有POST,就不要列出分类法--取决于定制的POST-META?

这可能很难解释,我不知道是否有解决办法!?我有一个名为“wr\\u event”的自定义帖子类型和一个名为“event\\u type”的分层自定义分类法。自定义帖子类型有一个元框,用于event_date 并且与此帖子类型关联的所有帖子都按以下方式排序event_date. 我在循环中有一个特殊的条件来查询event_date 已经发生了-在这种情况下,它没有显示,但只列在我的档案中。就像你可以使用wp_list_categories() 我编写了一个自定义函数,它以完全相同的方式列出所有分类术语。现在