Συστήματα Διαχείρισης Περιεχομένου στον Παγκόσμιο Ιστό Διάλεξη #7 η : Joomla!: Ενθέματα (modules) Γαβαλάς Δαμιανός dgavalas@aegean.gr Ενθέματα (modules) Τα ενθέματα (module) είναι επεκτάσεις που χρησιμοποιούνται για την εμφάνιση πληροφοριών στην ιστοσελίδα Joomla! Τα ενθέματα εμφανίζονται σαν "κουτιά" που πλαισιώνουν το πρότυπο Μπορούν να τοποθετηθούν σε οποιοδήποτε σημείο του πρότυπου (αριστερά, δεξιά, πάνω, ενδιάμεσα, κάτω) Υπάρχουν πολλών ειδών ενθέματα και στη βασική εγκατάσταση του Joomla!, αλλά και πολλά τρίτων κατασκευαστών δωρεάν ή εμπορικά Επίσης σε ένα ένθεμα μπορούμε να εμφανίσουμε και δικό μας περιεχόμενο αφού είναι διαθέσιμος ο κειμενογράφος του Joomla!. 1
Modules στη βασική εγκατάσταση του Joomla! Latest articles Login form Popular articles Polls Who is online και άλλα πολλά Αντιπροσωπευτικά modules τρίτων κατασκευαστών Τον καιρό Ένα slideshow Την Fun Page από το Facebook Ένα χάρτη Τα νέα προϊόντα από ένα ηλεκτρονικό κατάστημα και άλλα πολλά. 2
Παραμετροποίηση Menus Τα menus θεωρούνται ενθέματα (modules) Συχνά, θέλουμε να τροποποιήσουμε τον τρόπο με τον οποίο εμφανίζονται τα μενού στις σελίδες μας Τι μπορούμε να κάνουμε σε σχέση με το μενού: Να αλλάξουμε τον τίτλο του μενού Να μεταφέρουμε το μενού σε άλλο σημείο της σελίδας Να ρυθμίσουμε το επίπεδο εδο πρόσβασης στο μενού Οι περισσότερες ρυθμίσεις γίνονται από το Extensions > Template Manager 3
Αλλαγή τίτλου, θέσης και επιπέδου πρόσβασης μενού Προσπαθήστε να αφαιρέσετε τον τίτλο Home του μενού Main Menu Στη συνέχεια δώστε ένα νέο τίτλο: Navigate our site Προσπαθήστε να εξαφανίσετε ολόκληρο το menu Ξαναεμφανίστε το και μεταφέρετε ολόκληρο το μενού στα δεξιά της σελίδας Επαναφέρετέ το στα αριστερά και τροποποιήστε μια ρύθμιση που θα το κάνει προσβάσιμο μόνο σε εγγεγραμμένους (registered) χρήστες Εξωτερικά links και διαχωριστές (seperators) σε menus Δημιουργήστε ένα νέο menu item που να αποτελεί εξωτερικό σύνδεσμο (external link) με τίτλο Google προς την κύρια σελίδα του google την κύρια σελίδα του google Προσθέστε ένα διαχωριστή μεταξύ των εσωτερικών και του εξωτερικού συνδέσμου, με τίτλο 4
Ομαδοποίηση menu items Συχνά συναντάμε σελίδες όπου μια δευτερεύουσα λίστα με επιλογές μενού (menu items) έχει νόημα να εμφανιστεί αφότου ένα πρωτεύων menu item έχει πρώτα επιλεγεί Ομαδοποιήστε τα Ingredient types και A list of fruits κάτω από γονικό στοιχείο το menu item Ingredients we use (ώστε να εμφανίζονται ως επιλογές στο μενού μόνο εφόσον έχει ήδη επιλεγεί το Ingredients we use ) Άλλες ρυθμίσεις σε menu items Αλλάξτε τη σειρά εμφάνισης του menu item Reviews ώστε να εμφανίζεται πάνω από το διαχωριστή Ρυθμίστε το Reviews ώστε η σελίδα στην οποία δείχνει Ρυθμίστε το Reviews ώστε η σελίδα στην οποία δείχνει να ανοίγει σε νέο παράθυρο browser, χωρίς την τυπική μπάρα πλοήγησης των browsers Αλλάξτε τον τίτλο σελίδας (page title όχι menu item title) που εμφανίζεται όταν επιλέγεται το menu item Ingredients we use στο πιο περιγραφικό Ingredients we use in our dishes 5
Δημιουργία νέου μενού Δημιουργήστε (επιπλέον του Main Menu) ένα νέο menu: Unique name: ingredients Title: Ingredients Menu Description: A menu of ingredients Module title: Ingredients Προσθέστε σε αυτό τρία νέα άρθρα με category list layout : Fruits, Herbs, Vegetables (και αντίστοιχους τίτλους) Σημείωση: το νέο μενού δε θα εμφανιστεί παρά μόνο αν ενεργοποιήσετε το αντίστοιχο module από τον Module Manager Επί τη ευκαιρία, τοποθετήστε το νέο μενού στα δεξιά της σελίδας Αλλαγή default menu item Συχνά θέλουμε, όταν κάποιος επισκέπτεται την κύρια σελίδα μας (http://localhost:8080/restaurant/), να εμφανίζεται ένα συγκεκριμένο άρθρο ως προκαθορισμένο (default) Προσπαθήστε να αλλάξετε το default άρθρο σε εκείνο στο οποίο δείχνει το menu item Seasonal Specialties του Main Menu 6
Χρήση του κάδου απορριμμάτων (Trash) Σε αντιστοιχία με τα λειτουργικά συστήματα, όταν διαγράφουμε ένα στοιχείο (π.χ. menu item), αυτό διατηρείται σε μια δομή που ονομάζεται Trash Το στοιχείο μπορεί είτε να διαγραφεί οριστικά είτε να ανακτηθεί σε μεταγενέστερο χρόνο από το Trash Αρχικά διαγράψτε το menu item Reviews Εν συνέχεια να το επαναφέρετε στην παλιά του θέση Στην αρχή δε θα εμφανίζετε,, θα χρειαστεί να το δημοσιεύσετε εκ νέου Δημιουργία νέου module Θέλουμε να προσθέσουμε ένα νέο module που να εμφανίζει τις ώρες λειτουργίας του εστιατορίου μας Δημιουργήστε ένα νέο module custom HTML, με τίτλο Hours, με το ακόλουθο περιεχόμενο (κάντε τα ονόματα των ημερών bold): Sunday: 11:00 AM 4:00 PM Monday Friday: 7:30 AM 10:00 PM Saturday: 8:30 AM 9:00 PM Τοποθετήστε το νέο module στα δεξιά της σελίδας και ή ξ ης ς κάντε το να εμφανίζεται πάνω από το module Ingredients Δείτε στο Preview του template που χρησιμοποιείται (στον Template Manager) τις διαθέσιμες επιλογές θέσης για την εμφάνιση του module στη σελίδα 7
Επιλεκτική εμφάνιση ενός module Συχνά, ένα module έχει νόημα να εμφανίζεται μόνο εφόσον κάποιο συγκεκριμένο menu item έχει προηγούμενα επιλεγεί Τροποποιήστε τις ρυθμίσεις του module Ingredients ώστε να εμφανίζεται μόνο εφόσον έχει προηγούμενα γίνει κλικ πάνω σε οποιοδήποτε menu item σχετίζεται με αυτό Προσθήκη ενός login module Προσθέστε ένα νέο Login module με τίτλος Login Κάντε login χρησιμοποιώντας τα admin username/password. Εν συνεχεία κάντε logout Προσθέστε το κείμενο Use your fresh and local login ώστε να εμφανίζεται πριν την login φόρμα (pre text) και το κείμενο Special offers are available for registered users μετά τη login φόρμα Ρυθμίστε τη σελίδα Seasonal specialties ως εκείνη στην οποία θα ανακατευθύνεται (re direct) όποιος κάνει επιτυχημένα login. Αντίστοιχα ορίστε το Reviews ως τη σελίδα για το logout re direction Απενεργοποιήστε το χαιρετισμό στο username Ποια η σημασία της ρύθμισης Encrypt login form? 8
Σχεδιασμός χρηστικής πλοήγησης (navigation) Βασική σχεδιαστική αρχή στη σχεδίαση συστημάτων πλοήγησης είναι η παροχή στο χρήστη επαρκούς πληροφορίας σε σχέση ημε: που βρίσκεται ανά πάσα στιγμή που βρίσκεται σε σχέση με το υπόλοιπο site ποια είναι η ιεραρχία του site Ένα εργαλείο για την παροχή τέτοιας πληροφορίας είναι το breadcrumb, ενός είδους μονοπατιού θέσης Παροχή πληροφόρησης θέσης μέσω breadcrumb 9
Προσθήκη ενός breadcrumb Δημιουργήστε ένα νέο module τύπου breadcramb με τίτλο Breadcrumbs ο οποίος όμως δε θα εμφανίζεται στη σελίδα (θέλουμε να φαίνονται μόνο τα breadcrumbs) Δηλώστε για το νέο αυτό module την κατάλληλη θέση στη σελίδα σας (?) Δοκιμάστε στο front end αν το breadcrumb εμφανίζεται και λειτουργεί σωστά Ρυθμίστε το breadbrumb module ώστε αντί Home ως πρώτο στη σειρά να εμφανίζεται το Fresh and Local Αλλάξτε και το διαχωριστικό που φαίνεται μεταξύ των διαδοχικών ιεραρχικών επιπέδων του breadcrumb σε > RSS Η τεχνολογία RSS (Really Simple Syndication Πολύ Απλή Διανομή), αναφέρεται σε μία προτυποποιημένη μέθοδο ανταλλαγής ψηφιακού περιεχομένου μέσω του web, βασισμένη στη γλώσσα σήμανσης. Ένας χρήστης του Διαδικτύου μπορεί έτσι να ενημερώνεται αυτομάτως για γεγονότα και νέα από όσες ιστοσελίδες υποστηρίζουν RSS, αρκεί να έχει εγγραφεί ο ίδιος συνδρομητής στην αντίστοιχη υπηρεσία της εκάστοτε ιστοσελίδας. Οι εν λόγω ενημερώσεις («ροές RSS» RSS feeds ) περιέχουν τα πλήρη δεδομένα, σύνοψη των δεδομένων, σχετικά μεταδεδομένα, ημερομηνία έκδοσης κλπ, ενώ αποστέλλονται αυτομάτως στον συνδρομητή μέσω Internet 10
RSS (συνέχεια) Συνήθως η διαδικασία απαιτεί ένα ειδικό λογισμικό «αναγνώστη» (RSS reader), το οποίο μπορεί να είναι ενσωματωμένο μ στον browser του χρήστη), όπου κάποιος πληκτρολογεί τη διεύθυνση URL του ζητούμενου RSS feed μιας ιστοσελίδας, ώστε να εγγραφεί σε αυτό ως συνδρομητής. Ο αναγνώστης ελέγχει τακτικά για ενημερώσεις περιεχομένου τις καταγεγραμμένες ροές, από όλες τις διαφορετικές πηγές στις οποίες είναι εγγεγραμμένος ο συνδρομητής, αναλαμβάνοντας από μόνος του να μεταφέρει τις εν λόγω ενημερώσεις όποτε χρειάζεται και να τις συγκεντρώνει στον υπολογιστή του χρήστη. Ο αναγνώστης παρέχει στο χρήστη μία εξατομικευμένη διεπαφή για όλα τα feeds που έχει επιλέξει να παρακολουθεί. Δημιουργία RSS στο Joomla! Δημιουργήστε ένα νέα module τύπου RSS με τίτλο Feeds και αναζητήστε το στο κάτω αριστερά μέρος του front end Αλλάξτε το κείμενο του module σε RSS Στο front end, πατώντας στο link RSS ο browser δίνει τη δυνατότητα στον επισκέπτη της σελίδας να εγγραφεί συνδρομητής για μελλοντικές ενημερώσεις των άρθρων της συγκεκριμένης σελίδας Τροποποιήστε το RSS module ώστε να εμφανίζεται μόνο όταν ο επισκέπτης έχει επιλέξει το menu item Ingredients we use 11
Random image module Δημιουργήστε ένα νέα module που να φορτώνει μια τυχαία εικόνα (ανάμεσα σε μια σειρά διαθέσιμων εικόνων) Οι εικόνες σας δίνονται σε zip αρχείο και αφορούν τα πιάτα της ημέρας του εστιατορίου Ονομάστε το module Dish of the day Αν έχετε στη διάθεσή σας χώρο 153 x 114 (pixels) για να εμφανίσετε τις εικόνες, κάνετε χρήση ενός λογισμικού επεξεργασίας ξργ εικόνας ςγια να τροποποιήστε το μγ μέγεθος των εικόνων που σας δίνονται, αντίστοιχα (ώστε να η ποιότητά τους να είναι ικανοποιητική αλλά και η μεταφόρτωσή τους σύντομη). 12