Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. WordPress
Code

Δημιουργήστε ένα Plugin για Προσαρμοσμένη Φόρμα Εγγραφής

by
Difficulty:IntermediateLength:LongLanguages:

Greek (ελληνικά) translation by Iris Diakoumi (you can also view the original English article)

Αρχικά, το Wordpress προσφέρει μια προσαρμοσμένη φόρμα εγγραφής που μπορεί να χρησιμοποιηθεί για να εγγραφεί ένας νέος χρήστης, ή για να προσθέσουμε ένα χρήστη όταν τον προσθέτουμε σε μια ήδη υπάρχουσα εγκατάσταση WordPress. Αλλά τί γίνεται αν θέλετε να υλοποιήσετε μια προσαρμοσμένη φόρμα εγγραφής που δεν εμφανίζει τις επιλογές στον Πίνακα Διαχείρισης του WordPress;

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

Η προεπιλεγμένη φόρμα εγγραφής αποτελείται από ακριβώς δύο πεδία φόρμας - όνομα χρήστη και email.

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

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

Αυτό είναι ιδιαίτερα χρήσιμο σε μια ιστοσελίδα με πολλούς συγγραφείς όπως το Tuts+.

Σε αυτό το άρθρο, εμείς θα δημιουργήσουμε ένα plugin για προσαρμοσμένη φόρμα εγγραφής με τα εξής πεδία φόρμας:

  • όνομα χρήστη
  • κωδικό πρόσβασης
  • email
  • διεύθυνση URL της ιστοσελίδας
  • όνομα
  • επώνυμο
  • ψευδώνυμο
  • βιογραφία (ή μια ενότητα "σχετικά")

Η προσαρμοσμένη φόρμα εγγραφής μπορεί ύστερα στο WordPress χρησιμοποιώντας το shortcode του plugin και τη συσχετισμένη ετικέτα προτύπου.

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

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

Πριν αρχίσουμε την δημιουργία του plugin της φόρμας εγγραφής, αξίζει να σημειωθεί ότι το όνομα χρήστη, ο κωδικός πρόσβασης και το πεδίο του email είναι απαραίτητα.

Εμείς θα εφαρμόσουμε αυτόν τον κανόνα, όταν γράφουμε τη συνάρτηση επικύρωσης.

Premium Επιλογή

Αυτό το σεμινάριο θα σας διδάξει πώς να φτιάξετε το plugin από το μηδέν, αλλά αν ψάχνετε για μια λύση γρήγορη, plug-and-play, δοκιμάστε το plugin WordPress Registration Form στην αγορά Envato. Μπορείτε να ορίσετε ένα ευρύ φάσμα πεδίων καταχώρησης με έλεγχο επικύρωσης. Μόλις ολοκληρωθεί η εγγραφή, αποστέλλεται ένα μήνυμα ηλεκτρονικού ταχυδρομείου στο νέο μέλος με τα στοιχεία σύνδεσής του. Τα πρότυπα ηλεκτρονικού ταχυδρομείου μπορούν να τροποποιηθούν για εγγραφή, αλλαγή κωδικού πρόσβασης, κλπ.

WordPress Registration Form plugin on Envato Market
Το WordPress Registration Form plugin στο Envato Market

Μια άλλη επιλογή είναι απλά να κάνετε μια παραγγελία στο Envato Studio. Μπορείτε να επιλέξετε το σωστό άτομο από ένα ευρύ φάσμα από έμπειρους προγραμματιστές WordPress plugin. Στη συνέχεια, μπορείτε να στείλετε τις απαιτήσεις σας και να αφήσετε τον προγραμματιστή να δημιουργήσει το plugin σας μέσα στο συμφωνημένο χρονικό διάστημα.

Για παράδειγμα, ο Alisaleem252 θα αναπτύξει ένα προσαρμοσμένο WordPress plugin που θα είναι συμβατό με την τελευταία έκδοση του WordPress και άλλα plugins στο WordPress Repository σύμφωνα με τις απαιτήσεις σας.

