• User Attivo

    Dubbi su righe commento pagine PHP - CSS

    Ciao,
    ho una serie di dubbi e incapacità a capire le regole delle righe di commento inserite, come aiuto o riferimento, in vari file PHP, CSS, JS eccetera, quindi per WordPress ma per qualsiasi CMS o struttura.

    Per esempio, quando installo WP configuro il file wp-config.php inserendo i vari dati, database, password eccetera.
    Ogni blocco di codice è commentato in modo da spiegare cosa inserire nei vari parametri.
    Questi commenti non verranno interpretati in quanto preceduti da simboli che appunto li rendono commenti, nel caso di un file PHP solitamente vedo come segue:

    <!--Questo è un commento e non verrà interpretato-->
    

    oppure:

    /** Questo è un commento e non verrà interpretato */
    

    oppure:

    /**#@-*/
    

    oppure:

    /**#@+
     * @since 2.6.0
     */
    

    Non riesco a comprendere le differenze, ammesso che ci siano, negli esempi che sopra ho riportato. Per esempio: @since 2.6.0 è un commento o viene letto o interpretato?

    Stessi dubbi con i CSS, anzi ancora di più visto che i child theme mi fanno crollare completamente il senso logico.
    Per esempio:

    /*
    testoarticolo {font-size: 21px;}
    */
    

    Questo codice qui sopra inserito nel file style.css non verrà preso in considerazione in quanto è commentato. Basta eliminare il codice commento e la classe **testoarticolo **avrà il font a 21px.
    Ma allora entro ancora di più in confusione nel momento in cui creo un child theme, il cui file style.CSS deve contenere i riferimenti del tema Padre:

    /*
    Theme Name: Child theme
    Description: Esempio di child theme
    Version: 3.0.0
    Template: nomecartella-tema-padre
    */
    

    Il codice sopra è commentato, eppure in questo caso verrà letto e interpretato da WordPress.

    Ma allora qual è il criterio dei commenti? In che modo posso capire se un commento è tale oppure è fondamentale al funzionamento?

    Grazie per qualsiasi informazione o chiarimento.....


  • Moderatore

    Ciao MustHave.
    Alcune indicazioni non esaustive sull'argomento.

    Commenti HTML
    La prima coppia di tag serve a inserire commenti nell'html, e ciò significa che lato sorgente quelle righe ci saranno ma che non avranno effetto nella pagina così come la vede l'utente. In pratica il commento fa sì che il codice non venga interpretato.

    
    <!--
    <p style="text-align: justify">Questo testo è giustificato</p>
    -->
    
    <!-- Header -->
    <header>
    ....
    </header>
    
    

    Sopra due esempi di righe commentate: la prima non fa visualizzare all'utente il paragrafo, la seconda aiuta a leggere meglio il codice. Da notare che la coppia di tag estende il commento anche su più righe.

    Esempio: commenti HTML in un file PHP che stampa una pagina
    In un file PHP che è responsabile di stampare una pagina, la riga commentata viene inserita nel sorgente ma il codice al suo interno non viene interpretato:

    
    <!-- echo 'ciao!'; -->
    
    

    La riga dell'esempio sopra, inserita in una pagina PHP, non mostra nulla all'utente pur essendo visibile nel sorgente. Se elimini i tag HTML di commento hai invece l'interpretazione del codice PHP che dice di scrivere: ciao!

    Commenti PHP
    Nelle pagine PHP puoi inserire righe commentate così:

    
    /* Questo è un commento
    che si estende
    su più righe */
    
    //Questo è un commento che si estende su una riga unica
    
    

    PHP accetta anche i commenti in stile Java:

    
    /**
     * @package     Joomla.Platform
     * @subpackage  Document
     *
     * @copyright   Copyright (C) 2005 - 2013 Open Source Matters, Inc. All rights reserved.
     * @license     GNU General Public License version 2 or later; see LICENSE
     */
    
    

    L'esempio sopra è tratto da un file php di Joomla.

    Commenti CSS
    Nei file CSS puoi inserire commenti così:

    
    /* nav *a:hover *{background-color: #ccc;} */
    
    

    Quando nei fogli di stile commenti l'istruzione è come se l'istruzione non ci fosse. Questo ti fa capire perché quando togli la coppia di tag commento nell'esempio sopra a *testoarticolo *viene applicato font-size: 21px.

    Child Theme di WordPress
    I Child Theme di WordPress fanno storia a parte. Nel file style.css devi inserire alcune righe, come anche tu hai riportato, incluse tra la coppia di tag; di queste righe quelle importanti sono relative a Theme Name (il nome) e *Template *(la cartella). Se elimini la coppia di tag crei problemi perché il contenuto non è fatto da normali istruzioni CSS, ma serve a WordPress per fare funzionare il child theme.

    
    /*
     Theme Name:     Twenty Fourteen Child
     Theme URI:      http://example.com/twenty-fourteen-child/
     Description:    Twenty Fourteen Child Theme
     Author:         John Doe
     Author URI:     http://example.com
     Template:       twentyfourteen
     Version:        1.0.0
    */
    
    
    @import url("../twentyfourteen/style.css");
    
    
    /* =Theme customization starts here
    -------------------------------------------------------------- */
    
    

    L'esempio sopra è tratto da wordpress.org.

    Commenti Javascript
    Su singola linea o multilinea:

    
    // when the user does something horrid
      	messages: {
      		name: {
      			required: "Please enter your name.",
      			minlength: jQuery.format("At least {0} characters required.")
      		},
    
    
    /*
    Sopra c'è un commento su singola linea che precede una parte di codice javascript relativo a funzionalità di un form di contatto.
    Questo invece è un commento multilinea. I due metodi vengono accettati anche da Php.
    */
    
    
    

    Commenti htaccess
    Nel file *htaccess *le righe si commentano con il cancelletto #:

    
    redirect 301 pagina1.html sitoweb.com/pagina2.html
    #redirect 301 pagina2.html sitoweb.com/pagina1.html
    
    

    Il primo redirect 301 è attivo e redireziona *pagina1 *a pagina2. Per fortuna la seconda riga è commentata (è un loop).

    Spero di esserti stato utile.

    Francesco


  • Moderatore

    Correggo l'esempio del commento HTML sull'istruzione PHP, nello scrivere mi sono perso i tag di apertura e chiusura e mi sono espresso male.
    Mi riferivo a questo:

    
    <!-- <?php echo 'Ciao!' ?> -->
    
    

    che fa scrivere nel sorgente:

    <!-- Ciao! -->

    Mi sono espresso male perché in realtà il codice viene interpretato e il Ciao! si stampa ma, essendoci i tag di commento HTML, la riga finisce nel sorgente e non è visibile all'utente.
    Se si eliminano i tag di commento HTML resta l'istruzione PHP e dunque il Ciao! lo vede anche l'utente nella pagina.

    A questo punto correggo anche il titoletto: Esempio: commenti HTML su istruzione PHP.


  • User Attivo

    Ciao Francesco, sei stato molto prezioso, ora un bel po' di nebbia si è diradata.
    Grazie ancora e Buon Natale! 🙂