Δημιουργήστε έναν προσαρμοσμένο τύπο ανάρτησης WordPress

Συγγραφέας: Monica Porter
Ημερομηνία Δημιουργίας: 14 Μάρτιος 2021
Ημερομηνία Ενημέρωσης: 17 Ενδέχεται 2024
Anonim
Πώς να φτιάξεις μία Iστοσελίδα με WordPress 2020 - Tο καλύτερο Tutorial στα ελληνικά!
Βίντεο: Πώς να φτιάξεις μία Iστοσελίδα με WordPress 2020 - Tο καλύτερο Tutorial στα ελληνικά!

Περιεχόμενο

  • Απαιτείται γνώση: PHP, εμπειρία με το WordPress
  • Απαιτεί: WordPress v3.1 +
  • Ώρα έργου: 20 λεπτά
  • Αρχείο υποστήριξης

Προσαρμοσμένοι τύποι δημοσιεύσεων εισήχθησαν στο WordPress v3.0 για να επιτρέψουν στους προγραμματιστές να προσθέσουν εύκολα διαφορετικούς τύπους περιεχομένου στις προσθήκες και τα θέματα τους, επιτρέποντάς σας να επεκτείνετε εύκολα το WordPress και να το κάνετε περισσότερο σαν CMS.

Σε αυτό το σεμινάριο θα δούμε ακριβώς τι είναι ένας τύπος προσαρμοσμένης ανάρτησης του WordPress και πώς να τα χρησιμοποιούμε άμεσα στις προσθήκες και τα θέματα σας.

01. Τι είναι οι προσαρμοσμένοι τύποι δημοσιεύσεων του WordPress;

Στην απλούστερη μορφή του, ένας τύπος προσαρμοσμένης ανάρτησης WordPress είναι μια αναπαράσταση ενός τύπου περιεχομένου. Μην μπερδεύεστε από το γεγονός ότι έχει «δημοσίευση» στον τίτλο του. Μπορεί κυριολεκτικά να αντιπροσωπεύει οτιδήποτε θέλετε. Έτσι, για παράδειγμα, το WordPress έχει ενσωματωμένους πολλούς προεπιλεγμένους τύπους δημοσιεύσεων:

  • Δημοσιεύσεις
  • Σελίδες
  • Συνημμένα
  • Αναθεωρήσεις
  • Μενού Nav

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


02. Πώς μπορώ να δημιουργήσω έναν προσαρμοσμένο τύπο ανάρτησης WordPress;

Η δημιουργία ενός προσαρμοσμένου τύπου ανάρτησης WordPress είναι στην πραγματικότητα απίστευτα απλή και όταν δείτε πόσο δουλειά κάνει το WordPress για εσάς, θα αρχίσετε να καταλαβαίνετε πόσο ισχυρό μπορούν να είναι. Στο αρχείο functions.php του θέματος, εισαγάγετε τον ακόλουθο κώδικα:

add_action («init», «create_post_type»);
function create_post_type () {
register_post_type («βιβλίο»,
πίνακας(
"Label" => πίνακας (
«Name» => __ («Βιβλία»),
«Singular_name» => __ («Βιβλίο»)
),
"Δημόσιο" => αλήθεια,
«Has_archive» => αλήθεια
)
);
}

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

Το παραπάνω παράδειγμα είναι εξαιρετικά απλό αλλά δείχνει την απλότητα της δημιουργίας προσαρμοσμένων τύπων δημοσιεύσεων. Τώρα, εάν μεταβείτε στον πίνακα διαχείρισης του WordPress, θα πρέπει να δείτε ένα νέο στοιχείο μενού που ονομάζεται "Βιβλία". Προχωρήστε και παίξτε με τη νέα ενότητα "Βιβλία". Επειδή ορίσαμε το "public => true", όλη η διεπαφή διαχειριστή δημιουργείται για εμάς από το WordPress, κάνοντας τη ζωή μας πολύ πιο απλή.


03. Δημιουργία βάσης δεδομένων βιβλίων

Στο τελευταίο μας παράδειγμα δημιουργήσαμε έναν πολύ βασικό προσαρμοσμένο τύπο ανάρτησης WordPress, αλλά ανακαλύψαμε μόνο την επιφάνεια του τι είναι δυνατόν με προσαρμοσμένους τύπους δημοσιεύσεων. Ας βρώσουμε τα χέρια μας βρώμικα και δημιουργήστε έναν πλήρη προσαρμοσμένο τύπο ανάρτησης.

