
Τα shortcodes είναι ένα από τα σημαντικότερα στοιχεία του WordPress. Τα shortcodes αποτελούν τη γέφυρα μεταξύ προγραμματιστών και δημιουργών ιστοτόπων, επιτρέποντας στους χρήστες να τοποθετούν περίπλοκα κομμάτια περιεχομένου σχεδόν οπουδήποτε επιθυμούν. Οι δημιουργοί πρόσθετων λατρεύουν τα shortcodes, καθώς αυτό επιτρέπει μεγαλύτερη ευελιξία στον τρόπο και το σημείο όπου οι χρήστες τους προβάλλουν το περιεχόμενό τους.
Αν δεν γνωρίζετε τι είναι τα shortcodes και πώς μοιάζουν, πρόκειται για εκείνα τα αρχαϊκά κείμενα που μοιάζουν με κώδικα και περικλείονται σε αγκύλες. Μοιάζουν κάπως έτσι:
Το συγκεκριμένο ονομάζεται embed shortcode και είναι ενσωματωμένο από προεπιλογή στο WordPress. Αυτό συγκεκριμένα ενσωματώνει το βίντεο από το URL στο περιεχόμενό σας. Απλώς αντιγράψτε και επικολλήστε το παραπάνω shortcode στον ιστότοπό σας αν θέλετε να το δοκιμάσετε.
Στο παρασκήνιο, αυτό που συμβαίνει είναι ότι όταν το WordPress συναντά ένα shortcode στο περιεχόμενό σας, αυτό υφίσταται επεξεργασία και μετατρέπεται σε κάτι άλλο. Στην παραπάνω περίπτωση, όποτε ένα
shortcode εντοπίζεται, το WordPress παίρνει το URL από το shortcode και το ελέγχει σε σχέση με έναν αριθμό παρόχων περιεχομένου που διαθέτει. Όταν βρει κάποιον, λαμβάνει τον κατάλληλο κώδικα ενσωμάτωσης iframe και εμφανίζει αυτόν στη θέση του.
Ποιο είναι λοιπόν το πρόβλημα εδώ; Ακούγεται αρκετά απλό: απλώς εισάγετε ένα σύντομο κείμενο με αγκύλες και τελειώσατε.
Και κάπου εδώ μπαίνει το Shortcode API..
Shortcodes εν αφθονία
Το Shortcode API ανοίγει τη δυνατότητα δημιουργίας shortcodes στους προγραμματιστές. Χάρη σε αυτό, οι προγραμματιστές μπορούν να προσθέτουν τα δικά τους shortcodes μέσα στα πρόσθετά τους.
Αυτό είναι εξαιρετικό: τώρα, με ένα απλό σύντομο απόσπασμα που μοιάζει με κώδικα (εξ ου και το όνομα «shortcode»), τόσο οι αρχάριοι όσο και οι προχωρημένοι χρήστες μπορούν να τοποθετήσουν σχεδόν οποιοδήποτε είδος περιεχομένου επιθυμούν οπουδήποτε.
Το WordPress από προεπιλογή διαθέτει μόνο μια χούφτα shortcodes. Είναι εύκολο να τα πληκτρολογήσετε από μνήμης επειδή είναι ελάχιστα. Αλλά αν εγκαταστήσετε μερικά πρόσθετα, ο αριθμός των shortcodes εκτοξεύεται γρήγορα σε μια ντουζίνα ή περισσότερα, και σε ορισμένες περιπτώσεις σε περισσότερα από εκατό. Κάθε shortcode έχει το δικό του σύνολο παραμέτρων και οδηγιών χρήσης. Κάθε πρόσθετο πιθανότατα διαθέτει κάποια τεκμηρίωση για το πώς λειτουργούν όλα τα shortcodes του και παραθέτει όλες τις διαθέσιμες παραμέτρους για το καθένα. Αλλά θα ήταν τρέλα να προσπαθήσετε να απομνημονεύσετε όλα τα shortcodes και τις παραμέτρους τους.
Το πρόβλημα είναι ότι δεν υπάρχει κανένας κεντρικός χώρος στον οποίο να μπορείτε να βρείτε όλα τα διαθέσιμα shortcodes στον ιστότοπό σας και πώς να τα χρησιμοποιήσετε.
Κάποιοι προσπαθούν να λύσουν το πρόβλημα
Ορισμένα πρόσθετα προσπαθούν να λύσουν αυτό το πρόβλημα παρουσιάζοντας όλα τα δικά τους shortcodes σε ένα εύκολα προσβάσιμο αναπτυσσόμενο μενού. Στη συνέχεια, κάνοντας κλικ σε ένα από αυτά, το shortcode εισάγεται, πλήρες με όλες τις πιθανές παραμέτρους του. Δεν χρειάζεται πλέον να το απομνημονεύετε, κάτι που είναι θετικό.

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

Αυτή η λύση λειτουργεί κατά κάποιο τρόπο. Ωστόσο, κάθε πρόσθετο απαριθμεί μόνο τα δικά του shortcodes. Επομένως, εάν κάθε πρόσθετο δημιουργεί τη δική του μορφή επιλογέα shortcode, είναι βέβαιο ότι θα βρεθείτε σε περιπτώσεις όπου έχετε πολλαπλούς επιλογείς shortcode στην οθόνη σας (Αυτό έχει συμβεί και σε μένα στο παρελθόν).