Θα πάρετε:

  • προσαρμοσμένο widget, εάν είναι απαραίτητο
  • προσαρμοσμέν shortcode εάν είναι απαραίτητο
  • προσαρμοσμένο τύπο ανάρτησης, εάν είναι απαραίτητο
  • αξιόπιστη εξυπηρέτηση
Custom WordPress Plugin Development
Aνάπτυξη Προσαρμοσμένου WordPress Plugin

Η πλήρης υπηρεσία κοστίζει μόνο $300, και το plugin σας θα είναι έτοιμο σε 10 ημέρες. Ο Alisaleem252 έχει μια εκτίμηση έγκρισης 98% από προηγούμενους πελάτες. Οπότε γιατί να μην δοκιμάσετε του δημοφιλή υπηρεσία Ανάπτυξη Προσαρμοσμένου WordPress Plugin!

Δημιουργώντας το Plugin

Aς ξεκινήσουμε όμως με την κωδικοποίηση του plugin. Πρώτα, ας περιλάβουμε την κεφαλίδα του plugin.

Στη συνέχεια, δημιουργούμε μια συνάρτηση PHP που περιέχει τον κώδικα HTML της φόρμας εγγραφής.

Παρατηρήσατε το πεδίο εγγραφής που περνιέται στη συνάρτηση παραπάνω ως μεταβλητή; Στον κώδικα της συνάρτησης, θα δείτε στιγμιότυπα του παρακάτω κώδικα, για παράδειγμα:

( isset( $_POST['lname'] ) ? $last_name : null )

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

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

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

  1. Δημιουργήστε τη συνάρτηση και περάστε το πεδίο εγγραφής ως όρισμα της συνάρτησης.
  2. Αρχικοποιήστε την κλάση WP_Error και κάντε τη μεταβλητή στιγμιοτύπου καθολική έτσι ώστε να μπορεί να προσπελαστεί έξω από την εμβέλεια της συνάρτησης.
  3. Θυμηθείτε: Είπαμε ότι το όνομα χρήστη, ο κωδικός πρόσβασης και το email απαιτούνται και δεν πρέπει να παραβλεφθούν. Για να επιβάλουμε τον κανόνα, θα πρέπει να ελέγξουμε αν οποιοδήποτε από το πεδίο είναι κενό. Εάν είναι άδειο, προσαρτούμε το μήνυμα λάθους στην καθολική κλάση WP_Error.
  4. Ελέγχουμε επίσης για να βεβαιωθούμε ότι ο αριθμός των χαρακτήρων του ονόματος χρήστη δεν είναι λιγότερο από 4.
  5. Ελέγχουμε εάν το όνομα έχει ήδη καταχωρηθεί.
  6. Χρησιμοποιούμε τις υπηρεσίες της συνάρτησης WordPress validate_username συνάρτηση για να βεβαιωθούμε ότι το όνομα χρήστη είναι έγκυρο.
  7. Βεβαιωνόμαστε ότι ο κωδικός πρόσβασης που εισάγεται από τους χρήστες δεν είναι μικρότερος από 5 χαρακτήρες.
  8. Ελέγχουμε αν το email είναι ένα έγκυρο email.
  9. Ελέγχουμε αν το email είναι ήδη καταχωρημένο.
  10. Εάν συμπληρωθεί το πεδίο ιστοσελίδας, ελέγχουμε για να δούμε αν είναι έγκυρο.
  11. Τέλος, εκτελούμε βρόχο μέσα από τα σφάλματα στο στιγμιότυπό μας WP_Error και εμφανίζουμε το μεμονωμένο σφάλμα.
    Τελειώσαμε με τον κώδικα της συνάρτησης επικύρωσης.

