将自定义帖子类型链接到用户成员资格

时间:2021-07-29 作者:jeno

我正在建立一个医学实验室网站,我想链接一个自定义的帖子类型-结果到用户。如何将结果CPT链接到用户?

其想法是能够将多个测试结果关联到单个用户/成员。目前正在使用woocommerce会员资格来增强会员资格。

请,任何想法或只是给我指出正确的方向都会很有帮助。提前感谢您!

1 个回复
SO网友:FATCHOLA

如果我能理解你在寻找什么,你可以创建一个简单的函数,当创建一个新的CPT并更新一个post\\u meta时,该函数将启动,例如:“quot;用户\\u控制器;为此。

稍后,您将需要筛选post.php, 仅显示与当前用户相关的帖子。

add_action("save_post", function ($post_ID, $post){
    $post = get_post($post_ID);
    $user = get_curent_user();

    if($post->post_type === "my_cpt" && !get_post_meta($post_ID, "my_meta_key")){
        update_post_meta($post_ID, "my_meta_key", $user->key);
    }
    //$user->key matches what you want to kip as link.
});
筛选上的帖子post.php 页面您可以:

add_filter( \'posts_results\', \'my_posts_results_filter\' );
    
function my_posts_results_filter( $posts ) {
    global $my_global_condition;
    $user = get_curent_user();
    $screen = get_current_sreen();

    $filtered_posts = array();
        
    foreach ( $posts as $post ) {
        if (
        $post->post_type === "my_cpt" && 
        $screen->ID === $my_cpt && 
        get_post_meta($post_ID, "my_meta_key")=== $user->key
        ) {
                // It\'s allow :).
                $filtered_posts[] = $post;
        }
    }
    return $filtered_posts;
}
您还可以使用post_where 滤器

您还可以基于author属性筛选post simple。

具有

相关推荐

Adding column to wpex_users

因此,我尝试向wpex\\u用户添加一列。由于某种原因,我不能。这是我的问题:ALTER TABLE wpex_users ADD nametest VARCHAR(200);这给了我一个错误,我的标准值是错误的。它为空。我不知道该怎么办。我真的需要这个新专栏。您知道我需要添加新列的查询吗?我用PHPMyAdmin编写查询。