// Δημιουργήστε τύπο δημοσίευσης
add_action («init», «create_post_type»);
function create_post_type () {
$ args = πίνακας (
«Labels» => post_type_labels («Βιβλίο»),
"Δημόσιο" => αλήθεια,
"Publicly_queryable" => αλήθεια,
"Show_ui" => αλήθεια,
«Show_in_menu» => αλήθεια,
"Query_var" => αλήθεια,
"Rewrite" => αλήθεια,
«Capacity_type» => «ανάρτηση»,
«Has_archive» => αλήθεια,
«Ιεραρχική» => ψευδής,
«Menu_position» => null,
«Υποστηρίζει» => πίνακας («τίτλος»,
'συντάκτης',
'συντάκτης',
'όνυξ του αντίχειρος',
'απόσπασμα',
'σχόλια'
)
);

register_post_type («βιβλίο», $ args);
}

// Μια βοηθητική λειτουργία για τη δημιουργία ετικετών
συνάρτηση post_type_labels ($ singular, $ plural = ’’)
{
if ($ plural == ’’) $ plural = $ singular .’s ’;

πίνακας επιστροφής (
«Name» => _x (πληθυντικός $, «γενικό όνομα τύπου ανάρτησης»),
«Singular_name» => _x ($ singular, «single post type singular name»),
«Add_new» => __ («Προσθήκη νέου»),
«Add_new_item» => __ («Προσθήκη νέου». $ Singular),
«Edit_item» => __ («Επεξεργασία». $ Singular),
«New_item» => __ («Νέο». $ Singular),
«View_item» => __ («Προβολή». $ Singular),
«Search_items» => __ («Αναζήτηση». $ Πληθυντικός),
«Not_found» => __ («Όχι». $ Πληθυντικός. «Βρέθηκε»),
"Not_found_in_trash" => __ ("Όχι". $ Πληθυντικός. "Βρέθηκε στον Κάδο απορριμμάτων"),
"Parent_item_colon" => ""
);
}

