Show Menu
ARGOMENTI×

Modelli di pubblicazione

Informazioni sui modelli di pubblicazione

Il modello di pubblicazione è la carta di identità del contenuto da pubblicare. Fa riferimento alle risorse utilizzate nel processo di pubblicazione, ovvero:
  • lo schema di dati,
  • il modulo di input,
  • i modelli di trasformazione per ciascun documento di output.

Identificazione di un modello di pubblicazione

Un modello di pubblicazione è identificato dal nome e dallo spazio dei nomi.
La chiave di identificazione di un foglio di stile è una stringa costituita dallo spazio dei nomi e dal nome separati da due punti; ad esempio: cus:newsletter .
In pratica, si consiglia di utilizzare la stessa chiave per lo schema, il modulo e il modello di pubblicazione.

Creazione e configurazione del modello

I modelli di pubblicazione sono memorizzati per impostazione predefinita nel Administration > Configuration > Publication templates nodo. Per creare un nuovo modello, fate clic sul New pulsante sopra l’elenco dei modelli.
Per configurare il modello di pubblicazione, compilare il nome del modello (ovvero la chiave di identificazione costituita dal nome e dallo spazio dei nomi), la relativa etichetta, lo schema di dati e il modulo di input a cui è collegato.
L'etichetta viene visualizzata ogni volta che viene creato il contenuto in base a questo modello di pubblicazione.
L'opzione Controlla stato per convalidare la generazione di contenuto forza un controllo sullo stato "Convalida" delle istanze di contenuto per autorizzare la generazione di file. Per ulteriori informazioni, consulta Pubblicazione .
È necessario aggiungere un modello di trasformazione per ciascun documento di output. Potete creare tutti i modelli di trasformazione necessari.
Il Name of template campo è un'etichetta libera che descrive il tipo di rendering nell'output. Per ciascun modello di trasformazione, le impostazioni di pubblicazione sono disponibili nelle schede.

Rendering

Nella Rendering scheda, scegliete:
  • il tipo di rendering utilizzato per proiettare il documento di output: foglio di stile XSL o modello JavaScript,
  • il formato del documento di output: HTML, testo, XML o RTF,
  • il modello che contiene i dati di costruzione, ad esempio il foglio di stile o il modello JavaScript da utilizzare.

Pubblicazione

La pubblicazione comporta la generazione del documento di output sotto forma di file, se il tipo selezionato è File .
Sono disponibili le seguenti opzioni di pubblicazione:
  • Il set di caratteri di codifica del file di output può essere forzato tramite il Encoding campo. Per impostazione predefinita viene utilizzato il set di caratteri Latin 1 (1252).
  • Questa Multi-file generation opzione attiva una modalità speciale di pubblicazione del documento. Questa opzione consiste nella compilazione di un tag di partizionamento all'inizio di ogni pagina del documento di output. La generazione del contenuto genererà un file per ciascun tag di partizionamento popolato. Questa modalità viene utilizzata per generare mini-siti da un blocco di contenuto. per ulteriori informazioni, vedere Generazione Generazione di più file di più file.
  • Il Location campo contiene il nome del file di output. Il nome può essere composto da variabili per generare un nome di file automatico.
    Una variabile viene compilata con il formato seguente: ** $(<xpath>) , dove <xpath> è il percorso di un campo dello schema dati del modello di pubblicazione.
    Il nome di un file può essere costituito da un campo di tipo data. Per formattare correttamente questo campo, utilizzare la funzione $date-format , utilizzando come parametri il percorso del campo e il formato di output.
    Per impostazione predefinita, il formato di costruzione del nome del file utilizza le variabili nei campi "@name" e "@date":
    ct_$(@name)_$date-format(@date,'%4Y%2M%2D').htm
    
    
    Il nome del file generato sarà simile al seguente: ct_news12_20110901.htm.
    Per ulteriori informazioni sulla generazione di contenuto, consultate Creazione di un'istanza di contenuto.

Consegna

Questa scheda consente di selezionare uno scenario per avviare una distribuzione direttamente sul contenuto. Il contenuto del messaggio e-mail verrà popolato automaticamente in base al formato di output (HTML o Testo).
Per un esempio di creazione della distribuzione basata su un contenuto, vedere Distribuzione di un'istanza di contenuto.

Aggregator

L'aggregazione dei dati da un elenco di script o query consente di arricchire il documento XML con i dati del contenuto. L'obiettivo è quello di completare alcune informazioni cui fanno riferimento i collegamenti o di aggiungere elementi dal database.

Generazione di più file

Per attivare la generazione di più file, selezionare l' Multi-file generation opzione nel modello di pubblicazione. Questa opzione consente di specificare i tag di partizionamento nel foglio di stile per l'inizio di ogni pagina del documento di output. La generazione del contenuto produrrà un file per ciascun tag di partizionamento rilevato.
Il tag di partizionamento da integrare nel foglio di stile è il seguente:
<xsl:comment> #nl:output_replace(<name_of_file>) </xsl:comment> dove <name_of_file> è il nome del file della pagina da generare.
Esempio: ​Generazione multipla di file utilizzando lo schema "cus:book".
Il principio consiste nel generare una pagina principale in cui siano elencati i capitoli, con la possibilità di visualizzare i dettagli del capitolo in una pagina esterna.
Il foglio di stile corrispondente ("cus:book.xsl") è il seguente:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  <xsl:output encoding="ISO-8859-1" method="html"/>

  <!-- Style sheet entry point -->
  <xsl:template match="/book">
    <html>
      <body>
        <h1><xsl:value-of select="@name"/></h1>
        <lu>
          <xsl:for-each select="chapter">
            <li><a target="_blank" href="chapter{@id}.htm"><xsl:value-of select="@name"/></a></li>  
          </xsl:for-each>
       </lu>
      </body>
    </html>
   </xsl:template>
</xsl:stylesheet>

Per generare i dettagli dei capitoli è necessario un secondo foglio di stile ("cus:Chapter.xsl"):
<?xml version="1.0" encoding="ISO-8859-1" ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  <xsl:output encoding="ISO-8859-1" method="html"/>

  <!-- Detail of a chapter -->
  <xsl:template match="chapter">
    <!-- Cut tag -->   
    <xsl:comment> #nl:output_replace($(path)/chapter<xsl:value-of select="@id"/>.htm)</xsl:comment>
    
    <html>
      <body>
        <h1><xsl:value-of select="@name"/></h1>
        <xsl:value-of select="page" disable-output-escaping="yes"/>
      </body>
    </html>
  </xsl:template>

  <!-- Style sheet entry point -->
  <xsl:template match="/book">
    <xsl:apply-templates/>
   </xsl:template>
</xsl:stylesheet>

Il tag di partizionamento viene popolato all’inizio della pagina da includere nel file da generare.
<xsl:comment> #nl:output_replace($(path)/<xsl:value-of select="@id"/>.htm)</xsl:comment>

Il nome del file è costruito con la variabile $(percorso) contenente il percorso di pubblicazione e <xsl:value-of select="@id" /> , che corrisponde all'identificatore del capitolo nel documento di input.
Il modello di pubblicazione deve essere compilato con i due fogli di stile "cus:book.xsl" e "cus:Chapter.xsl".
L' Multi-file generation opzione deve essere attiva nel modello di trasformazione del capitolo:
Il Location campo non viene utilizzato nella generazione di più file, ma è comunque necessario compilare il campo per evitare un errore durante la pubblicazione.