Επόμενη είναι η συνάρτηση του plugin complete_registration() που χειρίζεται την εγγραφή του χρήστη.
Η εγγραφή του χρήστη γίνεται ουσιαστικά από τη συνάρτηση wp_insert_user, η οποία δέχεται μια σειρά από δεδομένα χρήστη.

Στη συνάρτηση complete_registration() παραπάνω, κάναμε το στιγμιότυπο της WP_Error, $reg_errors και τη μεταβλητή των πεδίων φόρμας καθολικά έτσι ώστε να μπορούμε να έχουμε πρόσβαση στη μεταβλητή σε global εμβέλεια.

Στη συνέχεια ελέγχουμε αν το στιγμιότυπο χειρισμού σφαλμάτων $reg_errors περιέχει κάποιο σφάλμα. Εάν δεν εντοπιστεί κάποιο σφάλμα, προχωρούμε στη συμπλήρωση του πίνακα $userdata και εισαγάγουμε τα στοιχεία εγγραφής του χρήστη στη βάση δεδομένων του WordPress και εμφανίζουμε ένα μήνυμα Registration Complete με ένα σύνδεσμο στη σελίδα σύνδεσης.

Επόμενη, είναι η υπερ-συνάρτση custom_registration_function() που θέτει όλες τις λειτουργίες που δημιουργήσαμε παραπάνω σε χρήση.

Επιτρέψτε μου να εξηγήσω τον κώδικα στη συνάρτηση custom_registration_function().

Πρώτα, καθορίζουμε αν η φόρμα έχει υποβληθεί ελέγχοντας αν το $_POST ['submit'] έχει οριστεί. Εάν η φόρμα έχει υποβληθεί, καλούμε τη συνάρτηση registration_validation για να επικυρώσουμε τη φόρμα που υπέβαλε ο χρήστης.

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

Πρέπει να καλέσουμε τη συνάρτηση registration_form για να εμφανίσουμε τη φόρμα εγγραφής.

Θυμάστε που ανέφερα ότι πρόκειται να παρέχουμε υποστήριξη shortcode για το plugin εγγραφής; Παρακάτω είναι ο κώδικας για την υποστήριξη του shortcode.

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

Σημειώστε ότι δεν μπορείτε να πάρετε ακριβώς την ίδια εμφάνιση στο WordPress site σας ως αποτέλεσμα των διαφορετικών στυλ CSS.

 Χρήση του Plugin

Για να υλοποιήσετε το plugin σε μια σελίδα ή ανάρτηση του WordPress, χρησιμοποιήστε το shortcode [cr_custom_registration].

Για να υλοποιήσετε τη φόρμα εγγραφής σε μια συγκεκριμένη πλευρά του θέματός σας, προσθέστε την εξής ετικέτα προτύπου - <?php custom_registration_function(); ? >.
Μπορείτε να βρείτε το αρχείο του plugin από τα συνημμένα σε αυτό το άρθρο.

Περίληψη

Σε αυτό το άρθρο, πέρασαμε από τη διαδικασία της δημιουργίας ενός plugin που προσθέτει μια προσαρμοσμένη φόρμα εγγραφής στο WordPress. Μπορείτε να επεκτείνετε περαιτέρω τη φόρμα εγγραφής για να συμπεριλάβετε επιπλέον πεδία όπως ο ρόλος χρήστη, λογαριασμό AOL IM, αλλά βεβαιωθείτε ότι το πεδίο φόρμας περίεχει έγκυρα μετα δεδομένα για το wp_insert_user.

Εάν έχετε τυχόν απορίες και προτάσεις, μη διστάσετε να τις αφήσετε στα σχόλια!

Να θυμάστε ότι αν δυσκολευτήκατε να ακολουθήσετε αυτό το σεμινάριο και θέλετε μια απλή λύση, μπορείτε να δοκιμάσετε το plugin WordPress Registration Form που βρίσκεται στην αγορά Envato.

Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.