Κατεβάστε την εφαρμογή τώρα και δοκιμάστε δωρεάν για 10 ημέρες
Νόμισμα Επιλέξτε γλώσσα Επιλέξτε περιοχή

Χρήση κώδικα PHP και $LayoutHTML στο bluetronix CMS

Με μια πρόσβαση προγραμματιστή, μπορείς να επεξεργαστείς τον κώδικα PHP των σελίδων CMS σου. Σε αυτό το tutorial θα μάθεις πώς να εκτελείς PHP δηλώσεις, να αλλάζεις HTML περιεχόμενο μέσω του $LayoutHTML και να χρησιμοποιείς τις δικές σου λειτουργίες και τις ενσωματωμένες λειτουργίες του CMS.

Ιδιαίτερος κωδικός PHP στο cms bluetronix

Με έναν αναπτυξιακό λογαριασμό μπορείς να χρησιμοποιήσεις δικό σου PHP κώδικα μέσα σε μια σελίδα CMS. Ο κώδικας HTML της σελίδας και ο PHP κώδικάς σου συνεργάζονται. Μια κεντρική μεταβλητή είναι η $LayoutHTML: περιέχει τον κωδικό HTML της τρέχουσας σελίδας κατά τη διάρκεια της διαδικασίας απόδοσης της σελίδας. Με το PHP μπορείς να αναζητήσεις, να τροποποιήσεις και να αντικαταστήσεις περιεχόμενο σε αυτό.

Για τον δικό σου κώδικα PHP χρειάζεσαι έναν αναπτυξιακό λογαριασμό για το cms bluetronix. Εάν δεν έχεις αναπτυξιακό λογαριασμό, μπορείς να τον αιτηθείς ξεχωριστά.

Άνοιγμα του κωδικού PHP μιας σελίδας

Άνοιξε στη σελίδα που θέλεις PHP Code για να επεξεργαστείς τον κωδικό PHP της σελίδας.

Μη χρησιμοποιείτε επιπλέον PHP ετικέτες

Ο κωδικός PHP εκτελείται ήδη από το CMS ως κώδικας PHP. Συνεπώς, δεν επιτρέπεται να χρησιμοποιείς επιπλέον PHP ετικέτες στον επεξεργαστή κώδικα PHP. Αυτή η σύνταξη δεν είναι απαραίτητη εκεί:

<?php print "Hello World"; ?>

Γράψε τη δήλωση PHP σου απευθείας:

print "Hello World";

Τερματισμός εκτέλεσης PHP με exit

Για δοκιμή, μπορείς να εισάγεις τις εξής δηλώσεις, να τις αποθηκεύσεις και στη συνέχεια να φορτώσεις ξανά τη σελίδα:

print "Hello World";
exit();

Σε αυτό το παράδειγμα εμφανίζεται μόνο Hello World. Με exit(); τερματίζεις την εκτέλεση PHP σε αυτό το σημείο.

Μέσω του exit(); τερματίζεται επίσης η περαιτέρω διαδικασία απόδοσης της ιστοσελίδας CMS. Οι κεφαλίδες, η πραγματική περιεχόμενο σελίδας, το υποσέλιδο και οι επόμενες διαδικασίες δεν εκτελούνται.

Έξοδος PHP εντός της κανονικής σελίδας

Εάν αφαιρέσεις το exit(); και χρησιμοποιήσεις μόνο την εξής δήλωση, η διαδικασία απόδοσης συνεχίζεται κανονικά:

print "Hello World";

Το PHP επιστρέφει πρώτα το Hello World. Στη συνέχεια, η πραγματική σελίδα CMS συνεχίζει να δημιουργείται, συμπεριλαμβανομένου του υποσέλιδου, του περιεχομένου της σελίδας και του υποσέλιδου. Για αλλαγές απευθείας μέσα στη σελίδα HTML, θα πρέπει ωστόσο να εργάζεσαι όσο το δυνατόν περισσότερο με το $LayoutHTML.

Επεξεργασία HTML και PHP χωριστά

Στο cms bluetronix μπορείς να συντηρείς τον κωδικό HTML και τον κωδικό PHP μιας σελίδας χωριστά. Έτσι η δομή HTML παραμένει επεξεργάσιμη στον επεξεργαστή, ενώ η λογική προγράμματος αποθηκεύεται στην περιοχή PHP.

Ορισμός δικών σας placeholders στο HTML

Ορίστε έναν χώρο στον κώδικα HTML που θα αντικατασταθεί αργότερα από τον κώδικα PHP σας. Ένα απλό παράδειγμα είναι:

__MyText__

Χρησιμοποιήστε αγγλικές ονομασίες για δικούς σας χώρους, ακόμα και σε γερμανόφωνες ιστοσελίδες. Έτσι η ονοματολογία παραμένει διεθνώς κατανοητή και ομοιόμορφη.

