due chiacchiere

Sottoscrivi i commenti, reloaded

Una delle cose più utili che questo blog offre ai suoi lettori da qualche anno a questa parte è la possibilità di “iscriversi” alla discussione su un articolo, ricevendo un messaggio email ogni volta che qualcuno aggiunge un nuovo commento. In fondo, come già scrivevo diverso tempo fa, questo è uno dei tanti modi per “fidelizzare” i visitatori, ed invogliarli a tornare. Specialmente nel mondo frenetico e pieno di informazioni in cui viviamo, avere uno strumento che ci ricorda i vari discorsi a cui abbiamo preso parte in rete, diventa quanto mai fondamentale. Unico problema: il solo plugin che svolge questa funzione è stato sviluppato più o meno tre anni fa, usa funzioni oramai deprecate (basta attivare il debug mode di WordPress per vederlo), non si adatta a tutti i template (quando deve mostrare la pagina per gestire le sottoscrizioni), modifica tabelle di sistema e lascia un bel po’ di sporco in giro nel caso in cui si decida di disinstallarlo. Senza contare il dettaglio che… alcune cose non funzionano proprio.

Cosa può fare il buon camu in questi casi se non rimboccarsi le maniche e riscriverlo di sana pianta? 😉 Ho provato a contattare l’autore per vedere se mi consentiva di proseguire il suo lavoro, anziché creare un nuovo “ramo” di sviluppo distinto ed indipendente, ma a qualche giorno di distanza non ho ancora avuto risposta, quindi mi sa che mi toccherà pubblicarlo come nuovo plugin. Il nome, manco a dirlo, sarà probabilmente Subscribe to Comments Reloaded ed offrirà un’interfaccia di gestione più pulita, codice ottimizzato e più snello, maggiore flessibilità e via dicendo. E soprattutto non si metterà a pasticciare con le tabelle di sistema, che non è mai cosa buona e giusta. All’inizio avevo deciso di non renderlo “retrocompatibile” con il plugin attuale, vista la diversa struttura del database, ma alla fine mi sono convinto a spendere un po’ di tempo e creare la relativa procedura di import dei dati. Appena una versione beta sarà pronta, potrai trovarla nel mio laboratorio (vedi collegamento nel piè di pagina).

Commenti

  1. Emanuele ha detto:

    E io ti ringrazio in anticipo. 😉
    Ciao,
    Emanuele

    1. camu ha detto:

      @Emanuele: vediamo cosa ne uscirà fuori 🙂 Vorrei anche implementare la funzione per iscriversi senza commentare, ma vedo che farlo in maniera “pulita” è un po’ un casino, quindi forse per questa prima versione mi concentrerò sulle funzionalità di base…

      1. Emanuele ha detto:

        Oh, vedi se riesci ad usare le stesse chiamate così non devo metter mano al template! 😛
        (si lo so, *ogni tanto* chiedo troppo). 😉
        Ciao,
        Emanuele

        1. camu ha detto:

          @Emanuele: questo non sarà possibile 🙂 L’approccio che sto usando io è completamente diverso, ma tecnicamente più flessibile. In pratica ti basterà fare una copia del tuo single.php oppure index.php se non ce l’hai (o del page.php ancora meglio) e dove si trova il contenuto, chiamare una funzione che mostra il “manager” 🙂 Poi crei una nuova pagina nel tuo sito e l’associ a questo “template”… è più complicato a dirsi che a farsi. Poi può anche darsi che trovo un metodo ancora più semplice, mentre scrivo il plugin, ma l’idea è questa. Lo so, potrei aggiungere un filtro su the_content(), ma questo verrebbe eseguito SEMPRE su tutti gli articoli del blog (almeno l’if iniziale per vedere se va mostrato il pannello di gestione delle sottoscrizioni), degradando le prestazioni 😉

        2. Emanuele ha detto:

          Sei talebano il triplo di me quando mi rispondi così. Però mi piace. 😀
          Ciao,
          Emanuele

        3. camu ha detto:

          @Emanuele: beh, il fatto è che l’approccio usato dal plugin attuale non è flessibile per nulla. Spesso e volentieri non basta indicare dove si trovano sidebar.php e soci per costruire la pagina, almeno nel mio caso era così. Allora sin dall’inizio ho sempre dovuto mettere mano al codice sorgente del plugin per rimediare, infilando qualche div a destra e sinistra. Col mio metodo ciò non è più necessario, perché è l’utente ad avere il controllo completo del layout 😀 Riguardo all’ottimizzazione, si… in queste cose sono diventato particolarmente talebano 🙂 Però a giudicare dai 23,000 download del mio altro plugin, la gente direi che apprezza eheh

        4. Emanuele ha detto:

          Nono ma infatti io apprezzo l’attenzione verso le piccole scelte dove un if in più viene visto come un attacco alle prestazioni. Quando programmo sono anch’io così, per questo mi diverte leggerti con queste fissazioni. 😀
          Ciao,
          Emanuele

        5. camu ha detto:

          Eppure il mio amico Trap in queste occasioni ama sempre citare Knuth e la sua frase “Premature optimization is the root of all evil” 😀

        6. Emanuele ha detto:

          Si, è vero, perché poi ti incasini la vita sempre più. Ma se non ragioni così, che sfida è? Un bloatware lo fa pure un bambino! Per dirla alla “WordPress”…: code is poetry!
          Ciao,
          Emanuele

  2. CyberAngel ha detto:

    Non vedo l’ora di provarlo e sicuramente sarà un bel lavoro in stile Camu. Pulito e ben fatto. Come al solito mi offro di fare da beta-tester/traduttore se servisse.
    Però è davvero strano che nessun ci abbia mai pensato di farne una copia migliorata.

    Domanda: uno come fa a vedere a cosa è iscritto, se non dalla mail?

    1. camu ha detto:

      @CyberAngel: si, è strano… con tutti i bravi sviluppatori che ci sono in giro. Però è anche vero che il plugin attuale tutto sommato ancora “funzionicchia” quindi la gente si adatta a quello che trova. Riguardo alla tua domanda, appena avrò finito ci sarà un link vicino alla form dei commenti (come capita ora col plugin, ma io ho “disattivato” quella cosa perché non funziona bene qui) che ti consentirà di gestire le tue sottoscrizioni, se il sistema ti riconosce.

  3. CyberAngel ha detto:

    Another question, probabilmente che ti avrò già fatto: per il link “rispondi” cosa devo integrare in cosa? So che c’è un plugin che permette di rispondere ad un commento inserendo la nota formula “@autore: ” nel form dei commenti grazie ad un link javascript.
    GraSSie!

    1. camu ha detto:

      @CyberAngel: io ho fatto “a mano” scrivendomi quello che serviva per far funzionare la baracca. Casomai scrivimi in privato e ti spiego passo passo come fare. Te la cavi un po’ con Javascript, si?

  4. Giuseppe ha detto:

    Lo proverò sicuramente!

Lascia un commento