• Ciao a tutti,
    vorrei editare la sezione head del codice html della mia homepage, e solo di quella, in modo da inserire uno script json per il nome del sito fornito da schema.org (il progetto di google per i dati strutturati).
    Ora nel file header.php posso editare i metadati presenti, ma poi la modifica si riflette su tutto il sito. C’è un modo per farlo limitatamente all’home page?
    Grazie

Stai visualizzando 11 risposte - dal 1 al 11 (di 11 totali)
  • Moderatore Guido Scialfa

    (@wido)

    Ciao @gillis86,

    Puoi usare i Tag Condizionali.
    Nel tuo caso se la homepage è una pagina statica impostata come Front page puoi usare is_front_page() nel qual caso invece sia la pagina impostata per mostrare gli articoli is_home().

    Chi ha creato la discussione gillis

    (@gillis86)

    ciao Guido,
    grazie per l’aiuto, credo di dover usare is_front_page() per il mio scopo, però leggendo la guida non ho capito come fare per inserirlo e ottenere la modifica della sezione head solo nell’home page.
    Grazie sono alle prime armi

    Moderatore Guido Scialfa

    (@wido)

    Ciao @gillis86,

    Dunque la cosa è abbastanza semplice, bisogna aggiungere una condizione come la seguente.

    
    <?php if ( is_front_page() ) : ?>
      <!-- Commento: Il tuo Markup visibile solo nella front page -->
    <?php endif; ?>
    
    • Questa risposta è stata modificata 8 anni, 9 mesi fa da Guido Scialfa.
    Chi ha creato la discussione gillis

    (@gillis86)

    ok allora diciamo, all’interno del codice inserisco lo script json,
    e il listato intero lo inserisco nel file header.php giusto?? In che zona devo inserilo? è indifferente?
    Grazie ancora

    Moderatore Guido Scialfa

    (@wido)

    Dipende da come è questo script json e dal listato.

    Se puoi copia entrambi su pastebin così che possiamo vedere esattamente di cosa si tratta, perchè per gli scripts ( javascript ) l’inclusione corretta è diversa ed il listato non so bene che tipo di dati siano.

    Chi ha creato la discussione gillis

    (@gillis86)

    allora lo script che vorrei inserire è il seguente:

    <script type="application/ld+json">
    {
      "@context" : "http://schema.org",
      "@type" : "WebSite",
      "name" : "Your WebSite Name",
      "alternateName" : "An alternative name for your WebSite",
      "url" : "http://www.your-site.com"
    }
    </script>

    secondo le linee guida basta inserirlo nella sezione head del codice dell’home page, il problema che il file header.php contiene metadati validi per tutto il sito, quindi sto cercando un modo per inserirlo solo nell’homepage.
    Grazie

    Moderatore Guido Scialfa

    (@wido)

    Ok, fai in questo modo, così evitiamo anche di modificare il template:

    1. Apri il file functions.php
    2. Alla fine del file aggiungi questo snippet di codice

    
    function my_schema() { 
        if ( ! is_front_page() ) {
            return;
        } ?>
    
        <script type="application/ld+json">
        {
          "@context" : "http://schema.org",
          "@type" : "WebSite",
          "name" : "Your WebSite Name",
          "alternateName" : "An alternative name for your WebSite",
          "url" : "http://www.your-site.com"
        }
        </script><?php 
    }
    add_action( 'wp_head', 'my_schema' );
    
    • Questa risposta è stata modificata 8 anni, 9 mesi fa da Guido Scialfa. Motivo: code missed
    • Questa risposta è stata modificata 8 anni, 9 mesi fa da Guido Scialfa.
    Chi ha creato la discussione gillis

    (@gillis86)

    perfetto ha funzionato, questa è la situazione che ho nella home page (te la metto così mi dici se è ok):

    <script type='application/ld+json'>{"@context":"http:\/\/schema.org","@type":"WebSite","url":"https:\/\/yoga-coaching.org\/","name":"Yoga Coaching","alternateName":"Y-C","potentialAction":{"@type":"SearchAction","target":"https:\/\/yoga-coaching.org\/?s={search_term_string}","query-input":"required name=search_term_string"}}</script>

    Grazie infinite!!!

    Moderatore Guido Scialfa

    (@wido)

    Si, non credo ci siano problemi, importante che tutto il contenuto dello script ( tags apertura e chiusura compresi ) stiano nel posto specificato.

    Attenzione alla chiusura ?> e apertura <?php

    Chi ha creato la discussione gillis

    (@gillis86)

    ok grazie, lo script in questione appare correttamente nella sezione head, precisamente nell’insieme di metadati di Yoast plugin.
    Per quanto riguarda la chiusa del php non ho capito cosa intendi, mastico qualcosa di php ma poco, e infatti nel listato che hai scritto non riesco bene a contestualizzare quella chiusa alla quarta riga e l’apertura alla fine (terz’ultima riga)

    Moderatore Guido Scialfa

    (@wido)

    Semplicemente chiudi e riapri l’esecuzione di codice php, in questo modo invece di scrivere istruzioni aggiuntive per poter stampare i dati dello script ( markup html ) inserisci direttamente il markup.

Stai visualizzando 11 risposte - dal 1 al 11 (di 11 totali)
  • Il topic ‘editare sezione head home page’ è chiuso a nuove risposte.