BuddyPress: “Termini e Condizioni” nella pagina di registrazione

BuddyPress, il famosissimo #plugin sociale che uso qui su laltroweb, (ottimo per gruppi, amicizie, profili estesi, attività, e tanto altro…)! tra le tante cose, offre una pagina di registrazione decisamente diversa rispetto alla classica offerta da #WordPress!

Questa pagina, inoltre, grazie a qualche buona riga di codice, possiamo migliorarla con varie chicche utili come, ad esempio, i termini e condizioni.

Un esempio:

buddypress termini e condizioni
clicca per visualizzare la pagina di registrazione!

Codice usato per creare: BuddyPress terms and condition!

<?php

/* if in mu-plugins */
defined( 'ABSPATH' ) or die( 'uh?' );

// BuddyPress terms and condition!
add_action('bp_signup_validate', 'custom_field_check_validation');
function custom_field_check_validation()
{
    global $bp;
    $custom_field = $_POST['custom_field'];
    if (empty($custom_field) || $custom_field == '')
    {
        $bp->signup->errors['custom_field'] = 'Si prega di accettare i termini e le condizioni';
    }
    return;
}
add_action('bp_before_registration_submit_buttons', 'show_custom_field');  
function show_custom_field()
{
?>
    <style type="text/css">
    hr.clr {
        clear: both;
    }
    .custom_field_container {
        clear: both;
        margin: 25px 0;
    }
    .custom_field_container p {
        margin-bottom: 0;
    }
    .terms-and-conditions-container {
        width: 100%;
        margin: 10px 0;
        border: 1px solid #EFEFEF;
        height: 120px;
        padding: 10px;
        overflow-y: scroll;
    }
    </style>
    <hr class="clr">
    <div class="custom_field_container">
        <p>
            <strong>Termini e Condizioni:</strong>
        </p>
        <div class="terms-and-conditions-container">
            Accetti di tenere un comportamento consono ad un ambiente pubblico?
            Ovvero: niente volgarità; niente bestemmie; niente pubblicazione di materiale porno e/o pedoporno; niente spam gratuito (ammissibile se e solo se il contenuto è in linea con l'argomento trattato e può servire ad approfondire il contenuto); niente razzismo e robe varie... Insomma, se ti iscrivi, accetti di comportarti da persone civile ed educata, pena il ban e la fustigazione xD
            <br>
            Grazie.
        </div>
        <?php do_action( 'bp_custom_field_errors' ); ?>
        <input type="checkbox" name="custom_field" id="bph_field" value="1" />
        <strong>Accetto i termini e le condizioni indicate!</strong>
    </div>
    <hr class="clr">
<?php
}

Ovviamente, basta metterlo nel proprio function.php o in un mu-plugins 😉

NB: un altro metodo può essere quello di usare il pannello:/wp-admin/users.php?page=bp-profile-setup

ma non son riuscito, per quanto sia un ottimo strumento, a creare una textarea readonly con checkbox.

Leave a Comment