Άλλες πιθανές ονομασίες είναι:

__CustomerName__
__ProductPrice__
__CurrentDate__

Αντικατάσταση των placeholders με $LayoutHTML

Με str_replace() μπορείτε να αναζητήσετε τον χώρο στον τρέχοντα κώδικα HTML και να τον αντικαταστήσετε με το επιθυμητό περιεχόμενο:

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

Το CMS αναζητά σε $LayoutHTML το __MyText__ και αντικαθιστά τον χώρο με Το Κείμενό Μου.

Συνδυασμός HTML και placeholders

Μπορείτε να χρησιμοποιήσετε τον χώρο μέσα στη φυσιολογική σας δομή HTML. Καταχωρίστε για παράδειγμα τον ακόλουθο κώδικα στην περιοχή HTML:

<h1>__MyText__</h1>

Στην περιοχή PHP προσθέτετε την αντικατάσταση:

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

Κατά τη διαδικασία απόδοσης προκύπτει:

<h1>Meine Überschrift</h1>

Πολλαπλά placeholders σε ένα τμήμα σελίδας

Η ίδια αρχή ισχύει και σε μεγαλύτερες περιοχές HTML. Μπορείτε για παράδειγμα να καθορίσετε χωριστά τον τίτλο και την περιγραφή ως χώρους:

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

Στον κώδικα PHP ορίζετε και τους δύο περιεχόμενους ανεξάρτητα ο ένας από τον άλλο:

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

Ο τελικός κώδικας HTML θα περιέχει στη συνέχεια τα κείμενα που έχουν χρησιμοποιηθεί αντί για τους δύο χώρους:

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

Όσο το δυνατόν περισσότερη διαχωρισμός της δομής HTML και της λογικής PHP

Τεχνικά, μπορείτε να ενσωματώσετε ολόκληρες δομές HTML απευθείας με PHP στο $LayoutHTML:

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

Για μεγαλύτερα περιεχόμενα, είναι όμως λογικό να διατηρήσετε το HTML ως επεξεργάσιμη δομή στην περιοχή HTML και να εργαστείτε με χώρους. Παράδειγμα για τον κώδικα HTML:

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

Ο αντίστοιχος κώδικας PHP αντικαθιστά μόνο τις απαραίτητες τιμές:

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

Ο τελικός πελάτης μπορεί έτσι μέσω του κανονικού επεξεργαστή CMS να αλλάξει τις αποστάσεις, να επεξεργαστεί τους τίτλους, να μετακινήσει περιοχές HTML, να προσαρμόσει το σχέδιο και να επεξεργαστεί τμήματα σελίδας, χωρίς να χρειάζεται να αλλάξει τη λογική προγραμματισμού PHP.

Ορισμός δικών σας συναρτήσεων PHP

Μπορείτε να δημιουργήσετε δικές σας συναρτήσεις μέσα στον κώδικα PHP. Για παράδειγμα:

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

Βεβαιωθείτε ότι μια συνάρτηση δεν ορίζεται πολλές φορές κατά τη διάρκεια ενός αιτήματος σελίδας. Αυτό μπορεί να συμβεί αν το ίδιο όνομα συνάρτησης υπάρχει ταυτόχρονα στην κύρια σελίδα, στην κεφαλίδα, σε μια ενσωματωμένη μονάδα, σε ένα τμήμα σελίδας ή στην υποσέλιδα.

Επιλέξτε όσο το δυνατόν πιο μοναδικά ονόματα για τις δικές σας συναρτήσεις PHP. Μια διπλή ορισμός συνάρτησης οδηγεί σε σφάλμα στο PHP.

Ένα όνομα συνάρτησης που είναι ειδικά για το έργο θα μπορούσε να είναι έτσι:

function MyProjectCreateCustomerText() {
   return "Customer";
}

Ελέγξτε αν υπάρχουν υπάρχουσες συναρτήσεις πριν από τον ορισμό μιας συνάρτησης

Εναλλακτικά, μπορείτε να ελέγξετε με το function_exists() αν η σχετική συνάρτηση έχει ήδη οριστεί:

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

Χρήση των συναρτήσεων PHP του bluetronix

Στην περιοχή του κώδικα PHP μπορείτε επίσης να χρησιμοποιήσετε τις παρέχουσες συναρτήσεις PHP από το CMS bluetronix. Ένα παράδειγμα είναι η αποστολή email μέσω του συστήματος SMTP του bluetronix με το BlueSMTPMail():

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

Μπορείτε να ορίσετε τις απαραίτητες παραμέτρους μέσα στον κώδικα PHP σας, για παράδειγμα:

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

