Lataa sovellus nyt ja kokeile 10 päivää ilmaiseksi
Valuutta Valitse kieli Valitse alue

Oma PHP-koodi bluetronix CMS:ssä

Kehittäjäkäyttäjän avulla voit käyttää omaa PHP-koodia CMS-sivun sisällä. Tällöin sivun HTML-koodi ja PHP-koodisi työskentelevät yhdessä. Keskeinen rooli on muuttujalla $LayoutHTML: se sisältää sivun renderoimisprosessin aikana tällä hetkellä luodun sivun HTML-koodin. PHP:n avulla voit etsiä, muokata ja korvata sisältöä siellä.

Oma PHP-koodi tarvitsee kehittäjäkäyttäjän oikeudet bluetronix CMS:ssä. Jos sinulla ei vielä ole kehittäjäkäyttäjän oikeuksia, voit hakea niitä erikseen.

Avaa sivun PHP-koodi

Avaa halutulla sivulla PHP Code, jotta voit muokata sivun PHP-koodia.

Älä käytä ylimääräisiä PHP-tageja

CMS suorittaa PHP-koodin jo PHP-koodina. Siksi PHP-koodieditorissa ei saa käyttää ylimääräisiä PHP-tageja. Tämä kirjoitustapa ei ole tarpeen siellä:

<?php print "Hello World"; ?>

Kirjoita PHP-lauseesi suoraan näin:

print "Hello World";

Pysäytä PHP-suoritus exit:llä

Voit testata syöttämällä seuraavat lauseet, tallentamalla ne ja sitten lataamalla sivun uudelleen:

print "Hello World";
exit();

Tässä esimerkissä näytetään vain Hello World. Komennolla exit(); pysäytät PHP-suorituksen tässä kohdassa.

Komento exit(); pysäyttää myös jatkossa CMS-sivun renderöintiprosessin. Otsikko, varsinaiset sivusisällöt, alatunniste ja jälkikäsittelyvaiheet eivät enää suoriteta.

PHP-tuloste tavallisella sivulla

Jos poistat exit(); ja käytät vain seuraavaa lausetta, renderöintiprosessi jatkuu normaalisti:

print "Hello World";

PHP tulostaa ensin Hello World. Sen jälkeen varsinaista CMS-sivua luodaan edelleen, mukaan lukien otsikko, sivusisältö ja alatunniste. Muutosten tekemiseen suoraan HTML-sivun sisällä olisi kuitenkin parasta käyttää $LayoutHTML:tä.

Muokkaa HTML:ää ja PHP:tä erikseen

bluetronix CMS:ssä voit hallita sivun HTML-koodia ja PHP-koodia erikseen. Näin HTML-rakenne pysyy muokattavana editorissa, kun taas ohjelmointilogiikka säilyy PHP-osiossa.

Määritä omat paikkamerkit HTML:ssä

Määritä HTML-koodissa paikkamerkki, jonka PHP-koodisi korvataan myöhemmin. Yksinkertainen esimerkki on:

__MyText__

Käytä omille paikkamerkeille englanninkielisiä nimiä, myös saksankielisillä verkkosivuilla. Näin nimitys pysyy kansainvälisesti ymmärrettävänä ja yhdenmukaisena.

Lisäksi mahdollisia nimityksiä ovat:

__CustomerName__
__ProductPrice__
__CurrentDate__

Korvaa paikkamerkit $LayoutHTML:llä

Käyttämällä str_replace() voit etsiä paikkamerkin nykyisestä HTML-koodista ja korvata sen haluamallasi sisällöllä:

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

CMS etsii $LayoutHTML:stä __MyText__ ja korvataan paikkamerkin Mein Text.

Yhdistä HTML ja paikkamerkit

Voit käyttää paikkamerkkiä tavallisessa HTML-rakenteessasi. Syötä esimerkiksi seuraava koodi HTML-alueeseen:

<h1>__MyText__</h1>

PHP-alueella lisäät korvauksen:

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

Renderöintiprosessin aikana siitä syntyy:

<h1>Meine Überschrift</h1>

Useita paikkamerkkejä yhdessä sivuosassa

Sama periaate toimii laajemmissa HTML-alueissa. Voit esimerkiksi määrittää otsikon ja kuvauksen erikseen paikkamerkeiksi:

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

PHP-koodissa asetat molemmat sisällöt itsenäisesti:

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

Valmis HTML-koodi sisältää sitten käytetyt tekstit paikkamerkkien sijasta:

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

Erota HTML-rakenne ja PHP-logiikka mahdollisimman hyvin

Teknisesti voit suoraan lisätä kokonaisia HTML-rakenteita PHP:llä $LayoutHTML:ään:

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

Kuitenkin suurten sisältöjen osalta on järkevää säilyttää HTML muokattavana rakenteena HTML-alueella ja käyttää paikkamerkkejä. Esimerkki HTML-koodista:

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

Liittyvä PHP-koodi korvasi vain tarvitut arvot:

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

