Scarica l'app ora e prova gratuitamente per 10 giorni
Valuta Seleziona la lingua Seleziona regione

Codice PHP personale nel bluetronix CMS

Con un accesso sviluppatore puoi utilizzare codice PHP personale all'interno di una pagina CMS. Qui il codice HTML della pagina e il tuo codice PHP lavorano insieme. Un ruolo centrale è svolto dalla variabile $LayoutHTML: contiene il codice HTML della pagina attualmente generata durante il processo di rendering del sito. Con PHP puoi cercare, modificare e sostituire contenuti all'interno.

Per utilizzare codice PHP personale hai bisogno di un accesso sviluppatore al bluetronix CMS. Se non possiedi ancora un accesso sviluppatore, puoi richiederlo separatamente.

Aprire il codice PHP di una pagina

Apri sulla pagina desiderata PHP Code, per modificare il codice PHP della pagina.

Non utilizzare tag PHP aggiuntivi

Il codice PHP viene già eseguito dal CMS come codice PHP. Pertanto, non puoi utilizzare tag PHP aggiuntivi nell'editor del codice PHP. Questa sintassi non è necessaria:

<?php print "Hello World"; ?>

Scrivi invece direttamente la tua istruzione PHP:

print "Hello World";

Terminare l'esecuzione PHP con exit

Per testare, puoi inserire le seguenti istruzioni, salvarle e poi ricaricare la pagina:

print "Hello World";
exit();

In questo esempio viene visualizzato solo Hello World. Con exit(); termini l'esecuzione PHP in questo punto.

Con exit(); si interrompe anche il successivo processo di rendering del sito CMS. Intestazioni, contenuto della pagina, footer e ulteriori passi di elaborazione non vengono più eseguiti.

Uscita PHP all'interno della pagina normale

Se rimuovi exit(); e utilizzi solo la seguente istruzione, il processo di rendering continua normalmente:

print "Hello World";

PHP prima restituisce Hello World. Successivamente il sito CMS viene generato ulteriormente, inclusi intestazione, contenuto della pagina e footer. Tuttavia, per modifiche direttamente all'interno della pagina HTML dovresti lavorare il più possibile con $LayoutHTML.

Modificare separatamente HTML e PHP

Nel bluetronix CMS puoi gestire il codice HTML e il codice PHP di una pagina separatamente. In questo modo la struttura HTML rimane modificabile nell'editor, mentre la logica del programma è conservata nell'area PHP.

Definire i propri segnaposto in HTML

Definisci nel codice HTML un segnaposto che il tuo codice PHP dovrà sostituire in seguito. Un esempio semplice è:

__MyText__

Usa nomi inglesi per i tuoi segnaposti, anche su siti web di lingua tedesca. In questo modo, la denominazione rimane comprensibile e uniforme a livello internazionale.

Altre possibili denominazioni sono:

__CustomerName__
__ProductPrice__
__CurrentDate__

Sostituire i segnaposto con $LayoutHTML

Con str_replace() puoi cercare il segnaposto nel codice HTML attuale e sostituirlo con il contenuto desiderato:

$LayoutHTML = str_replace("__MyText__","Mein Text",$LayoutHTML);

Il CMS cerca in $LayoutHTML __MyText__ e sostituisce il segnaposto con Il mio testo.

Combinare HTML e segnaposto

Puoi utilizzare il segnaposto all'interno della tua normale struttura HTML. Ad esempio, inserisci il seguente codice nell'area HTML:

<h1>__MyText__</h1>

Nell'area PHP aggiungi la sostituzione:

$LayoutHTML = str_replace("__MyText__","Meine Überschrift",$LayoutHTML);

Durante il processo di rendering, si ottiene:

<h1>Meine Überschrift</h1>

Più segnaposto in una sezione della pagina

Lo stesso principio funziona in aree HTML più ampie. Puoi definire, ad esempio, titolo e descrizione come segnaposti separati:

<section>
   <div class="container">
      <h2>__MyHeadline__</h2>
      <p>__MyDescription__</p>
   </div>
</section>

Nel codice PHP imposti entrambi i contenuti in modo indipendente:

$LayoutHTML = str_replace("__MyHeadline__","Unsere Leistungen",$LayoutHTML);
$LayoutHTML = str_replace("__MyDescription__","Hier finden Sie eine Übersicht unserer Leistungen.",$LayoutHTML);

Il codice HTML finale conterrà i testi utilizzati al posto dei due segnaposti:

<section>
   <div class="container">
      <h2>Unsere Leistungen</h2>
      <p>Hier finden Sie eine Übersicht unserer Leistungen.</p>
   </div>
</section>

Separare il più possibile la struttura HTML e la logica PHP

Tecnicamente, puoi inserire strutture HTML complete direttamente con PHP in $LayoutHTML:

$LayoutHTML = str_replace("__MyContent__","<h2>Meine Überschrift</h2><p>Mein Text</p>",$LayoutHTML);

Per contenuti più grandi, però, è utile mantenere l'HTML come struttura modificabile nell'area HTML e lavorare con i segnaposti. Ecco un esempio di codice HTML:

<section>
   <h2>__MyHeadline__</h2>
   <p>__MyText__</p>
</section>

