PHP-koodi ja $LayoutHTML bluetronix CMS:ssä käytetään.
Kehittäjäkäyttäjän avulla voit muokata CMS-sivujesi PHP-koodia itse. Tässä opas artikkelissa opit, miten suoritat PHP-lauseita, muokkaat HTML-sisältöä $LayoutHTML:n kautta ja käytät omia funktioita sekä CMS:n integroituja toimintoja.
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.