Με άλλα λόγια, κάθε πρόσθετο κάνει το δικό του και εφαρμόζει τη δική του λύση για τα δικά του shortcodes. Ορισμένα πρόσθετα προσθέτουν είτε ένα νέο κουμπί δίπλα στο κουμπί «Προσθήκη πολυμέσων» είτε ένα νέο μέσα στο TinyMCE.
Ίσως λοιπόν τώρα να σκέφτεστε: «Γιατί να μην συγκεντρώσουμε επίσης τα shortcodes των άλλων πρόσθετων και να τα συμπεριλάβουμε και αυτά στο αναπτυσσόμενο μενού / επιλογέα shortcode;» Λοιπόν, ακριβώς αυτό σκέφτηκα κι εγώ. Αλλά αυτό είναι πιο εύκολο να το λες παρά να το κάνεις. Θα εξηγήσω το γιατί σε λίγο, αλλά πρώτα ας δούμε πώς θα έμοιαζε μια ιδανική λύση.
Η ιδανική λύση
Το τέλειο σχέδιο θα ήταν να δημιουργηθεί ένα πρόσθετο που να συγκεντρώνει όλα τα διαθέσιμα shortcodes στον ιστότοπό σας, να σας παρουσιάζει τη λίστα και επίσης να σας βοηθά να συμπληρώσετε όλες τις παραμέτρους. Και κάθε φορά που εγκαθιστάτε ένα νέο πρόσθετο, όλα αυτά τα νεοεισαχθέντα shortcodes θα παρουσιάζονται επίσης σε εσάς.
Φανταστείτε έναν κεντρικό χώρο όπου θα τοποθετούνταν όλα τα shortcodes σας για εύκολη πρόσβαση. Κάθε shortcode θα περιέγραφε τι κάνει και σε ποιο πρόσθετο ανήκει. Στη συνέχεια, για κάθε διαθέσιμη παράμετρο, φανταστείτε ότι η καθεμία θα είχε μια ετικέτα, έναν κατάλληλο τρόπο επιλογής τιμής και μια περιγραφή. Θα σας εμφανίζονταν αναπτυσσόμενα μενού, επιλογείς χρωμάτων, κουμπιά επιλογής, διακόπτες εναλλαγής και ούτω καθεξής.
Κάτι τέτοιο θα έκανε τη ζωή μας ως δημιουργών ιστοτόπων και περιεχομένου ευκολότερη. Τέλος ο έλεγχος διαφορετικών τεκμηριώσεων ή διαφορετικών τμημάτων του πίνακα διαχείρισης μόνο και μόνο για να αντιγράψετε ένα παραγόμενο shortcode για ένα slider που θέλετε να χρησιμοποιήσετε.
Το κώλυμα
Δυστυχώς, είναι αρκετά δύσκολο να γίνει κάτι τέτοιο αυτή τη στιγμή. Δεν υπάρχει σίγουρος τρόπος για να γνωρίζει κανείς όλες τις λεπτομέρειες ενός shortcode. Μπορείτε να πάρετε μια λίστα με όλα τα shortcodes, αλλά μόνο τις πραγματικές ετικέτες/ονόματά τους· δεν μπορείτε να λάβετε πρόσθετες λεπτομέρειες σχετικά με αυτά, όπως μια λίστα παραμέτρων, τι κάνουν και τους τύπους τους – όπως μια συμβολοσειρά, ένα χρώμα ή έναν αριθμό. Ούτε μπορείτε να έχετε έστω και μια υποτυπώδη περιγραφή για κάθε παράμετρο.
Σημείωση προς τους προγραμματιστές εκεί έξω: ναι, υπάρχει ένα πρόσφατα προστεθέν τρίτο όρισμα για τη συνάρτηση shortcode_atts, αλλά δεν είναι υποχρεωτικό όρισμα. Επομένως, εκτός εάν κάθε προγραμματιστής πρόσθετων στον κόσμο το εφαρμόσει, δεν θα έχουμε ακόμα έναν σίγουρο τρόπο για να προσδιορίσουμε όλες τις παραμέτρους ενός shortcode.
Το Shortcode API δεν παρέχει καμία δυνατότητα για προσθήκη περιγραφών shortcode, καθορισμό τύπων παραμέτρων ή περιγραφών παραμέτρων. Και εκτός εάν το ίδιο το WordPress προσθέσει έναν κεντρικό χώρο για πρόσβαση στα shortcodes, αμφιβάλλω αν θα δημιουργηθεί αυτή η δυνατότητα.
Συμπέρασμα
Αυτή τη στιγμή, το έργο της οργάνωσης των shortcodes επαφίεται στον κάθε προγραμματιστή. Εκτός εάν αναπτυχθεί μια κεντρική μέθοδος εντός του WordPress, να περιμένετε ότι θα συνεχίσετε να βλέπετε πολλαπλά κουμπιά «Add Shortcode» στον πίνακα διαχείρισης. Το κατά πόσον κάτι τέτοιο θα πρέπει να προστεθεί στον πυρήνα του WordPress ή όχι είναι από μόνο του μια άλλη τεράστια συζήτηση.
Μια εναλλακτική
Υπάρχουν πρόσθετα page builder που αντιμετωπίζουν αυτό το ζήτημα διαφορετικά. Αντί να ανιχνεύουν προγραμματιστικά τα shortcodes, διαθέτουν εργαλεία αντιστοίχισης shortcodes όπου οι χρήστες μπορούν να εισάγουν χειροκίνητα κάθε λεπτομέρεια ενός shortcode. Μόλις γίνει αυτό, γίνεται διαθέσιμο μέσα στον page builder. Παρόλο που αυτό λειτουργεί, αυτά είναι διαθέσιμα μόνο στον δικό σας ιστότοπο.
Εμείς εδώ στο Page Builder Sandwich δημιουργούμε κάτι που ελπίζουμε ότι μπορεί να λύσει αυτό το αίνιγμα των shortcodes. Εγγραφείτε στο ενημερωτικό δελτίο μας παρακάτω για να λαμβάνετε ειδοποιήσεις σχετικά με την πρόοδό μας.