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. Coding
    5. Funzione php per meta tags
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • C
      cassy User Attivo • 2 giu 2012, 10:36 ultima modifica di

      Funzione php per meta tags

      Salve a tutti. Vi spiego un po' la situazione del mio sito in php.
      Ho una index che, tramite la funzione include, richiama le altre pagine del sito.

      Quello che succede è che i meta tags sono uguali in tutte le pagine del sito.

      Nell'head della index c'è questo:

      <title><?=$mainconfig['PAGE_TITLE']?></title>
      <link rev="made" href="<?=$mainconfig['EMAIL_MADE_BY']?>" />
      <meta name="author" content="<?=$mainconfig['MADE_BY']?>" />
      <meta name="keywords" content="<?=$mainconfig['META-KEY']?>" />
      <meta name="DESCRIPTION" content="<?=$mainconfig['META-DESCR']?>" />

      Il risultato è che title, description e keyword sono identiche in ogni pagina.

      Come posso fare per avere meta tags diversi per ogni pagina?

      Grazie a chiunque vorrà aiutarmi.

      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
         

      • T
        thedarkita ModSenior • 2 giu 2012, 11:19 ultima modifica di

        Ciao Cassy,
        dovresti dare un valore diverso a quelle variabili nelle varie pagine.
        Se le pagine vengono da un database, potresti sfruttare la tabella per inserire dei campi aggiuntivi per dare i valori che vuoi ai meta tag.

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • C
          cassy User Attivo • 2 giu 2012, 11:28 ultima modifica di

          Purtroppo non so dove mettere le mani.
          Ma non posso mettere una funzione nell'index per dichiarare:
          se la pagina è pagina1, carica questi meta;
          se la pagina è pagina2, carica questi altri ecc ecc ???

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • T
            thedarkita ModSenior • 2 giu 2012, 11:31 ultima modifica di

            Se tutto viene caricato tramite include, si puoi farlo.
            Metti $mainconfig['PAGE_TITLE'] = 'Quello che vuoi'; nella pagina e in teoria funziona, però cosi modifichi la configurazione.
            Senza sapere com'è fatto lo script di preciso è impossibile comunque dirti quale sarebbe la cosa migliore da fare, per evitare problemi.

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • C
              cassy User Attivo • 2 giu 2012, 11:38 ultima modifica di

              Noto codice di questo tipo:

              case "chisiamo":
              $includecontent = 'chisiamo';
              //echo " <link rel='stylesheet' type='text/css' href='/style/css/chisiamo.css.php' />\n";
              echo " <script type='text/javascript' src='${scripturl}lightbox/js/prototype.js'></script>\n";
              echo " <script type='text/javascript' src='${scripturl}lightbox/js/scriptaculous.js?load=effects,builder'></script>\n";
              echo " <script type='text/javascript' src='${scripturl}lightbox/js/lightbox.js'></script>\n";
              echo " <link rel='stylesheet' href='${scripturl}lightbox/css/lightbox.css' type='text/css' media='screen' />\n";
              break;

              Vado nella cartella content e vedo che esiste la pagina chisiamo.php

              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • T
                thedarkita ModSenior • 2 giu 2012, 11:40 ultima modifica di

                Se l'include avviene prima che vengnao mandati in input i meta tag puoi mettere in chisiamo.php $mainconfig['PAGE_TITLE'] = 'Quello che vuoi'; e il title cambia per quella pagina.

                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • C
                  cassy User Attivo • 2 giu 2012, 11:47 ultima modifica di

                  Ho provato. Non va. Quindi, secondo l'analisi che ne hai fatto, l'include avviene dopo che vengono mandati in input i meta tag.

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • T
                    thedarkita ModSenior • 2 giu 2012, 11:49 ultima modifica di

                    Potrebbe essere quello il motivo.
                    Senza vedere lo script completo si tratta di pure supposizioni, potrebbe esserci anche un motivo differente.

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • C
                      cassy User Attivo • 2 giu 2012, 11:50 ultima modifica di

                      Si, è vero.

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • T
                        thedarkita ModSenior • 2 giu 2012, 11:52 ultima modifica di

                        Dovresti vedere se è possibile mandare i meta tag in output dopo l'inclusione della pagina, però se si tratta di include mi sembra altamente improbabile riuscire a fare qualcosa.

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        • C
                          cassy User Attivo • 2 giu 2012, 11:52 ultima modifica di

                          Mica posso pubblicare qui sul forum tutta la index? Mi sembra troppo...

                          0 Miglior Risposta Ringrazia Cita Rispondi

                            1 Risposta Ultima Risposta
                          • T
                            thedarkita ModSenior • 2 giu 2012, 11:53 ultima modifica di

                            Se la posti tra i tag php non c'è problema.
                            E se puoi posta anche chisiamo.php cosi vediamo un pò.

                            0 Miglior Risposta Ringrazia Cita Rispondi

                              1 Risposta Ultima Risposta
                            • C
                              cassy User Attivo • 2 giu 2012, 11:53 ultima modifica di

                              E non si può creare un file head.php e giocare con quello? Non saprei come ma mi sembra di aver letto tempo fa che si poteva fare qualcosa di questo tipo

                              0 Miglior Risposta Ringrazia Cita Rispondi

                                1 Risposta Ultima Risposta
                              • T
                                thedarkita ModSenior • 2 giu 2012, 11:55 ultima modifica di

                                Qualcosa si può fare, nel senso che però dovresti fare 2 switch e avere i meta tag divisi dalla pagina vera e propria che viene inclusa. In sostanza avresti 2 pagine, una con la pagina vera e propria e una con i meta tag della pagina.
                                Se puoi postare le 2 pagine tra i tag php, vediamo qual'è la soluzione più pulita.

                                0 Miglior Risposta Ringrazia Cita Rispondi

                                  1 Risposta Ultima Risposta
                                • C
                                  cassy User Attivo • 2 giu 2012, 11:58 ultima modifica di

                                  [PHP]

                                  codice
                                  [/PHP]

                                  0 Miglior Risposta Ringrazia Cita Rispondi

                                    1 Risposta Ultima Risposta
                                  • T
                                    thedarkita ModSenior • 2 giu 2012, 12:06 ultima modifica di

                                    Lo script non è il massimo, tutto fatto in maniera molto confusa, inoltre dovrebbe produrre alcuni notice ed essere vulnerabile ad SQL Injection se php è configurato con i magic_quotes OFF (E se il login è fatto senza misure di sicurezza come il resto dello script, chiunque può effettuare l'accesso senza password).
                                    La soluzione più veloce è quella di togliere i meta tag da dove sono adesso e metterli sotto ogni case, insieme ai file css, cioè:
                                    [php]
                                    case "dovesiamo":
                                    $includecontent = 'dovesiamo';
                                    echo '<title>Mio Titolo</title>';
                                    echo '<meta name="DESCRIPTION" content="Mia descrizione" />';
                                    break;
                                    [/php]

                                    0 Miglior Risposta Ringrazia Cita Rispondi

                                      1 Risposta Ultima Risposta
                                    • C
                                      cassy User Attivo • 2 giu 2012, 12:07 ultima modifica di

                                      chi siamo

                                      codice

                                      0 Miglior Risposta Ringrazia Cita Rispondi

                                        1 Risposta Ultima Risposta
                                      • C
                                        cassy User Attivo • 2 giu 2012, 12:09 ultima modifica di

                                        Immaginavo che lo script fosse scritto male. Tra l'altro, richiama tante pagine che alla fine il sito non usa.

                                        Ora provo subito la tua soluzione e ti dico 🙂

                                        0 Miglior Risposta Ringrazia Cita Rispondi

                                          1 Risposta Ultima Risposta
                                        • C
                                          cassy User Attivo • 2 giu 2012, 12:14 ultima modifica di

                                          Ho provato ma, se tolgo i meta dove stanno e copio quel codice, non va

                                          0 Miglior Risposta Ringrazia Cita Rispondi

                                            1 Risposta Ultima Risposta
                                          • T
                                            thedarkita ModSenior • 2 giu 2012, 12:17 ultima modifica di

                                            Mi sembra strano, se lo metti in chi siamo, accedendo a quella pagina quei 2 meta tag che hai impostato dovrebbe inviarli correttamente.

                                            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