• Bannato User Attivo

    Semplice guida per installare una MOD

    Description: Guida per l'installazione di una MOD in phpbb.
    Author: linus

    Prima di cominciare una modifica ricordatevi di fare un backup di sicurezza dei file e del database.
    **
    1 Azione "COPY" :**

    Se in una MOD vedete questo :

    #-----[ COPY ]------------------------------------------

    copy file.php to file.php
    copy file.tpl to templates/subSilver/file.tpl

    Questo significa di copiare il file.php nella cartella principale del forum, mentre di copiare il file.tpl nella cartella del Vostro template...senza modificare nulla.
    **
    2 Azione "OPEN" :**

    La prima azione di base da fare :
    #
    #-----[ OPEN ]------------------------------------------

    common.php

    Aprire il file common.php con un editor di testo. (notepad, wordpad, editplus, etc.)

    3 Azione "FIND" :

    Questa azione significa di dover trovare qualcosa all'interno del file che avete precedentemente aperto con il Vostro editor di testo.

             # 
    

    #-----[ FIND ]------------------------------------------

    around line 184

    //
    // Show 'Board is disabled' message if needed.
    //

    Qui utilizzate la funzione "CERCA" del Vostro editor di testo. A volte trovate anche il numero di linea corrispondente "around = intorno alla linea 184".
    **
    4 Azione "BEFORE ADD" :**

    #-----[ BEFORE, ADD ]--------------------------------------

    include($phpbb_root_path . 'attach_mod/attachment_mod.'.$phpEx);

    Qui dovete aggiungere il codice della MOD esattamente prima di quello precedentemente trovato. Esempio :

    include($phpbb_root_path . 'attach_mod/attachment_mod.'.$phpEx); // -> TESTO AGGIUNTO PRIMA
    //
    // Show 'Board is disabled' message if needed. // -> TESTO CERCATO
    //
    **
    6 Azione "AFTER ADD" :**

               # 
    

    #-----[ AFTER, ADD ]------------------------------------------

    include($phpbb_root_path . 'attach_mod/attachment_mod.'.$phpEx);

    Azione simile a BEFORE, solo che il codice deve essere aggiunto dopo. Esempio :

    //
    // Show 'Board is disabled' message if needed. // -> TESTO CERCATO
    //
    include($phpbb_root_path . 'attach_mod/attachment_mod.'.$phpEx); // -> TESTO AGGIUNTO DOPO

    **
    6 Azione "REPLACE WITH" :**

            # 
    

    #-----[ REPLACE WITH ]------------------------------------------

    <form action="{S_POST_ACTION}" method="post" name="post" onsubmit="return checkForm(this)" {S_FORM_ENCTYPE}>

    Qui dovete semplicemente eliminare il codice trovato e copiarci quello nuovo. Esempio :

              # 
    

    #-----[ FIND ]---------------------------------------------

    around line 225

    <form action="{S_POST_ACTION}" method="post" name="post" onsubmit="return checkForm(this)">

    #-----[ REPLACE WITH ]---------------------------------------

    <form action="{S_POST_ACTION}" method="post" name="post" onsubmit="return checkForm(this)" {S_FORM_ENCTYPE}>

    Questo è il codice originale, prima della modifica :

                 <form action="{S_POST_ACTION}" method="post" name="post" onsubmit="return checkForm(this)">      
    

    ...ricopiamolo con quello della mod :

           <form action="{S_POST_ACTION}" method="post" name="post" onsubmit="return checkForm(this)" {S_FORM_ENCTYPE}>      
    

    Ecco il mio codice nel file modificato, risultato finale :

       <form action="{S_POST_ACTION}" method="post" name="post" onsubmit="return checkForm(this)" {S_FORM_ENCTYPE}>      
    

    **
    7 Azione "IN-LINE FIND" :**
    #
    #-----[ IN LINE FIND ]------------------------------------------

    t.topic_title,

    Per capire bene questa azione passiamo ad un esempio pratico :

              # 
    

    #-----[ FIND ]------------------------------------------

    $select_sql = ( !$submit ) ? ", t.topic_title, p.enable_bbcode, p.enable_html, p.enable_smilies, p.enable_sig, p.post_username, pt.post_subject, pt.post_text, pt.bbcode_uid, u.username, u.user_id, u.user_sig" : '';

    #-----[ IN-LINE FIND ]------------------------------------------

    t.topic_title,

    Questa azione è sempre preceduta da "FIND", come vedete prima troviamo il codice da modificare e dopo nella linea del codice troviamo la stringa del "IN-LINE FIND", questo perchè a volte è necessario inserire del codice all'interno di una riga di codice.
    **
    8 Azione "IN-LINE AFTER, ADD" :**

                   # 
    

    #-----[ IN-LINE AFTER, ADD ]------------------------------------------

    t.topic_desc,

    Questo significa che dobbiamo inserire il codice dopo la stringa precedentemente trovata, spesso la stringa da inserire è in una riga di codice...questo significa che sia prima che dopo abbiamo altro codice che non deve essere toccato. Esempio :

    #-----[ FIND ]------------------------------------------

    $select_sql = ( !$submit ) ? ", t.topic_title, p.enable_bbcode, p.enable_html, p.enable_smilies, p.enable_sig, p.post_username, pt.post_subject, pt.post_text, pt.bbcode_uid, u.username, u.user_id, u.user_sig" : '';

    #-----[ IN-LINE FIND ]------------------------------------------

    t.topic_title,

    #-----[ IN-LINE AFTER, ADD ]------------------------------------------

    t.topic_desc,

    Ecco cosa dobbiamo trovare nel file da modificare :

    $select_sql = ( !$submit ) ? ", t.topic_title, p.enable_bbcode, p.enable_html, p.enable_smilies, p.enable_sig, p.post_username, pt.post_subject, pt.post_text, pt.bbcode_uid, u.username, u.user_id, u.user_sig" : '';

    In questa linea cerchiamo la stringa :

           t.topic_title,      
    

    e aggiungiamo dopo :

              t.topic_desc,      
    

    Ecco il risultato della riga modificata :

    $select_sql = ( !$submit ) ? ", t.topic_title, t.topic_desc, p.enable_bbcode, p.enable_html, p.enable_smilies, p.enable_sig, p.post_username, pt.post_subject, pt.post_text, pt.bbcode_uid, u.username, u.user_id, u.user_sig" : '';

    9 Azione "IN-LINE BEFORE, ADD" :

    Simile all'azione N.8, solo che questa volta la stringa di codice va inserita prima. Ecco un esempio :

             # 
    

    #-----[ FIND ]------------------------------------------

    prepare_post($mode, $post_data, $bbcode_on, $html_on, $smilies_on, $error_msg, $username, $bbcode_uid, $subject, $message, $poll_title, $poll_options, $poll_length);

    #-----[ IN-LINE FIND ]------------------------------------------

    $poll_length)

    #-----[ IN-LINE BEFORE, ADD ]------------------------------------------

    $topic_desc,

    Ecco cosa dobbiamo trovare nel file da modificare :

               prepare_post($mode, $post_data, $bbcode_on, $html_on, $smilies_on, $error_msg, $username, $bbcode_uid, $subject, $message, $poll_title, $poll_options, $poll_length);     
    

    In questa riga cerchiamo la stringa :
    $poll_length)

    e aggiungiamo prima :

                  $topic_desc,      
    

    Ecco il risultato della riga modificata :
    prepare_post($mode, $post_data, $bbcode_on, $html_on, $smilies_on, $error_msg, $username, $bbcode_uid, $subject, $message, $poll_title, $poll_options, $topic_desc, $poll_length);

    10 Azione "SQL" :

    Questa azione serve per modificare il Vostro database, molto comune nelle MOD.

    #-----[ SQL ]------------------------------------------

    ALTER TABLE phpbb_topics ADD topic_desc varchar(255) DEFAULT '' AFTER topic_title

    Questo significa eseguire una query nel Vostro database, metodo semplice e sicuro.

    11 Azione "SAVE/CLOSE ALL FILE" :

    Qui è finita la modifica dei file. Adesso siete pronti per upparli sul server. Meglio prima testarli in locale. image

    Per questo topic ringraziamo linus di phpbb.it


  • Community Manager

    Molto utile.

    Da mettere in rilievo appena lo creerò 🙂