Skip to main content

Custom Field σε Component

https://manual.joomla.org/docs/general-concepts/forms-fields/example-custom-fields/

Έχει και παράδειγμα - κατέβασε τον κώδικα. Τα έχει στο site frontend αλλά εσύ βάλτα στο backend.

Είναι τα <field που χρησιμοποιούμε στα forms. Κοιτάς στο src/Field και στο forms. Με το renderField στο edit.php το εμφανίζεις.

Μπορείς ακόμα να καλέσεις και αρχείο με WebAssetManager κλπ ή να κάνεις use ένα helper π.χ. ή να τραβήξεις από model πληροφορίες.

Δημιουργία custom πεδίου

Φτιάξε ένα πεδίο δικό σου ή κάνε extend ένα ήδη υπάρχον:

  • Δικό σου: κάνεις extend το FormField
  • Extend υπάρχοντος: κάνεις extend αυτά που υπάρχουν ήδη π.χ. το ListField το οποίο κάνει extend το FormField

Μπορείς να βρεις όλα τα πεδία στο public_html/libraries/src/Form/Field

Παράδειγμα: Χάρτης με lat/long

Π.χ. να παίρνεις το lat/long on click από χάρτη:

Πώς δουλεύει

Κάθε πεδίο χρησιμοποιεί την συνάρτηση getInput για να σου δείξει το πεδίο.

Π.χ. το text field στη getInput έχει:

<input type="text">

Εσύ εκεί θα γράψεις τα δικά σου. Και καλό είναι στη __construct με WebAssetManager να φορτώνεις τα αρχεία που θες.