Il codice PHP corrispondente sostituisce solo i valori necessari:

$LayoutHTML = str_replace("__MyHeadline__","Meine Überschrift",$LayoutHTML);
$LayoutHTML = str_replace("__MyText__","Mein Text",$LayoutHTML);

Il cliente finale può quindi modificare spazi, modificare titoli, spostare aree HTML, adattare design e modificare sezioni della pagina utilizzando l'editor CMS normale, senza dover cambiare la logica di programmazione PHP.

Definire le proprie funzioni PHP

All'interno del codice PHP puoi creare funzioni proprie. Ad esempio:

function MyExampleFunction() {
   return "Hello World";
}

Fai attenzione a non definire più volte una funzione durante una chiamata di pagina. Questo può succedere se lo stesso nome di funzione viene utilizzato contemporaneamente nella pagina principale, nell'intestazione, in un modulo incorporato, in una sezione della pagina o nel piè di pagina.

Scegli nomi il più possibile univoci per le tue funzioni PHP. Una definizione duplice di funzione porta a un errore in PHP.

Un nome di funzione specifico per il progetto potrebbe apparire così:

function MyProjectCreateCustomerText() {
   return "Customer";
}

Controllare le funzioni esistenti prima di definire una funzione

In alternativa, puoi controllare con function_exists() se la funzione in questione è già stata definita:

if(!function_exists("MyProjectCreateCustomerText")) {
   function MyProjectCreateCustomerText() {
      return "Customer";
   }
}

Utilizzare le funzioni PHP di bluetronix

Nell'area del codice PHP puoi anche utilizzare le funzioni PHP fornite dal CMS bluetronix. Un esempio è l'invio di email attraverso il sistema SMTP di bluetronix con BlueSMTPMail():

BlueSMTPMail($MailType,$MailAccount,$SMTPType,$From,$To,$NewsletterTo,$Subject,$TextContent,$HTMLContent,$Attachments,$ImageInMail,$MailPlaceholderReplacement,$FormEntry);

Puoi impostare i parametri necessari all'interno del tuo codice PHP, ad esempio:

$From        = "info@example.com";
$To          = "customer@example.com";
$Subject     = "Test E-Mail";
$TextContent = "Hello World";

Successivamente, puoi utilizzare la funzione centrale per l'invio di email. Per una chiamata completa, anche gli altri parametri necessari devono essere impostati correttamente. In questo modo, non è necessario riprogrammare da zero funzioni CMS di base come l'invio SMTP.

Riepilogo

Il codice PHP proprio viene eseguito direttamente dal CMS bluetronix; tag PHP aggiuntivi non sono necessari nell'editor PHP Code. $LayoutHTML contiene il codice HTML della pagina attualmente generata e ti consente di sostituire i tuoi segnaposti con contenuti dinamici.

Progetta la tua struttura HTML preferibilmente nell'area HTML e sostituisci i segnaposti tramite PHP. In questo modo, il cliente finale potrà continuare a modificare il layout con l'editor CMS normale, mentre la logica di programmazione rimarrà separata.

FAQ

cosa ci chiedono spesso i clienti

Ho bisogno di un accesso sviluppatore per il mio codice PHP?

Sì. Per utilizzare il tuo codice PHP all'interno di una pagina CMS, hai bisogno di un accesso sviluppatore al CMS bluetronix.

Dove posso trovare il codice PHP dell'esempio?

Apri la pagina di esempio sotto Moduli → Esempio PHP e seleziona Codice PHP.

Devo inserire <?php e ?> nell'editor del codice PHP?

No. L'editor esegue già le istruzioni caricate come codice PHP. Scrivi le tue istruzioni direttamente, ad esempio print "Hello World";.

Cosa succede se uso exit;?

exit; termina l'esecuzione PHP in quel punto. Di conseguenza, si ferma anche il processo di rendering della pagina CMS; intestazione, contenuto della pagina e piè di pagina non verranno più generati.

A cosa serve $LayoutHTML?

$LayoutHTML contiene il codice HTML della pagina attualmente generata durante il processo di rendering. Con PHP puoi cercare contenuti al suo interno e ad esempio sostituire i tuoi segnaposto tramite str_replace().

Come inserisco contenuti dinamici nel mio HTML?

Inserisci nel codice HTML ad esempio __MyText__ e sostituisci questo segnaposto nel codice PHP con str_replace() all'interno di $LayoutHTML.

Posso combinare segnaposto PHP con la traduzione automatica?

Sì. Puoi utilizzare segnaposto PHP e marcatori di traduzione come I Nostri Servizi insieme. La traduzione avviene successivamente durante il processo di rendering.

Perché dovrei mantenere separati HTML e PHP?

In questo modo, il cliente finale può modificare il layout HTML successivamente con l'editor normale, mentre la logica di programmazione rimane separata nella parte PHP.

Come evito di definire funzioni PHP duplicate?

Usa nomi di funzioni univoci. Puoi anche controllare con function_exists() se una funzione esiste già prima di definirla.

Posso utilizzare funzioni PHP bluetronix esistenti?

Sì. Nel settore del codice PHP sono disponibili anche funzioni CMS, come BlueSMTPMail() per l'invio di e-mail. I parametri necessari devono essere impostati di conseguenza.

CMS