Διαφήμιση
Ένα από τα πλεονεκτήματα της χρήσης του WordPress είναι η απόλυτη ευελιξία του. Δεν είναι μόνο για αναρτήσεις και σελίδες: οι προσαρμοσμένοι τύποι δημοσιεύσεων μπορούν να επεκτείνουν τις βασικές λειτουργίες σε σχεδόν οτιδήποτε.
Ας ρίξουμε μια ματιά σήμερα σε αυτό που θα μπορούσατε να κάνετε με τους προσαρμοσμένους τύπους αναρτήσεων, καθώς και ένα γρήγορο πρακτικό παράδειγμα για τη δημιουργία μιας λίστας συμβάντων χρησιμοποιώντας έναν προσαρμοσμένο τύπο ανάρτησης Εκδήλωση.
Σημείωση: Αυτό το σεμινάριο πρέπει να εξεταστεί μόνο για εκπαιδευτικούς σκοπούς, ώστε να μπορείτε να μάθετε τον κώδικα που χρησιμοποιείται για τη δημιουργία προσαρμοσμένων τύπων δημοσιεύσεων. Εάν θέλετε πραγματικά μια εξαιρετική λίστα συμβάντων για τον ιστότοπό σας στο WordPress, δοκιμάστε Το Ημερολόγιο Εκδηλώσεων, το οποίο είναι καλά ανεπτυγμένο και δωρεάν.
Τι είναι οι προσαρμοσμένοι τύποι δημοσιεύσεων στο WordPress;
Συνήθως, ένας ιστότοπος WordPress αποτελείται από δύο τύπους περιεχομένου: αναρτήσεις ιστολογίου με ημερομηνία και στατικές σελίδες. Οι περισσότεροι από εμάς που έχουμε
δημιουργήστε ένα blog WordPress Ρυθμίστε το ιστολόγιό σας με WordPress: Ο απόλυτος οδηγόςΘέλετε να ξεκινήσετε το δικό σας blog αλλά δεν ξέρετε πώς; Κοιτάξτε στο WordPress, την πιο ισχυρή πλατφόρμα blogging που διατίθεται σήμερα. Διαβάστε περισσότερα είναι εξοικειωμένοι με το γεγονός ότι οι σελίδες πρέπει να χρησιμοποιούνται για πράγματα όπως "Σχετικά με εμένα" ή "Στοιχεία επικοινωνίας", ενώ οι τακτικές δημοσιεύσεις μεταβαίνουν στο ιστολόγιό σας.Αλλά πέρα από αυτό, τι γίνεται αν θέλετε να προσθέσετε ένα άλλο ειδικό περιεχόμενο που δεν ταιριάζει πραγματικά με τη χρονολογική σειρά του ιστολογίου και σίγουρα δεν είναι στατικό; Εκεί μπαίνουν προσαρμοσμένοι τύποι δημοσιεύσεων.
Ένα αρκετά κοινό αίτημα για ιστότοπους κλαμπ ή ομάδας είναι να υπάρχει κάποιο είδος ημερολογίου εκδηλώσεων. Μία λύση που θα μπορούσε να εφαρμοστεί είναι να δημιουργήσετε μια ξεχωριστή κατηγορία δημοσιεύσεων εκδηλώσεων. Το πρόβλημα με αυτό είναι ότι θα εμφανίζονται στο κύριο χρονοδιάγραμμα του ιστολογίου και θα έπρεπε πραγματικά να διαχωρίσουμε πλήρως τις δύο έννοιες.
Για το σκοπό αυτό, ας δημιουργήσουμε έναν νέο τύπο ανάρτησης που ονομάζεται συμβάν, ο οποίος θα έχει τη δική του ξεχωριστή ενότητα της διεπαφής διαχειριστή.
Πώς να δημιουργήσετε έναν προσαρμοσμένο τύπο ανάρτησης στο WordPress
Αυτό θα το κάνουμε προσαρμόζοντας άμεσα τα αρχεία θεμάτων σας. Θα μπορούσατε να επιτύχετε το ίδιο αποτέλεσμα μέσω ενός πρόσθετου, αλλά για να δείξετε την ιδέα και την πρακτική, είναι πιο εύκολο να τα γράψετε απευθείας. Εάν δεν το κάνετε άνετα, σκεφτείτε να χρησιμοποιήσετε το Πρόσθετο "Προσαρμοσμένες λειτουργίες", το οποίο σας επιτρέπει να προσθέσετε κώδικα μη καταστρεπτικά.
Οι προσαρμοσμένες λειτουργίες μου
Ανοίξτε το θέμα σας functions.php αρχείο, αποθηκευμένο στο φάκελο θέματος μέσα wp-content / θέματα; ή χρησιμοποιήστε την προσθήκη My Custom Functions, στην οποία θα βρείτε Ρυθμίσεις > PHP Inserter. Στο τέλος του αρχείου, προσθέστε αυτόν τον κωδικό:
add_action ('init', 'events_init'); function events_init () {$ args = array ('labels' => array ('name' => __ ('Events'), 'singular_name' => __ ('Event'),), 'public' => true, 'has_archive' => true, 'rewrite' => array ("slug" => "events"), 'υποστηρίζει' => array ('thumbnail', 'editor', 'title', 'custom-πεδία')); register_post_type ('events', $ args); }
Φροντίστε να το κάνετε αυτό πριν από το κλείσιμο php (?>), εάν υπάρχει μία στο δικό σας functions.php αρχείο.
Αφιερώστε λίγο χρόνο για να διαβάσετε τον κωδικό. Δηλώνει ορισμένες ιδιότητες (όπως ετικέτες για τη διεπαφή) και πώς πρέπει να γίνεται διαχείριση των διευθύνσεων URL (επανεγγραφή), καθώς και τι υποστηρίζει αυτός ο μετα-τύπος. Μπορείτε, για παράδειγμα, να προσθέσετε ένα προσαρμοσμένο πεδίο στον προσαρμοσμένο τύπο ανάρτησής σας με την ιδιότητα υποστηρίξεων.
Σε αυτήν την περίπτωση, δηλώσαμε τον τύπο συμβάντος μας για υποστήριξη μικρογραφιών, επεξεργαστή περιεχομένου για την περιγραφή του συμβάντος, τίτλο συμβάντος και προσαρμοσμένα πεδία. Προσθέσαμε επίσης has_archive, ώστε η πλοήγηση στη σελίδα εκδηλώσεων να εμφανίζει ένα αρχείο όλων των εκδηλώσεων, παρόμοιο με ένα ιστολόγιο.
Αυτό είναι, τώρα εάν αποθηκεύσετε το θέμα σας και φορτώσετε ξανά το ιστολόγιό σας, υποθέτοντας ότι δεν έχετε σφάλματα, θα πρέπει τώρα να δείτε μια νέα ενότητα συμβάντων στην πλαϊνή γραμμή του διαχειριστή σας. Ναι!