Στη συνέχεια μπορείτε να χρησιμοποιήσετε τη κεντρική συνάρτηση για την αποστολή email. Για μια πλήρη κλήση, πρέπει επίσης να οριστούν και οι άλλες απαιτούμενες παράμετροι με κατάλληλο τρόπο. Έτσι, δεν χρειάζεται να προγραμματίσετε ξανά βασικές λειτουργίες CMS όπως η αποστολή SMTP.

Περίληψη

Ο δικός σας κώδικας PHP εκτελείται απευθείας από το CMS bluetronix; πρόσθετες ετικέτες PHP δεν είναι απαραίτητες στον επεξεργαστή PHP Code. $LayoutHTML περιέχει τον κώδικα HTML της τρέχουσας σελίδας και σας επιτρέπει να αντικαταστήσετε τους δικούς σας χώρους με δυναμικό περιεχόμενο.

Δημιουργήστε τη δομή HTML σας όσο το δυνατόν περισσότερο στην περιοχή HTML και αντικαταστήστε τους χώρους μέσω PHP. Έτσι, ο τελικός πελάτης μπορεί να επεξεργάζεται το σχέδιο αργότερα με τον κανονικό επεξεργαστή CMS, ενώ η λογική προγραμματισμού παραμένει διαχωρισμένη.

Συχνές Ερωτήσεις

τι ρωτούν συχνά οι πελάτες μας

Χρειάζομαι πρόσβαση προγραμματιστή για τον δικό μου PHP κώδικα;

Ναι. Για να χρησιμοποιήσεις τον δικό σου PHP κώδικα μέσα σε μια σελίδα CMS, χρειάζεσαι πρόσβαση προγραμματιστή στο bluetronix CMS.

Πού μπορώ να βρω τον PHP κώδικα του παραδείγματος;

Άνοιξε τη σελίδα παραδείγματος κάτω από Modules → PHP Example και επέλεξε PHP Code.

Πρέπει να εισάγω <?php και ?> στον επεξεργαστή PHP κώδικα;

Όχι. Ο επεξεργαστής εκτελεί ήδη τις αποθηκευμένες εντολές ως PHP κώδικα. Γράφεις τις εντολές σου απευθείας, για παράδειγμα print "Hello World";.

Τι συμβαίνει αν χρησιμοποιήσω exit;

Η εντολή exit σταματά την εκτέλεση του PHP σε αυτό το σημείο. Επομένως, σταματά επίσης η διαδικασία απόδοσης της CMS σελίδας; οι κεφαλίδες, το περιεχόμενο των σελίδων και το υποσέλιδο δεν θα παραχθούν μετά.

Για ποιο σκοπό χρησιμοποιείται το $LayoutHTML;

Το $LayoutHTML περιέχει κατά τη διάρκεια της διαδικασίας απόδοσης τον HTML κώδικα της σελίδας που δημιουργείται αυτή τη στιγμή. Με το PHP μπορείς να αναζητήσεις περιεχόμενα και να αντικαταστήσεις δικούς σου χώρους με str_replace().

Πώς μπορώ να προσθέσω δυναμικά περιεχόμενα στο HTML μου;

Τοποθέτησε, για παράδειγμα, __MyText__ στον HTML κώδικα και αντικατάστησε αυτόν τον χώρο στον PHP κώδικα με str_replace() μέσα στο $LayoutHTML.

Μπορώ να συνδυάσω τους χώρους PHP με αυτόματη μετάφραση;

Ναι. Μπορείς να χρησιμοποιήσεις χώρους PHP και ετικέτες μετάφρασης όπως Our Services από κοινού. Η μετάφραση θα γίνει αργότερα κατά τη διάρκεια της διαδικασίας απόδοσης.

Γιατί πρέπει να κρατώ το HTML και το PHP ξεχωριστά;

Έτσι, ο τελικός πελάτης μπορεί να επεξεργαστεί το HTML layout αργότερα με τον κανονικό επεξεργαστή, ενώ η προγραμματιστική λογική παραμένει ξεχωριστά στην περιοχή PHP.

Πώς μπορώ να αποφύγω τις διπλά καθορισμένες PHP συναρτήσεις;

Χρησιμοποίησε μοναδικά ονόματα συναρτήσεων. Μπορείς επίσης να ελέγξεις με function_exists() πριν από έναν ορισμό αν μια συνάρτηση υπάρχει ήδη.

Μπορώ να χρησιμοποιήσω υπάρχουσες PHP συναρτήσεις του bluetronix;

Ναι. Στον τομέα του PHP κώδικα είναι διαθέσιμες και συναρτήσεις CMS, για παράδειγμα BlueSMTPMail() για την αποστολή email. Πρέπει να ορίσεις τις απαιτούμενες παραμέτρους ανάλογα.

CMS