web-dev-qa-db-fra.com

Limiter le contenu par date d'inscription de l'utilisateur

Je recherche un code qui me permettra de restreindre l'accès au contenu en fonction d'une date d'enregistrement d'utilisateur. Par conséquent, si un utilisateur s'enregistre après que le contenu a déjà été publié , il ne pourra pas afficher le contenu . L'accès au contenu de la publication ne sera disponible que si la publication est faite après que l'utilisateur est déjà enregistré.

2
Bernie

Je viens de faire ce code, vous pouvez essayer:

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