Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. CMS & Piattaforme Self-Hosted
    5. Limitare numero di commenti per user su post
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • B
      bibi87 User • 25 nov 2014, 16:00 ultima modifica di

      Limitare numero di commenti per user su post

      Ciao a tutti,
      sto cercando un plugin o comunque una soluzione che mi permetta di dire a wordpress: per ciascun post, ogni utente può lasciare solo un commento.
      Ho installato il plugin "comment rating field plugin" che aggiunge le stelline di gradimento prima del commento, ora dovrei limitare l'utente a commentare una sola volta ciascun articolo. Chi mi può aiutare? 😉

      Grazie in anticipo

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
        Caricamento altri post
        Rispondi
        • Topic risposta
        Effettua l'accesso per rispondere
        • Da Vecchi a Nuovi
        • Da Nuovi a Vecchi
        • Più Voti
         

      • U
        ultima Moderatore • 26 nov 2014, 09:33 ultima modifica di

        Non l'ho provato, ma in linea teorica, funziona 😉
        Ah, ovviamente non puoi controllare se l'utente non loggato ha già commentato

        
        <?php
        //Controllo se l'utente ha già commentato
        // globalizzo la variabile $current_user e $post
        global $current_user, $post;
        // se l'utente non è loggato, mostro il comment_form
        if ( !is_user_logged_in() ) {
            comment_form();
            } else {
            // altrimenti eseguo il controllo
            $usercomment = get_comments(array('user_id' => $current_user->ID, 'post_id'=>$post->ID) );
            // Quindi se ho commentato:
            if($usercomment) { 
                echo '<p>Grazie per aver già commentato questo post!</p>';
            
            } else {
                // altrimenti mostro il comment_form
                comment_form(); 
            } 
        }
        ?>
        
        
        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • B
          bibi87 User • 26 nov 2014, 11:52 ultima modifica di

          Ciao, il codice funziona benissimo, grazie :D.. il problema è che non so dove metterlo nel mio tema .

          Ti spiego: se lo metto in /wp-content/themes/nometema/comments.php funziona tutto benissimo

          riga 76 al posto di <?php comment_form(); ?>
          metto il tuo codice)

          In sostenza verifica se l'utente è loggato e guarda se ha inserito il commento. Se ha già lasciato un commento sul post esce la scritta "Grazie per aver già commentato questo articolo", (direttamente nella pagina in fondo all'elenco dei commenti, proprio al posto della form) in caso contrario gli fa vedere la form x commentare. OTTIMO!!!!!!! Poi vado nel tema.... e... comments.php non c'è. :arrabbiato:

          File alternativo? se lo metto in wp-comments carica una pagina bianca con la scritta, ma non c'è più tema ne niente.. devo fare indietro con la freccia...

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • U
            ultima Moderatore • 26 nov 2014, 11:57 ultima modifica di

            Lo inserisci nel file page.php e single.php allo stesso modo di come lo hai inserito nel tema di prova.

            analizzi il codice, e dove vedi il richiamo alla funzione comment_form(); inserisci il codice.
            Presta attenzione perchè alcuni template utilizzando il file content.php per gestire i contenuti e i commenti.
            Insomma, da un occhio preciso, sapendo che: page.php è il template delle pagine, single.php è il template dell'articolo, index.php è la pagina di default.

            Fammi sapere

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • U
              ultima Moderatore • 26 nov 2014, 12:16 ultima modifica di

              Faccio un edit al volo.
              mi posti la pagina single.php ?
              Te la correggo io.
              In alternativa, puoi crearti il file comments.php se guendo la guida su i codex (2 min )

              Ma prima postami il file 😉

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • B
                bibi87 User • 26 nov 2014, 14:19 ultima modifica di

                Ti ringrazio, ho trovato il file qui

                /wp-includes/theme-compat/comments.php. Non mi era mai capitato.

                è personalizzato infatti il plugin per avere le stelline sul commento non funziona, ma in compenso ho implementato il codice e funziona tutto bene. Consigli comunque di metterlo in single.php?
                non usa il classico comment_form(); ma

                <?php
                // If comments are open or we have at least one comment, load up the comment template
                if ( comments_open() || '0' != get_comments_number() )
                comments_template();
                ?>

                PS il tema è flatsome

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • U
                  ultima Moderatore • 26 nov 2014, 14:43 ultima modifica di

                  Non devi mai mettere mano sulle cartelle wp-admin e wp-include, rischi di perdere stabilità del cms e soprattutto, appena aggiorni wordpress perdi tutto il 'custom' che hai creato.
                  Wordpress mette a disposizione il file functions.php per creare nuove modifiche a tutto wordpress, personalizzando gli hook o aggiungerne di nuovi.
                  Di solito ogni template ha il file comments.php se non c'è l'ha o si crea e per questo, basta che accedi ai codex di wordpress e cerchi comments template, oppure modifichi i file di tuo interesse o meglio ancora, ti crei un hook.
                  Comunque, ripeto, se mi posti il codice relativo al file single.php te lo modifico e te lo ri-posto corretto.

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • B
                    bibi87 User • 26 nov 2014, 14:58 ultima modifica di

                    Sono rimasta fregata...il sistema di commenti non va bene per il mio plugin. Devo usare *comment_form();

                    vedo se riesco a non fare pasticci e* a sostituire quella form di commenti

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • U
                      ultima Moderatore • 26 nov 2014, 15:04 ultima modifica di

                      Ahahahah,
                      posta il codice, ci metto 2 minuti a correggerlo 😄
                      Oppure, leggi qui:
                      codex.wordpress.org/Function_Reference/comments_template

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • B
                        bibi87 User • 26 nov 2014, 15:50 ultima modifica di

                        ho rimesso tutto come prima e modificato single.php nel child

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • U
                          ultima Moderatore • 26 nov 2014, 16:01 ultima modifica di

                          Spero riesca nel tuo intento, io la mia buona volontà ce l'ho messa 😄
                          Cmq se hai problemi scrivimi a info(@)mygraphicsweb(.)it
                          Nel limite del possibile rispondo immediatamente

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • B
                            bibi87 User • 1 dic 2014, 13:51 ultima modifica di

                            😉 ce l'ho fatta. Sono abbastanza testarda, mi piace sbatterci la testa molte volte. Approfitto della situazione per chiederti se hai mai usato mycred per wordpress

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • U
                              ultima Moderatore • 1 dic 2014, 14:07 ultima modifica di

                              Sono contento che ci sei riuscita 🙂
                              Cmq no, non ho mai utilizzato quel plugin. Che funzioni ha?

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • B
                                bibi87 User • 1 dic 2014, 15:46 ultima modifica di

                                Si tratta di un sistema di assegnazione punti. In base alle azioni sul sito che un utente fa ( login giornalielo, acquisti dal sito, condivisione di un contenuto etc..) guadagna dei punti e finisce una classifica. Il gestore del sito poi può decidere di assegnare dei premi ai primi classificati o trasformare in soldi questi punti o altro ancora.
                                Gratuito con degli add-on a pagamento mycred . me/

                                0 Miglior Risposta Ringrazia Cita Rispondi

                                  1 Risposta Ultima Risposta
                                Caricamento altri post
                                Rispondi
                                • Topic risposta
                                Effettua l'accesso per rispondere
                                • Da Vecchi a Nuovi
                                • Da Nuovi a Vecchi
                                • Più Voti