Προσθέστε μερικά παραδείγματα συμβάντων τώρα.

Στη συνέχεια, επειδή αυτό είναι ένα συμβάν, δημιουργήστε ένα προσαρμοσμένο πεδίο που ονομάζεται ημερομηνία για να δείξει πότε θα συμβεί το συμβάν. Χρήση μμ / ηη / εεεε μορφή.

Λάβετε υπόψη ότι πρέπει να χρησιμοποιήσουμε προσαρμοσμένα πεδία για να καθορίσουμε την πραγματική ημερομηνία του συμβάντος και όχι την ημερομηνία της ανάρτησης, επειδή η ημερομηνία της ανάρτησης αντιπροσωπεύει τη δημοσίευση της ειδοποίησης. Δεδομένου ότι πιθανώς προσθέτετε συμβάντα που θα συμβούν στο μέλλον, ο ορισμός της ημερομηνίας έκδοσης στην πραγματική ημερομηνία εκδήλωσης θα ήταν άχρηστος.
Εάν προσπαθήσετε να δείτε το συμβάν σε αυτό το σημείο, ενδέχεται να εμφανιστεί ένα σφάλμα 404. Αυτό οφείλεται στο γεγονός ότι το WordPress πρέπει να αναδημιουργήσει τη δομή διευθύνσεων URL Permalink για να λάβει υπόψη αυτόν τον νέο τύπο ανάρτησης. Προχωρήστε στο Ρυθμίσεις> Μόνιμοι σύνδεσμοι σελίδα και πατήστε ξανά αποθήκευση.
Τώρα θα πρέπει να μπορείτε να προβάλετε τη μεμονωμένη ανάρτηση συμβάντος. Λάβετε υπόψη ότι το πρώτο μέρος της διεύθυνσης URL, μετά το όνομα τομέα σας, είναι /events/. Το επιλέξαμε σε αυτήν τη γραμμή κώδικα:
'rewrite' => πίνακας ("slug" => "συμβάντα"),
Προσαρμόστε τη σελίδα καταχώρησης εκδηλώσεων
Τώρα που έχετε όλα αυτά τα φανταστικά γεγονότα στο ιστολόγιό σας, θα ήταν ωραίο να τα αναφέρετε κάπου. Για αυτό, θα δημιουργήσουμε ένα ειδικό πρότυπο σελίδας, ώστε να μπορείτε στη συνέχεια να προσθέσετε αυτήν τη σελίδα στα στοιχεία του κανονικού μενού μαζί με το About ή το Contact.
Εφόσον έχουμε ήδη καθορίσει ότι ο τύπος ανάρτησης συμβάντος θα πρέπει να έχει ένα αρχείο, μπορείτε να προχωρήσετε και να δείτε ποια είναι η προεπιλογή μεταβαίνοντας /events/. Στο τυπικό θέμα Twenty-Seventeen στον ιστότοπο δοκιμών μου, έχω αυτό:

Η προσαρμογή αυτής της παραγωγής εξαρτάται από το θέμα που χρησιμοποιείτε και η κάλυψη ολόκληρου του συστήματος templating WordPress είναι πολύ εκτός του πεδίου αυτού του άρθρου. Ωστόσο, για αυτό το σεμινάριο, θα υποθέσω ότι χρησιμοποιείτε το Twenty-Seventeen.
Ξεκινήστε δημιουργώντας ένα αντίγραφο του archive.phpκαι μετονομάστε το σε archive-events.php. Αυτό είναι ένα τυπική σύμβαση ονομασίας Αυτό σημαίνει ότι το WordPress θα χρησιμοποιήσει αυτόματα αυτό το πρότυπο για να εμφανίσει το αρχείο για τον τύπο δημοσίευσης συμβάντων.
Κατά την εξέταση του αρχείου, οι συγγραφείς των Twenty-Seventeen παρείχαν έναν μηχανισμό post format, ο οποίος είναι πολύ περίπλοκος για τις ανάγκες μας:
/* * Συμπεριλάβετε το πρότυπο Post-Format για το περιεχόμενο. * Εάν θέλετε να το παρακάμψετε σε ένα παιδικό θέμα, τότε συμπεριλάβετε ένα αρχείο. * ονομάζεται περιεχόμενο -___. php (όπου ___ είναι το όνομα μορφής ανάρτησης) και αυτό θα χρησιμοποιηθεί αντ 'αυτού. */ get_template_part ('template-parts / post / content', get_post_format ());
Σημείωση: Συνιστάται ένα θυγατρικό θέμα, καθώς τυχόν ενημερώσεις στο αρχικό θέμα θα αντικαταστήσουν τις αλλαγές σας. Αυτό Άρθρο υποστήριξης WordPress περιγράφει τη διαδικασία δημιουργίας ενός παιδικού θέματος για το Twenty-Seventeen. Για συντομία, απλώς πρόκειται να δουλέψω στο αρχικό θέμα και δεν με νοιάζει αν η δουλειά μου χάθηκε σε μια μεταγενέστερη ενημέρωση.
Κόψτε ολόκληρο το μπλοκ και επικολλήστε τα παρακάτω. Αυτό είναι απλώς ένα απλοποιημένο αντίγραφο αυτού που υπάρχει σε αυτά τα πρότυπα μορφής ανάρτησης, για χάρη της μάθησης:
php echo ' ', '
'); php εάν (''! == get_the_post_thumbnail () &&! είναι ελεύθερος() ): '; the_title ('php endif; php the_content (sprintf ('Συνέχεια ανάγνωσης "% s" ', get_the_title ()));
Εάν αποθηκεύσετε και κάνετε προεπισκόπηση της σελίδας Εκδηλώσεις, θα παρατηρήσετε ότι έχει πλέον ημερομηνίες. Αλλά κάνουν λάθος. Προς το παρόν εμφανίζουν την ημερομηνία δημοσίευσης αντί της ημερομηνίας εκδήλωσης. Ως τελευταίο βήμα, ας το αλλάξουμε στην πραγματική ημερομηνία που θα πραγματοποιηθεί η εκδήλωση. Βρείτε το κομμάτι που δημιουργεί το χρόνο, είκοσι_σεβεντίνη_ ώρα_σύνδεση ()
και αντικαταστήστε το με τα εξής:
ημερομηνία ('l jS F Y', strtotime (get_post_meta (get_the_ID (), 'date', true)))
Αυτό λαμβάνει την ημερομηνία από το πεδίο μετα-μετα που ορίσαμε και στη συνέχεια χρησιμοποιώντας το PHP ημερομηνία() λειτουργία για να το μορφοποιήσετε σε κάτι πιο ευανάγνωστο.

Επόμενα βήματα?
Εάν δεν είστε ικανοποιημένοι με τον τρέχοντα οικοδεσπότη Ιστού σας, συνιστούμε ανεπιφύλακτα να χρησιμοποιήσετε έναν διαχειριζόμενο κεντρικό υπολογιστή WordPress όπως Μηχανή WP, που εμείς οι ίδιοι χρησιμοποιούμε για τους αδελφικούς μας ιστότοπους. Διαφορετικά, η InMotion Hosting προσφέρει προσιτά πακέτα, τα οποία είναι ακόμη φθηνότερα με την ειδική έκπτωση όταν χρησιμοποιείτε αυτός ο σύνδεσμος.
Στη συνέχεια, σημειώστε ότι όταν δημιουργήσαμε τον τύπο ανάρτησης του συμβάντος, κωδικοποιήσαμε ήδη την υποστήριξη για επιλεγμένες μικρογραφίες. Χρησιμοποιήστε τον οδηγό μας για επιλεγμένες εικόνες και δημοσιεύσεις μικρογραφιών Ο πλήρης οδηγός για επιλεγμένες μικρογραφίες και μεγέθη εικόνας στο WordPressΕδώ είναι όλα όσα πρέπει να γνωρίζετε σχετικά με τα μεγέθη εικόνων στο WordPress και τη διαχείριση επιλεγμένων εικόνων. Διαβάστε περισσότερα για να τραβήξετε και να εμφανίσετε μια επιλεγμένη εικόνα στο αρχείο των εκδηλώσεων.
Ο James έχει πτυχίο Τεχνητής Νοημοσύνης και είναι πιστοποιημένο με CompTIA A + και Network +. Είναι ο κύριος προγραμματιστής του MakeUseOf και περνά τον ελεύθερο χρόνο του παίζοντας VR paintball και boardgames. Δημιουργεί υπολογιστές από τότε που ήταν παιδί.