// προσθέστε φίλτρο για να διασφαλίσετε ότι το βιβλίο Βιβλίο ή το βιβλίο εμφανίζεται όταν ο χρήστης ενημερώνει ένα βιβλίο
add_filter («post_updated_messages», «post_type_updated_messages»);
λειτουργία post_type_updated_messages ($ μηνύματα) {
καθολική ανάρτηση $, $ post_ID;

$ μηνύματα [«βιβλίο»] = πίνακας (
0 => ’’, // Αχρησιμοποίητο. Τα μηνύματα ξεκινούν από το ευρετήριο 1.
1 => sprintf (__ («Το βιβλίο ενημερώθηκε. A href ="% s "> Προβολή βιβλίου / a> '), esc_url (get_permalink ($ post_ID))),
2 => __ («Το προσαρμοσμένο πεδίο ενημερώθηκε»),
3 => __ («Το προσαρμοσμένο πεδίο διαγράφηκε.»),
4 => __ («Το βιβλίο ενημερώθηκε»),
/ * μεταφραστές:% s: ημερομηνία και ώρα της αναθεώρησης * /
5 => Isset ($ _ GET [«αναθεώρηση»]); sprintf (__ («Το βιβλίο αποκαταστάθηκε σε αναθεώρηση από% s»), wp_post_revision_title ((int) $ _GET [«revision»], false)): false,
6 => sprintf (__ («Βιβλίο δημοσιεύθηκε. A href ="% s "> Προβολή βιβλίου / a> '), esc_url (get_permalink ($ post_ID))),
7 => __ («Το βιβλίο αποθηκεύτηκε»),
8 => sprintf (__ ('Το βιβλίο υποβλήθηκε. A target = "_ blank" href = "% s"> Προεπισκόπηση βιβλίου / a>'), esc_url (add_query_arg ('preview', 'true', get_permalink ($ post_ID)) )),
9 => sprintf (__ («Το βιβλίο έχει προγραμματιστεί για: strong>% 1 $ s / strong>. A target =" _ blank "href ="% 2 $ s "> Προεπισκόπηση βιβλίου / a> '),
// μεταφραστές: Δημοσίευση μορφής ημερομηνίας πλαισίου, δείτε το php.net/date
date_i18n (__ («M j, Y @ G: i»), strtotime ($ post-> post_date)), esc_url (get_permalink ($ post_ID))),
10 => sprintf (__ ('Το πρόχειρο του βιβλίου ενημερώθηκε. A target = "_ blank" href = "% s"> Προεπισκόπηση βιβλίου / a>'), esc_url (add_query_arg ('preview', 'true', get_permalink ($ post_ID) ))),
);

επιστροφή μηνυμάτων $;
}


Τι συμβαίνει εδώ; Λοιπόν, αρχικά δημιουργούμε τον προσαρμοσμένο τύπο ανάρτησής μας και ορίζουμε τις περισσότερες από τις διαθέσιμες επιλογές μαζί του. Δεν πρόκειται να εξηγήσω τι κάνουν όλες αυτές οι επιλογές εδώ, επειδή το WordPress Codex τις εξηγεί πολύ καλά.

Η δεύτερη συνάρτηση που βλέπετε είναι απλά μια βοηθητική συνάρτηση που διευκολύνει τη δημιουργία ετικετών που θα χρησιμοποιηθούν στον διαχειριστή του WordPress για τον προσαρμοσμένο τύπο δημοσίευσης. Μπορείτε να ορίσετε με μη αυτόματο τρόπο τον πίνακα ετικετών $, αν θέλετε, αλλά το βρίσκω πιο καθαρό και πιο εύκολο.

Τέλος προσθέτουμε ένα φίλτρο για να αλλάξουμε τα ενημερωμένα μηνύματα. Τώρα λοιπόν κάθε φορά που το WordPress εμφανίζει ένα μήνυμα ενημέρωσης για αυτόν τον προσαρμοσμένο τύπο ανάρτησης, θα εμφανίζει τις σωστές ετικέτες (αντί να χρησιμοποιεί απλώς το "post" όλη την ώρα)

04. Προβολή των βιβλίων μας

Τώρα έχουμε αυτόν τον φοβερό προσαρμοσμένο τύπο ανάρτησης που μπορούμε να διαχειριστούμε στον διαχειριστή του WordPress. Τι γίνεται όμως με την εμφάνιση βιβλίων στον ιστότοπό σας; Λοιπόν, το WordPress σας έχει καλύψει.

Υπάρχουν πολλά πρότυπα που μπορούν να χρησιμοποιηθούν στα θέματα σας για την αυτόματη εμφάνιση του προσαρμοσμένου περιεχομένου τύπου ανάρτησης:

  • single- {posttype} .php - Με τον ίδιο τρόπο που οι αναρτήσεις εμφανίζονται στη δική τους σελίδα με single.php, οι προσαρμοσμένοι τύποι δημοσιεύσεων θα χρησιμοποιούν single- {posttype} .php εάν είναι διαθέσιμοι. Έτσι στο παραπάνω παράδειγμά μας θα μπορούσαμε να δημιουργήσουμε ένα single-book.php αρχείο και οι αναρτήσεις των προϊόντων θα εμφανίζονται χρησιμοποιώντας αυτό το πρότυπο.
  • αρχείο- {posttype} .php - Από το WordPress v3.1 μπορείτε επίσης να χρησιμοποιήσετε ένα πρότυπο τύπου αρχείου. Με τον ίδιο τρόπο που οι αναρτήσεις εμφανίζονται στο δικό τους αρχείο με το archive.php, οι προσαρμοσμένοι τύποι δημοσιεύσεων θα χρησιμοποιούν το αρχείο- {posttype} .php εάν είναι διαθέσιμο.

Τώρα, έχοντας αυτά τα αρχεία προτύπων στη διάθεσή μας είναι υπέροχο, αλλά μερικές φορές πρέπει να πάρετε λίγο πιο περίπλοκο και να χρησιμοποιήσετε ένα προσαρμοσμένο ερώτημα για κάποιο λεπτομερές έλεγχο. Ευτυχώς, το WP_Query μας καλύπτει επιτρέποντάς μας να καθορίσουμε μια παράμετρο "post_type".

$ args = array («post_type» => «βιβλίο», «posts_per_page» => 10);
$ loop = νέο WP_Query ($ args);
ενώ ($ loop-> has_posts ()): $ loop-> the_post ();
ο τίτλος();
echo «div>»;
το περιεχόμενο();
echo "/ div>";
εν τω μεταξύ?

05. Συμπέρασμα

Τώρα έχετε μια πλήρως λειτουργική βάση δεδομένων βιβλίων, την οποία μπορείτε να ελέγξετε μέσω της περιοχής διαχειριστή του WordPress, επιτρέποντάς σας να εμφανίζετε βιβλία στον ιστότοπό σας στο WordPress. Αυτό το σεμινάριο χρησιμεύει μόνο ως εισαγωγή σε αυτό που μπορεί να επιτευχθεί με προσαρμοσμένους τύπους δημοσιεύσεων. Είναι μια απίστευτα ισχυρή δυνατότητα του WordPress, οπότε χρησιμοποιήστε τα προσεκτικά, αλλά μην φοβάστε να τεντώσετε τη φαντασία σας: υπάρχουν τόσα πολλά πράγματα που μπορείτε εύκολα να επιτύχετε χρησιμοποιώντας προσαρμοσμένους τύπους δημοσιεύσεων.

06. Περαιτέρω σημειώσεις

Πριν τελειώσουμε, υπάρχουν μερικά επιπλέον σημεία που αξίζει να αναφερθούν:

  • Κατά τη δημιουργία προσαρμοσμένων τύπων αναρτήσεων θεωρείται βέλτιστη πρακτική να προθέσετε τον τύπο ανάρτησης με έναν μοναδικό "χώρο ονομάτων" για να αποφύγετε διενέξεις με άλλα θέματα και προσθήκες. Αν και προσέξτε ότι το συνολικό μήκος του ονόματος προσαρμοσμένου τύπου ανάρτησης δεν υπερβαίνει τους 20 χαρακτήρες, διαφορετικά θα συμβούν περίεργα πράγματα.
  • Μην χρησιμοποιείτε το "wp_" ως πρόθεμα χώρου ονομάτων, καθώς προορίζεται για εσωτερικά ονόματα WordPress.
  • Εάν λάβετε 404 σελίδες όταν προσπαθείτε για πρώτη φορά να δείτε τους προσαρμοσμένους τύπους δημοσιεύσεων, μην πανικοβληθείτε. Απλώς επισκεφθείτε τη σελίδα Ρυθμίσεις> Μόνιμοι σύνδεσμοι και αυτό θα ξεπλύνει τους κανόνες επανεγγραφής σας. Εάν είστε συγγραφέας προσθηκών, βεβαιωθείτε ότι έχετε ξεκαθαρίσει τους κανόνες επανεγγραφής στην ενεργοποίηση της προσθήκης σας.

Σας άρεσε αυτό; Διαβάστε αυτά!

  • Brilliant Wordpress επιλογή εκμάθησης
  • Δημιουργήστε έναν τέλειο πίνακα διάθεσης με αυτές τις επαγγελματικές συμβουλές
  • Ο απόλυτος οδηγός για το σχεδιασμό λογότυπων
  • Οι αγαπημένες μας γραμματοσειρές ιστού - και δεν κοστίζουν ούτε δεκάρα
Είδη Πύλης
Διαθέτετε αυτά τα βιβλία σχεδιασμού γραφικών που πρέπει να διαβάσετε;
Περαιτέρω

Διαθέτετε αυτά τα βιβλία σχεδιασμού γραφικών που πρέπει να διαβάσετε;

Το κύριο έργο του Itten »Η τέχνη του χρώματοςΕίναι μια κολοσσιαία £ 220 στο Amazon και διερευνά την επίδραση του χρώματος στην τέχνη και το σχέδιο. Αλλά μπορείτε να παραλάβετε αυτήν τη σύντο...
Η εξειδίκευση είναι υπερβολική: γιατί 5 δεξιότητες είναι καλύτερες από μία
Περαιτέρω

Η εξειδίκευση είναι υπερβολική: γιατί 5 δεξιότητες είναι καλύτερες από μία

Όταν άρχισα να σχεδιάζω για το Διαδίκτυο το 1994, έκανα τα πάντα. Από Perl και HTML έως animation στο Director και Fla h. ΑπόPhoto hopping για παραγωγή και λήψη του τηλεφώνου. Ήμουν μια αληθινή γυναικ...
Γραμματοσειρά της ημέρας: Last Paradise
Περαιτέρω

Γραμματοσειρά της ημέρας: Last Paradise

Είμαστε τεράστιοι λάτρεις της τυπογραφίας και ψάχνουμε πάντα για νέες και συναρπαστικές γραμματοσειρές, είτε δωρεάν γραμματοσειρές είτε τις καλύτερες γραμματοσειρές που αξίζει να ξεχωρίσουμε. Επομένως...