Supporto » Funzionalità = Plugin » Disabilitare link a post privati

  • Salve a tutti, gestisco un sito di competizioni sportive e quando vado a creare i calendari delle partite future imposto lo stato del post su privato, tuttavia anche gli utenti non loggati se cliccano sul post riescondo ad accedervi, in teoria dovrebbe rilasciare un 404. Come posso disabilitare il link al post per gli utenti non loggati?

    Grazie in anticipo

Stai vedendo 1 repliche (di 1 totali)
  • Moderatore Guido Scialfa

    (@wido)

    Ciao @praticamente,

    Prova questo snippet nel tuo file functions.php.
    Da inserire alla fine del file

    
    function xx_password_required_redirect() {
    
            global $post, $wp_query;
    
    	if ( ! is_singular() || ! $post instanceof WP_Post ) {
    		return;
    	}
    
    	if ( post_password_required( $post->ID ) && ! is_user_logged_in() ) {
    		$wp_query->set_404();
    	}
    }
    add_action( 'template_redirect', 'xx_password_required_redirect' );
    

    Ti imposta il 404 se l’utente non è loggato e se la password è richiesta.

    • Questa risposta è stata modificata 3 anni, 6 mesi fa da  Guido Scialfa. Ragione: improve code
    • Questa risposta è stata modificata 3 anni, 6 mesi fa da  Guido Scialfa.
Stai vedendo 1 repliche (di 1 totali)
  • Il topic ‘Disabilitare link a post privati’ è chiuso a nuove risposte.