Αγαπητοί θεματοφύλακες, σταματήστε να επικολλάτε τυχαία αποσπάσματα κώδικα στο functions.php

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


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

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

Πώς συνέβη αυτό, αναρωτιέστε; Ίσως επειδή επικολλήσατε τυφλά τυχαίες σφαίρες κώδικα WordPress στο αρχείο functions.php χωρίς να σκεφτείτε ή να προβλέψετε πιθανά προβλήματα συμβατότητας.

Ένα πραγματικό παράδειγμα

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

Η πρώτη γραμμή κώδικα ήταν η ακόλουθη:

add_filter (‘the_content’, ‘strip_shortcodes’);

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

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

Τι σκέφτονται οι προγραμματιστές εμπορικών προσθηκών

Ακολουθεί ένα απόσπασμα από τον Carl Hancock (προγραμματιστής των Gravity Forms) για αυτό το ίδιο θέμα:

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

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

Θέλετε να περιορίσετε τις πιθανότητες αντιμετώπισης προβλημάτων με προσθήκες που προκαλούνται από ένα ανεπαρκώς ανεπτυγμένο θέμα; Παραμείνετε σε αξιόπιστους προγραμματιστές θεμάτων όπως τα Press75, iThemes, Headway Themes, Organic Themes, WooThemes και StudioPress για να αναφέρουμε μερικά. Να είστε κουρασμένοι από θεματικές αγορές όπου η εμπειρία και το σύνολο δεξιοτήτων του συγγραφέα μπορεί να λείπουν. Στις περισσότερες περιπτώσεις παίρνετε αυτό που πληρώνετε.

Καλύτερες πρακτικές κωδικοποίησης

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

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

Αυτά περιλαμβάνουν #searchform, #s, #searchsubmit στο πλαίσιο αναζήτησης. Επίσης #commentform #author, #url, #email, #comment, # υποβολή για τη φόρμα σχολίων.

συμπέρασμα

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

Όπως εάν διαπιστώσετε ότι οι συντομεύσεις σας δεν λειτουργούν σωστά, μια γραμμή κώδικα που αναφέρει “strip_shortcodes” μπορεί να έχει σχέση με αυτό.

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

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

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map