Loppuasiakas voi näin muuttaa väliä, muokata otsikoita, siirtää HTML-alueita, säätää ulkoasuja ja muokata sivuosiota normaalin CMS-editorin kautta ilman, että PHP-ohjelmointilogiikkaa tarvitsee muuttaa.

Määritä omat PHP-funktiot

Voit luoda omia toimintoja PHP-koodissa. Esimerkiksi:

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

Varmista, että toimintoa ei määritellä useita kertoja sivuhausta. Tämä voi tapahtua, jos sama toiminnon nimi esiintyy samanaikaisesti pääsivulla, otsikossa, liittämässä moduulissa, sivuosiolla tai alaluetteloinnissa.

Valitse omille PHP-toimintoille mahdollisimman selkeitä nimiä. Kaksinkertainen toiminnon määrittely aiheuttaa PHP:ssä virheen.

Projektikohtaiset toiminnon nimet voivat näyttää tältä:

function MyProjectCreateCustomerText() {
   return "Customer";
}

Tarkista olemassa olevat funktiot ennen funktion määrittelyä

Vaihtoehtoisesti voit tarkistaa function_exists():lla, onko kyseinen toiminto jo määritelty:

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

Käytä bluetronix PHP-funktioita

PHP-koodialueella voit myös käyttää bluetronix CMS:n tarjoamia PHP-toimintoja. Esimerkki on sähköpostin lähettäminen bluetronix SMTP-järjestelmän kautta BlueSMTPMail():llä:

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

Tarvittavat parametrit voit määrittää PHP-koodissasi, esimerkiksi:

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

Sen jälkeen voit käyttää keskeistä toimintoa sähköpostin lähettämiseen. Täydellistä kutsua varten myös muut tarvitsemat parametrit on asetettava oikein. Näin perustoimintoja, kuten SMTP-lähetys, ei tarvitse ohjelmoida uudelleen.

Yhteenveto

Oma PHP-koodi suoritetaan suoraan bluetronix CMS:ssä; lisä-PHP-tageja ei tarvita PHP-koodia -editorissa. $LayoutHTML sisältää nykyisesti luodun sivun HTML-koodin ja mahdollistaa omien paikkamerkkien korvaamisen dynaamisilla sisällöillä.

Luo HTML-rakenne mahdollisimman paljon HTML-alueella ja korvaa paikkamerkit PHP:n avulla. Näin loppukäyttäjä voi jatkossakin muokata asettelua normaalilla CMS-editorilla, kun ohjelmointilogiikka pysyy eristyksissä.

UKK

mitä asiakkaat meiltä usein kysyvät

Tarvitsenko kehittäjäkäynnin omaan PHP-koodiin?

Kyllä. Käyttääksesi omaa PHP-koodia CMS-sivulla, tarvitset kehittäjäkäynnin bluetronix CMS:ään.

Mistä löydän esimerkin PHP-koodin?

Avaa esimerkkisivu kohtaan Modulit → PHP Esimerkki ja valitse PHP Koodi.

Pitääkö PHP-koodieditorissa kirjoittaa <?php ja ?>?

Ei. Editorissa suoritetaan jo tallennetut komennot PHP-koodina. Kirjoitat komennot suoraan, esimerkiksi print "Hello World";.

Mitä tapahtuu, jos käytän exit;?

exit; lopettaa PHP-suorittamisen tässä vaiheessa. Tällöin myös CMS-sivun renderöintiprosessi pysähtyy; otsikkoa, sivun sisältöä ja alatunnistetta ei enää luoda.

Mihin $LayoutHTML:ää käytetään?

$LayoutHTML sisältää renderöintiprosessin aikana tällä hetkellä tuotetun sivun HTML-koodin. PHP:n avulla voit etsiä sieltä sisältöä ja esimerkiksi korvata omat paikkamerkit str_replace():llä.

Kuinka lisään dynaamisia sisältöjä HTML:ään?

Käytä HTML-koodissa esimerkiksi __MyText__:a ja korvaa tämä paikkamerkki PHP-koodissa str_replace():llä $LayoutHTML:n sisällä.

Voinko yhdistää PHP-paikkamerkit automaattiseen käännökseen?

Kyllä. Voit käyttää yhdessä PHP-paikkamerkkejä ja käännösmerkkejä, kuten Our Services. Käännös tapahtuu myöhemmin renderöintiprosessin aikana.

Miksi pitäisi pitää HTML ja PHP eristyksissä?

Näin loppukäyttäjä voi myöhemmin muokata HTML-asettelua normaalilla editorilla, kun ohjelmointilogiikka pysyy eristyksissä PHP-alueella.

Kuinka välttää kaksinkertaisesti määriteltyjä PHP-toimintoja?

Käytä ainutlaatuisia toimintonimiä. Voit lisäksi tarkistaa ennen määrittelyä, onko toiminto jo olemassa, käyttämällä function_exists():a.

Voinko käyttää olemassa olevia bluetronix PHP-toimintoja?

Kyllä. PHP-koodialueella on myös CMS-toimintoja käytettävissä, esimerkiksi BlueSMTPMail() sähköpostin lähettämiseen. Vaaditut parametrit on asetettava asianmukaisesti.

CMS