web-dev-qa-db-ja.com

ユーザー登録日でコンテンツを制限する

ユーザー登録日に基づいてコンテンツへのアクセスを制限できるようなコードを探しています。したがって、ユーザーがコンテンツが既に投稿された後を登録した場合、ユーザーはコンテンツを表示できないとなります。投稿コンテンツを閲覧するためのアクセスは、ユーザーが既に登録された後に投稿が行われた場合にのみ利用可能になります。

2
Bernie

私はちょうどあなたが試すことができるこのコードを作りました:

add_filter( 'the_content', 'restrict_access' );
function restrict_access( $content ) { 

    $user_info = wp_get_current_user(); // Get logged in user info
    $registered = $user_info->user_registered;

    if( !is_user_logged_in() ) {

        $content = __( "You are not logged in.", 'your_textdomain' );

    } else if (new DateTime( get_the_date() ) < new DateTime( $registered )) {

        $content = __( "You are not allowed to view this content. Your user was registered ( ".date( "d-m-Y", strtotime( $registered ) )." ) after content was created ( ".get_the_date( "d-m-Y" )." ) , you are only allowed to view new content.", 'your_textdomain' );

    }

    return $content;
}
3
Kim Vinberg