ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ Ι ΡΥΜΑ ΚΡΗΤΗΣ Σχολή Τεχνολογικών Εφαρµογών. Τµήµα Εφαρµοσµένης Πληροφορικής και Πολυµέσων ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ



Σχετικά έγγραφα
ΤΕΙ ΚΑΒΑΛΑΣ. Πτυχιακή εργασία ΕΙΣΑΓΩΓΗ. Μιλτιάδης Κακλαμάνης

Σεμινάριο Wordpress CMS (Δημιουργία Δυναμικών Ιστοσελίδων)

Μια καλή επιλογή θα ήταν (χωρίζοντας τις λέξεις με παύλα -) ή

Σύστημα Διαχείρισης Περιεχομένου

ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΑ ΕΡΓΑΛΕΙΑ ΓΙΑ ΤΟ ΔΙΑΔΙΚΤΥΟ

Εισαγωγή στις ΤΠΕ ΙΙ Γιάννης Βρέλλης ΠΤΔΕ-Πανεπιστήμιο Ιωαννίνων. World Wide Web. Παγκόσμιος Ιστός

Ανάπτυξη πλήρους διαδικτυακής e-commerce εφαρμογής με χρήση του CMS WordPress

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο

Σύστημα διαχείρισης περιεχομένου (Content Management System)

Τι είναι ένα σύστημα διαχείρισης περιεχομένου; δυναμικό περιεχόμενο

Σχεδίαση και ανάπτυξη ιστοχώρου του εργαστηρίου Μηχανικής Λογισμικού. Παληόπουλος Αποστόλης-Παπαναγιώτου Παναγιώτης

Δυναμικές Ιστοσελίδες στο Πανελλήνιο Σχολικό Δίκτυο

Εισαγωγή στις αρχές του CMS. Joomla Training. Wordpress Training.

Σχεδιασμός και Ανάπτυξη Ιστοσελίδων ΙΙ ΙΕΚ ΤΡΙΑΝΔΡΙΑΣ ΓΡΑΦΙΣΤΑΣ ΕΝΤΥΠΟΥ ΚΑΙ ΗΛΕΚΤΡΟΝΙΚΩΝ ΜΕΣΩΝ. CMS Content Management Systems Joomla

Αξιολόγηση Ιστοσελίδων. Εργασία. Χαράλαμπος Κουτσουρελάκης

Χαρακτηριστικά ιστοσελίδας

οµή της παρουσίασης Στατιστικά στοιχεία Άδειες χρήσης Γενικά στοιχεία Βασικά χαρακτηριστικά του browser

ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ ΙΑ ΙΚΤΥΑΚΟΥ ΠΛΗΡΟΦΟΡΙΑΚΟΎ ΣΥΣΤΗΜΑΤΟΣ. Τρίτη, 7 Φεβρουαρίου 2012

Σχολείο, Εκπαιδευτικοί Διαδικτυακή Παρουσία με χρήση CMS. Α. Χατζηπαπαδόπουλος Φ. Δεληγιάννης 1 ο ΕΚ Αθηνών

Μελέτη περίπτωσης συστήµατος διαχείρισης οπτικοακουστικού περιεχοµένου δηµιουργηµένου από χρήστες Flickr

ΟΙΚΟΝΟΜΙΚΗ ΠΡΟΣΦΟΡΑ ΣΧΕ ΙΑΣΗΣ ΚΑΙ ΚΑΤΑΣΚΕΥΗΣ web εφαρµογής - ηλεκτρονικού κατατήµατος για έξυπνα κινητά

Συςτήματα Διαχείριςησ Περιεχομένου

ΘΕΜΑ: Πρόσκληση εκδήλωσης ενδιαφέροντος για την παροχή υπηρεσιών με τίτλο «Σχεδιασμός λογοτύπου και σχεδιασμός και κατασκευή δυναμικής ιστοσελίδας»

Σχεδίαση και Ανάπτυξη Ιστότοπων

Μέρος 3 ο : Βασικές Έννοιες για δυναμικές ιστοσελίδες

Η HTML 5 θα αλλάξει το Web?

Αρχίζοντας. Το Joomla τρέχει: Στο Joomla μπορούμε να προσθέσουμε επιπλέον λειτουργικότητα, να την επεκτείνουμε δηλαδή (extensions) PHP MySql

Τα είδη των ιστοσελίδων. Web Sites E-commerce Sites CMS & Blog Sites CMS Flash Facebook Layouts Tumblr Themes

ΣΧΕΔΙΑΣΜΟΣ ΚΑΙ ΑΝΑΠΤΥΞΗ ΙΣΤΟΤΟΠΩΝ

Εφαρµογή: Σύστηµα ιαχείρισης ιαδικτυακού Περίπτερου / Ιστοσελίδας στον διαδικτυακό τόπο kalliergea.gr

Εργαλεία ανάπτυξης εφαρμογών internet Ι

ίκτυα - Internet Υπηρεσίες Internet O Παγκόσµιος Ιστός (World Wide Web) Ηλεκτρονική Αλληλογραφία ( ) Υπηρεσία FTP (File Transfer Protocol)

Τίτλος Πλατφόρµα Ασύγχρονης Τηλεκπαίδευσης. Συντάκτης. Ακαδηµαϊκό ιαδίκτυο GUnet Οµάδα Ασύγχρονης Τηλεκπαίδευσης

ΑΡΧΕς ΛΕΙΤΟΥΡΓΙΑς CMS (Content Management System) ΚΑΙ ΕΦΑΡΜΟΓΗ ΤΟΥς ςε ΜΙΚΡΟΜΕςΑΙΕς ΕΠΙΧΕΙΡΗςΕΙς

Διαδίκτυο: δίκτυο διασυνδεμένων δικτύων Ξεκίνησε ως ένα μικρό κλειστό στρατιωτικό δίκτυο, απόρροια του Ψυχρού Πολέμου μεταξύ ΗΠΑ και ΕΣΣΔ.

ΑΝΑΚΟΙΝΩΣΗ ΔΙΑΔΙΚΑΣΙΑΣ ΑΠΕΥΘΕΙΑΣ ΑΝΑΘΕΣΗΣ. Αριθμ. Πρωτ.: /2017 Ο ΕΙΔΙΚΟΣ ΛΟΓΑΡΙΑΣΜΟΣ ΚΟΝΔΥΛΙΩΝ ΕΡΕΥΝΑΣ

Διαδίκτυο: Ιστορία, Δομή, Υπηρεσίες

Χαρακτηριστικά ιστοσελίδας

Παραδοτέο Π5.3: Έντυπο και ψηφιακό υλικό (Web site) προβολής των δράσεων έργου

Βασικές Έννοιες Web Εφαρμογών

φιλοξενία & διαχείριση ιστοσελίδων

Π Τ Υ Χ Ι Α Κ Η Ε Ρ Γ Α Σ Ι Α

Χαρακτηριστικά ιστοσελίδας

περιβάλλον joomla µε έµφαση στην υποστήριξη πολυµέσων

TEC410 Ανάπτυξη Δικτυακών Τόπων (Δ εξάμηνο)

Ενσωματωμένα controls τα οποία προσαρμόζονται και χρησιμοποιούνται σε οποιαδήποτε ιστοσελίδα επιλέγει ο φορέας.

Χαρακτηριστικά ιστοσελίδας

Σταύρος Καουκάκης Ευτύχιος Βαβουράκης

ΑΝΑΚΟΙΝΩΣΕΙΣ ΠΡΟΜΗΘΕΙΩΝ/ΕΡΓΑΣΙΩΝ ΜΕ ΛΗΨΗ ΠΡΟΣΦΟΡΏΝ 10/16

ΕΛΑΧΙΣΤΕΣ ΑΠΑΙΤΗΣΕΙΣ ΕΞΟΠΛΙΣΜΟΥ ΕΠΙΚΟΙΝΩΝΙΑ... 23

Η βασική εργαλειοθήκη του διαδικτύου

Σεμινάριο joomla! 3. Διοργάνωση: Άλφα Εκπαιδευτική Εισηγητής: Μοτσενίγος Ιωάννης Ηλεκτρονικός Μηχανικός-Σύμβουλος Internet Marketing- Web Designer

Εισαγωγη στην html. Η δομή μιας ιστοσελίδας (αρχείο html) Η βασική δομή ενός αρχείου html είναι η εξής: <html> <head>

ΤΕΧΝΟΛΟΓΙΕΣ ΣΧΕΔΙΑΣΗΣ ΔΙΑΔΙΚΤΥΑΚΟΥ ΤΟΠΟΥ (Web Site Design Technologies)

Στρατηγική ανάπτυξη δικτυακού κόμβου

1 ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΑΣ ΓΕΩΠΟΝΙΑΣ - ΤΜΗΜΑ ΦΥΤΙΚΗΣ ΠΑΡΑΓΩΓΗΣ

Don t hire us if you want average. We only do exceptional.

ΕΠΙΧΕΙΡΗΣΙΑΚΟ ΠΡΟΓΡΑΜΜΑ «ΚΟΙΝΩΝΙΑ ΤΗΣ ΠΛΗΡΟΦΟΡΙΑΣ» Γ Κ.Π.Σ.

Γαβαλάς αµιανός

Οι διαδικασίες ενος CMS είναι σχεδιασμένες για να:

Ως Διαδίκτυο (Internet) ορίζεται το παγκόσμιο (διεθνές) δίκτυο ηλεκτρονικών υπολογιστών (international network).

e-κπαίδευση Πλατφόρµα Ασύγχρονης Τηλε-κπαίδευσης Οδηγίες χρήσης για τους σπουδαστές του ΤΕΙ Αθήνας και τους επισκέπτες της δικτυακής πύλης e-κπαίδευση

Πρωτόκολλα Επικοινωνίας και Τείχος Προστασίας

ΠΡΟΤΑΣΗ-ΑΝΑΘΕΣΗ ΕΡΓΟΥ ΠΟΥ ΑΦΟΡΑ ΣΤΗΝ ΑΝΑΠΤΥΞΗ WEB SITE ΓΙΑ ΤΗΝ ΕΤΑΙΡΕΙΑ ΣΑΣ ESHOP

6 Εισαγωγή στο Wordpress 3.x

Αρχιτεκτονική του πληροφοριακού συστήµατος Cardisoft Γραµµατεία 2003 ιαχείριση Προσωπικού

Απαντήστε στις παρακάτω ερωτήσεις πολλαπλής επιλογής (μόνο μία ερώτηση είναι σωστή):

JOOMLA CMS ΤΙΤΛΟΣ ΕΡΓΑΣΙΑΣ: ΑΝΑΠΤΥΞΗ ΔΙΑΔΙΚΤΥΑΚΟΥ ΠΛΗΡΟΦΟΡΙΑΚΟΥ ΣΥΣΤΗΜΑΤΟΣ ΑΕΡΟΔΡΟΜΙΟΥ ΜΕ ΧΡΗΣΗ ΣΥΣΤΗΜΑΤΟΣ ΔΙΑΧΕΙΡΙΣΗΣ ΠΕΡΙΕΧΟΜΕΝΟΥ (CMS)

Σχεδιάζοντας Εφαρμογές για το Διαδίκτυο

Εισαγωγή στον Παγκόσμιο ιστό και στη γλώσσα Html. Χρ. Ηλιούδης

Το γεγονός ότι αποτελεί λογισµικό ανοικτού κώδικα το καθιστά αρκετά ευέλικτο σε συνεχείς αλλαγές και βελτιώσεις. Υπάρχει µια πληθώρα χρηστών που το χρ

Ιόνιο Πανεπιστήµιο Τµήµα Αρχειονοµίας - Βιβλιοθηκονοµίας. Υπηρεσίες Internet. ίκτυα Η/Υ. Επίπεδο Εφαρµογής. Ενότητα θ

GoDigital.CMS Content Management System. Πλήρης διαχείριση περιεχομένου ιστοσελίδας

Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης

7.11 Πρωτόκολλα Εφαρµογής Βασικές και Προηγµένες Υπηρεσίες ιαδικτύου. Ηλεκτρονικό Ταχυδροµείο. Τεχνολογία ικτύων Επικοινωνιών ΙΙ

Σύστημα Διαχείρισης Περιεχομένου για τη δημιουργία δυναμικών ιστοσελίδων ΕΛ/ΛΑΚ Ηλιαδάκης Σταμάτης

ΕΡΓΑΣΙΑ. (στο µάθηµα: Τεχνολογίες Εφαρµογών ιαδικτύου του Η εξαµήνου σπουδών του Τµήµατος Πληροφορικής & Τηλ/νιών)

Μπορείτε τα δείτε βιντεάκι με τη διαδικασία εδώ:

Ενότητα 1η. Εισαγωγή στην Πληροφορική

Internet Business Hellas

GoDigital.Store E-Commerce Platform

Πλοήγηση www / Με τον Internet Explorer

Οδηγός Ηλεκτρονικού Επιχειρείν

ΔΕ10: Πληροφοριακά Συστήματα Διοίκησης IΙ Εργαστήριο # 2

ΕΛΟΤ ΕΝ ISO 9001:2008 QMSCERT - cert No.: /1480. ΕΛΟΤ ΕΝ ISO 14001:2004 QMSCERT - cert No.: /1481

ΠΑΝΕΠΙΣΤΗΜΙΟ ΜΑΚΕΔΟΝΙΑΣ - Π.Μ.Σ. ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ

Κεφάλαιο 11: Εισαγωγή στην HTML. Εφαρμογές Πληροφορικής Κεφ. 11 Καραμαούνας Πολύκαρπος

1. O FrontPage Explorer

interactivecommunication White Paper 2007, Cybertechnics Ltd. All rights reserved.

Εργαλεία Ανάπτυξης Εφαρμογών Internet I

Συνέδριο ΕΛΛΑΚ Open Source λογισμικό σε εφαρμογές του δημόσιου και ιδιωτικού τομέα

Βασικές Έννοιες Διαδικτύου, Wordpress και BuddyPress

World Wide Web: Ο παγκόσµιος ιστός Πληροφοριών

Περιεχόμενα. Visio / White paper 1

Περιεχόμενα. Δημιουργία σύνδεσης ΤΙ ΕΙΝΑΙ ΙΣΤΟΣΕΛΙΔΕΣ ΚΑΙ ΤΙ ΤΟΠΟΘΕΣΙΕΣ ΙΣΤΟΥ Γνωριμία με μια ιστοσελίδα:... 38

Κλέτσας Αλέξανδρος Τεχνικός ΚΕ.ΠΛΗ.ΝΕ.Τ. Σερρών 24/10/2014 ΚΕ.ΠΛΗ.ΝΕ.Τ. ΣΕΡΡΩΝ 1

ΕΓΧΕΙΡΙΔΙΟ ΜΑΘΗΤΗ. της Πλατφόρμας Τηλεκατάρτισης

17PROC

Στρατηγικό Σχέδιο Για τη Βιώσιµη Ανάπτυξη της Θεσσαλονίκης (ΣΣΒΑΘ) 1 η Ενδιάµεση Έκθεση 3. ηµιουργία και Λειτουργία Web site

Ref.: SLWS 1 5Copyright 2005 The European Computer Driving Licence Foundation Ltd Σελίδα 1 από 7

Transcript:

ΑΝΩΤΑΤΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ Ι ΡΥΜΑ ΚΡΗΤΗΣ Σχολή Τεχνολογικών Εφαρµογών Τµήµα Εφαρµοσµένης Πληροφορικής και Πολυµέσων ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΘΕΜΑ: «Τουριστικός Οδηγός της Ευρώπης - Τravel Guide of Europe» Εισηγητές Καθηγητές: Μιχαήλ Κλεισαρχάκης, Μαλάµος Αθανάσιος Σπουδάστρια: Αργυρώ Μανατάκη Α.Μ. 1910

ΕΥΧΑΡΙΣΤΙΕΣ Αρχικά θα ήθελα να ευχαριστήσω την οικογένεια µου που µε στήριξε ηθικά και οικονοµικά κατά την διάρκεια των σπουδών µου και κατά την διάρκεια εκπόνησης της εργασίας αυτής. Επίσης, ευχαριστώ τον εισηγητή καθηγητή µου Κλεισαρχάκη Μιχαήλ για την καθοριστική καθοδήγησή και τις εύστοχες συµβουλές του που οδήγησαν στο πέρας της πτυχιακής µου εργασίας. Τέλος, ευχαριστώ όλους τους καθηγητές του τµήµατος Εφαρµοσµένης Πληροφορικής και Πολυµέσων του ΑΤΕΙ Κρήτης για τις γνώσεις που µου παρέδωσαν στα τέσσερα χρόνια των σπουδών µου. Αργυρώ Μανατάκη ΑΜ 1910 2

ΠΕΡΙΛΗΨΗ Σκοπός της πτυχιακής αυτής εργασίας είναι η δηµιουργία µιας υπερµεσικής εφαρµογής (Web Site) που θα παρουσιάζει ένα Τουριστικό Οδηγό της Ευρώπης, µε χρήση του προγράµµατος Joomla, ενός σύγχρονου συστήµατος διαχείρισης περιεχοµένου (CMS). Ο οδηγός αυτός περιέχει πληροφορίες σε µορφή κειµένου για όλες τις χώρες της Ευρώπης, τα σηµαντικότερα αξιοθέατα τους σε µορφή εικόνων, videos και ήχων, υπηρεσίες on-line booking για αεροπορικά εισιτήρια και διαµονή, on-line αγορά ταξιδιωτικών οδηγών για κάθε ευρωπαική χώρα, υπηρεσία Google Map, RSS και άλλες υπηρεσίες που βοηθούν το χρήστη στην ευκολότερη πλοήγηση του στο site. Ο οδηγός αυτός απευθύνεται σε χρήστες του internet που αναζητούν εύκολες και γρήγορες πληροφορίες για τις χώρες της Ευρώπης, on-line κρατήσεις εισιτηρίων και ξενοδοχείων, γεωγραφικές απεικονίσεις όλων των Ευρωπαϊκών χωρών, καθώς και πολλές άλλες πληροφορίες και υπηρεσίες που βοηθούν τον επισκέπτη κατά τη διάρκεια της αναζήτησης του να κερδίσει χρόνο και χρήµατα και να πληροφορηθεί σωστά και επαρκώς για το ταξίδι του. Ακόµη, υπάρχει η δυνατότητα εγγραφής µελών στο site ώστε κάθε εγγεγραµµένος χρήστης να µπορεί να θέτει ερωτήµατα στο forum του site, να προσθέτει σχόλια και να συµµετέχει σε συζητήσεις µε άλλους χρήστες για οτιδήποτε τον απασχολεί. Η κατασκευή του Τουριστικού Οδηγού της Ευρώπης έχει γίνει µε τέτοιο τρόπο ώστε να είναι δυνατή η δυναµική ενηµέρωση των σελίδων του. Αργυρώ Μανατάκη ΑΜ 1910 3

ΠΕΡΙΕΧΟΜΕΝΑ: Κεφάλαιο 1 - Γενικές Γνώσεις 1.1 Τι είναι η ιστοσελίδα σελ. 8 1.2 Τι είναι ο ιστότοπος..σελ. 8 1.3 Τι είναι ο Web Browser σελ. 8 1.4 Τι είναι ο Web Server..σελ. 9 1.5 Τι είναι το Domain Name.σελ. 9 1.6 Τι είναι η στατική ιστοσελίδα.....σελ. 10 1.7 Τι είναι η δυναµική ιστοσελίδα...σελ. 11 1.8 HTML......σελ. 11 1.9 CSS...σελ. 13 1.9.1 Πλεονεκτήµατα CSS......σελ. 14 Κεφάλαιο 2 - Εισαγωγικές Πληροφορίες 2.1 Ελεύθερο λογισµικό......σελ. 15 2.1.1 Άδειες ελεύθερου λογισµικού...σελ. 15 2.1.2 Πλεονεκτήµατα χρήσης ελεύθερου λογισµικού...σελ. 16 2.2 Ορισµός του CMS (Σύστηµα ιαχείρισης Περιεχοµένου)..σελ. 16 2.2.1 Enterprise CMS...σελ. 17 2.2.2 Component CMS...σελ. 17 2.3 Ορισµός του Web-CMS...σελ. 18 2.3.1 Χαρακτηριστικά ενός CMS...σελ. 18 2.3.2 Πλεονεκτήµατα ενός CMS...σελ. 19 2.4 ιαθέσιµα Web - CMS...σελ. 20 2.4.1 CMS κλειστού κώδικα...σελ. 21 2.4.2 Τα πιο δηµοφιλή CMS κλειστού κώδικα...σελ. 21 2.4.3 Πλεονεκτήµατα Web - CMS κλειστού κώδικα...σελ. 22 Αργυρώ Μανατάκη ΑΜ 1910 4

2.4.4 Μειονεκτήµατα Web - CMS κλειστού κώδικα...σελ. 22 2.4.5 CMS ανοικτού κώδικα...σελ. 23 2.4.6 Τα πιο δηµοφιλή CMS ανοιχτού κώδικα...σελ. 23 2.4.7 Πλεονεκτήµατα Web - CMS ανοιχτού κώδικα...σελ. 24 2.4.8 Μειονεκτήµατα Web - CMS ανοιχτού κώδικα...σελ. 25 Κεφάλαιο 3 - Η αρχιτεκτονική ενός CMS ανοιχτού κώδικα Joomla 3.1 Τι είναι το Joomla...σελ. 26 3.2 Ιστορία του Joomla...σελ. 26 3.3 Χαρακτηριστικά του Joomla...σελ. 28 3.4 Η αρχιτεκτονική του Joomla...σελ. 29 3.4.1 Το υποσύστηµα συλλογής (Collection System)...σελ. 30 3.4.2 Το υποσύστηµα διαχείρισης (Management System)...σελ. 31 3.4.3 Το υποσύστηµα δηµοσίευσης (Publishing System)...σελ. 32 3.5 Επεκτασιµότητα του Joomla...σελ. 33 3.6 Η δοµή του Joomla...σελ. 36 3.6.1 ηµόσιο τµήµα (Front-end)...σελ. 36 3.6.2 Περιοχή διαχείρισης (Back-end)...σελ. 36 3.6.3 ικαιώµατα πρόσβασης (Access Rights)...σελ. 37 3.6.4 Μενού (Menu)...σελ. 37 3.6.5 Περιεχόµενο (Content)...σελ. 37 3.6.6 Επεκτάσεις (Extensions)...σελ. 37 3.6.7 Εφαρµογές (Components)...σελ. 38 3.6.8 Πρόσθετα (Plug-ins)...σελ. 38 3.6.9 Ενθέµατα (Μodules)...σελ. 38 3.6.10 Πρότυπα (Templates)...σελ. 38 3.6.11 ιαµόρφωση Ρυθµίσεων (Configuration Settings)...σελ. 38 3.6.12 Application Programming Interface (API)...σελ. 39 3.7 Σύγκριση του Joomla µε άλλα CMS...σελ. 39 Αργυρώ Μανατάκη ΑΜ 1910 5

Κεφάλαιο 4 - Εγκατάσταση απαραίτητων εργαλείων και Joomla 4.1 Τοπικός Server Apache...σελ. 42 4.2 PHP...σελ. 42 4.2.1 Βασικά χαρακτηριστικά της PHP...σελ. 43 4.3 MySQL...σελ. 45 4.3.1 Πλεονεκτήµατα της Mysql...σελ. 46 4.4 Εργαλείο phpmyadmin...σελ. 46 4.5 Εργαλεία που απαιτούνται...σελ. 47 4.6 Εγκατάσταση του XAMPP...σελ. 48 4.7 Εγκατάσταση του Joomla...σελ. 59 Κεφάλαιο 5 - ιαχείριση του Joomla site 5.1 Γενικές ρυθµίσεις στο Joomla (Global Configuration)...σελ. 67 5.1.1 Ιστότοπος (Site)...σελ. 67 5.1.1.1 Ρυθµίσεις Ιστότοπου (Site Settings)...σελ. 67 5.1.1.2 Ρυθµίσεις εδοµένων περιγραφής (Metadata Settings)......σελ. 68 5.1.1.3 Ρυθµίσεις SEO (SEO Settings)...σελ. 69 5.1.2 Σύστηµα (System)...σελ. 69 5.1.2.1 Ρυθµίσεις συστήµατος (System Settings)...σελ. 69 5.1.2.2 Ρυθµίσεις Χρήστη (User Settings)...σελ. 70 5.1.2.3 Ρυθµίσεις Πολυµέσων (Media Settings)...σελ. 71 5.1.2.4 Ρυθµίσεις Εύρεσης Λαθών (Debug Settings)...σελ. 71 5.1.2.5 Ρυθµίσεις Προσωρινής Αποθήκευσης (Cache Settings)......σελ. 72 5.1.2.6 Ρυθµίσεις Συνεδρίας (Session Settings)...σελ. 72 5.1.3 ιακοµιστής (Server)...σελ. 72 5.1.3.1 Ρυθµίσεις ιακοµιστή (Server Settings)...σελ. 72 5.1.3.2 Τοπικές Ρυθµίσεις (Locale Settings)...σελ. 73 Αργυρώ Μανατάκη ΑΜ 1910 6

5.1.3.3 Ρυθµίσεις FTP (FTP Settings)...σελ. 73 5.1.3.4 Ρυθµίσεις Βάσης εδοµένων (Database Settings)...σελ. 73 5.1.3.5 Ρυθµίσεις Ηλεκτρονικού Ταχυδροµείου (Mail Settings)......σελ. 74 5.2 οµή του περιεχοµένου στο Joomla (Content)...σελ. 74 5.2.1 Αυτόνοµα κείµενα...σελ. 75 5.2.2 Κείµενα ενταγµένα σε Ενότητες / Κατηγορίες...σελ. 75 5.2.3 Εφαρµογές (Components)...σελ. 76 5.2.4 Ενθέµατα (Modules)...σελ. 77 5.3 Επιλογή Προτύπου (Template)...σελ. 77 5.4 Joomla Extensions...σελ. 77 5.4.1 Joom!Fish Component...σελ. 78 5.4.2 Phoca Gallery Component...σελ. 79 5.4.3 ccboard Component...σελ. 80 5.4.4 hwdvideoshare Component...σελ. 82 5.4.5 JComments Component...σελ. 83 5.4.6 Xmap Component...σελ. 85 5.4.7 Art Clock Module...σελ. 85 5.4.8 Yahoo Currency Converter Module...σελ. 87 5.4.9 Phoca Gallery Module...σελ. 88 5.4.10 Phoca Gallery Slideshow Plugin...σελ. 90 5.4.11 Google Weather Plugin...σελ. 91 5.5 Πλοήγηση ικτυακού Τόπου σε επίπεδο ιαχειριστή...σελ. 94 5.6 Πλοήγηση ικτυακού Τόπου σε επίπεδο Απλού Χρήστη..σελ. 107 Βιβλιογραφία...σελ.126 Αργυρώ Μανατάκη ΑΜ 1910 7

Κεφάλαιο 1 - Γενικές Γνώσεις 1.1 Τι είναι η ιστοσελίδα Ιστοσελίδα (αγγλικά: web page) είναι ένα είδος εγγράφου του παγκόσµιου ιστού (WWW) που περιλαµβάνει πληροφορίες µε την µορφή κειµένου, υπερκειµένου, εικόνας, βίντεο και ήχου. Μία ιστοσελίδα είναι προσβάσιµη από ένα Φυλλοµετρητή (web browser). Οι πληροφορίες της είναι συνήθως γραµµένες µε HTML ή XHTML. Μία ιστοσελίδα µπορεί να περιέχει ένα σύνολο πληροφοριών όπως κείµενα, γραφικά, φωτογραφίες, video, ήχους, χρώµατα ή ακόµα και διάφορα αρχεία. Οι επισκέπτες της ιστοσελίδας ονοµάζονται web clients. 1.2 Τι είναι ο ιστότοπος Ο ιστότοπος (εναλλακτικές ονοµασίες: ιστοχώρος ή δικτυακός τόπος, αγγλικά: web site ή Internet site) είναι το σύνολο των ιστοσελίδων που είναι συνδεδεµένες µεταξύ τους µε υπερσυνδέσεις (hyperlinks) και περιγράφουν µια δραστηριότητα. Ένας ιστότοπος µπορεί να είναι επαγγελµατικός, προσωπικός ή να ανήκει σε έναν οργανισµό ή µια οµάδα. Το σύνολο των ιστοτόπων που υπάρχουν απαρτίζουν στην ουσία το παγκόσµιο ιστό (www). 1.3 Τι είναι ο Web Browser Ένας Web browser (εναλλακτικές ονοµασίες: φυλλοµετρητής ιστοσελίδων, πλοηγός Web, πρόγραµµα περιήγησης Web ή περιηγητής Ιστού) είναι ένα λογισµικό που επιτρέπει στον χρήστη του να προβάλλει, και να αλληλεπιδρά µε, κείµενα, εικόνες, βίντεο, µουσική, παιχνίδια και άλλες πληροφορίες συνήθως αναρτηµένες σε µια ιστοσελίδα ενός ιστότοπου στον Παγκόσµιο Ιστό ή σε ένα τοπικό δίκτυο. Το κείµενο και οι εικόνες σε µια ιστοσελίδα µπορεί να περιέχουν υπερσυνδέσµους προς άλλες ιστοσελίδες του ίδιου ή διαφορετικού ιστότοπου. Ο Web browser επιτρέπει στον χρήστη την γρήγορη και εύκολη πρόσβαση σε πληροφορίες που βρίσκονται σε διάφορες ιστοσελίδες και ιστότοπους εναλλάσσοντας τις ιστοσελίδες µέσω των υπερσυνδέσµων. Οι φυλλοµετρητές χρησιµοποιούν τη γλώσσα µορφοποίησης HTML για την προβολή των ιστοσελίδων, για αυτό η εµφάνιση µιας ιστοσελίδας µπορεί να διαφέρει ανάλογα µε τον browser. Αργυρώ Μανατάκη ΑΜ 1910 8

Οι πλοηγοί Web ουσιαστικά αποτελούν λογισµικό πελάτη του δικτυακού πρωτοκόλλου επιπέδου εφαρµογών HTTP. Για κάθε browser διατίθενται, επίσης, και αρκετά πρόσθετα στοιχεία («add-ons» ή «plug-ins»), µε στόχο την επαύξηση των δυνατοτήτων τους, τη βελτίωση της χρηστικότητάς τους και την προστασία του χρήστη σε θέµατα ασφάλειας. Οι browsers που χρησιµοποιούνται περισσότερο είναι οι: Windows Internet Explorer Mozilla Firefox Apple Safari Netscape Navigator Opera Google Chrome 1.4 Τι είναι ο Web Server Ενας ιστότοπος για να µπορέσει να λειτουργήσει θα πρέπει να είναι αποθηκευµένος σε κάποιο Web Server. Ο Web Server στην ουσία είναι ο υπολογιστής εκείνος ο οποίος αναλαµβάνει να δηµοσιεύσει την κάθε ιστοσελίδα στο διαδίκτυο. Υπάρχουν δύο κύριοι Web Servers: ο Apache που συνήθως χρησιµοποιεί λειτουργικό σύστηµα Linux και ο IIS που χρησιµοποιεί λειτουργικό σύστηµα Windows. Το Joomla µπορεί να λειτουργήσει σε οποιονδήποτε Web Server αρκεί να υποστηρίζει τη γλώσσα PHP. 1.5 Τι είναι το Domain Name Domain Name (ελληνικά: όνοµα διαδικτύου, όνοµα τοµέα) είναι ένας περιορισµένος τοµέας των διεθνών πόρων ονοµατοδοσίας διαδικτύου ο οποίος εκχωρείται για αποκλειστική χρήση σε ένα φυσικό ή νοµικό πρόσωπο. Το όνοµα διαδικτύου δεν ανήκει στο πρόσωπο που του έχει εκχωρηθεί αλλά έχει µόνο την αποκλειστική δυνατότητα χρήσης του για όσο διάστηµα έχει καταβάλλει τα τέλη κατοχύρωσης. Τα domain names είναι στην ουσία η ταυτότητα των ιστοτόπων. Όταν θέλουµε να καλέσουµε µία ιστοσελίδα µέσα από ένα web browser θα πρέπει να γράψουµε στη Αργυρώ Μανατάκη ΑΜ 1910 9

γραµµή διεύθυνσεων το όνοµα της π.χ. www.joomla.gr. Γράφοντας αυτό το όνοµα στην ουσία ο web browser ψάχνει να βρεί σε ποιο Web server είναι αποθηκευµένη η συγκεκριµένη σελίδα. Εάν το Domain Name που πληκτρολογήσαµε είναι υπαρκτό το αποτέλεσµα θα είναι η ιστοσελίδα να εµφανιστεί στον Web browser. 1.6 Τι είναι η στατική ιστοσελίδα Οι δύο µεγάλες κατηγορίες ιστοσελίδων είναι οι λεγόµενες στατικές (static) και οι δυναµικές (dynamic). Όσον αφορά την όψη / εµφάνισή τους, δεν έχουν µεγάλες διαφορές µεταξύ τους, αλλά όσον αφορά την λειτουργία και τις δυνατότητές τους οι διαφορές είναι πολλές και ουσιαστικές. Οι στατικές ιστοσελίδες είναι ουσιαστικά απλά ηλεκτρονικά «έγγραφα». Μπορούν να περιέχουν κείµενα, φωτογραφίες, συνδέσµους (links), αρχεία για download, κινούµενα σχέδια (animated graphics). Είναι κατάλληλες κυρίως για την δηµιουργία «µόνιµων / στατικών παρουσιάσεων», όπου δεν υπάρχει συχνά η ανάγκη να τροποποιείται το περιεχόµενό τους. Ο χαρακτηρισµός «στατική», δεν σηµαίνει ότι τίποτα στην σελίδα δεν «κουνιέται», αντιθέτως µπορεί να έχει κινούµενα γραφικά. Σηµαίνει, λοιπόν, ότι το περιεχόµενο της κάθε σελίδας είναι σταθερό και συγκεκριµένο. Πρόκειται δηλαδή για σταθερά ηλεκτρονικά έγγραφα. Το κύριο µειονέκτηµά τους είναι ότι δεν είναι πρακτική η χρήση τους όταν χρειάζεται το περιεχόµενο της ιστοσελίδας να αλλάζει συχνά, π.χ. τουλάχιστον µία φορά την εβδοµάδα να προστίθεται κάποιο άρθρο, ή να αλλάζουν τα προϊόντα κ.ο.κ.. Αυτό συµβαίνει γιατί για να τροποποιηθεί µια στατική ιστοσελίδα, πρέπει να γίνουν επεµβάσεις απευθείας πάνω στην ιστοσελίδα, µε κάποιο σχετικό πρόγραµµα (html editor είτε απλό είτε WYSIWYG), µια διαδικασία δηλαδή όπως το να σβήνεις και να γράφεις σε ένα τετράδιο, που όµως χρειάζεται µια σχετική εµπειρία. Αργυρώ Μανατάκη ΑΜ 1910 10

1.7 Τι είναι η δυναµική ιστοσελίδα Οι δυναµικές ιστοσελίδες, µπορεί στην εµφάνιση, σε πολλές περιπτώσεις, να µην έχουν µεγάλη διαφορά µε τις στατικές, όµως οι δυνατότητές είναι πολύ περισσότερες, από πολλές πλευρές, καθώς στην περίπτωση αυτή ουσιαστικά πρόκειται για µία εφαρµογή (πρόγραµµα), και όχι ένα απλό ηλεκτρονικό έγγραφο. Συνήθως, οι δυναµικές ιστοσελίδες, χρησιµοποιούν κάποια βάση δεδοµένων (database), όπου αποθηκεύουν πληροφορίες και από εκεί αντλούν το περιεχόµενό τους, ανάλογα µε το τι ζητάει ο χρήστης / επισκέπτης σε κάθε του «κλικ». Η χρήση των βάσεων δεδοµένων, είναι αυτή που επιτρέπει την εύκολη προσθαφαίρεση περιεχοµένου στις δυναµικές ιστοσελίδες, καθώς δεν απαιτείται να επεξεργάζεται κανείς κάθε φορά την ίδια την ιστοσελίδα, αλλά απλά να διαχειρίζεται έµµεσα το περιεχόµενο στην βάση δεδοµένων και οι υπόλοιπες διαδικασίες γίνονται αυτοµατοποιηµένα από τον «µηχανισµό» της ιστοσελίδας. Για την εύκολη διαχείριση του περιεχοµένου σε µία δυναµική ιστοσελίδα, υπάρχει πρόσθετα στην ιστοσελίδα ένας εύχρηστος µηχανισµός «CMS» (Content Managment System), µέσω του οποίου η προσθαφαίρεση περιεχοµένου µπορεί να γίνει ακόµη και από κάποιον αρχάριο χρήστη CMS. 1.8 HTML H HTML είναι το ακρωνύµιο των λέξεων HyperText Markup Language (γλώσσα µορφοποίηση υπερκειµένου) και είναι η βασική γλώσσα δόµησης σελίδων του World Wide Web (ή απλά ιστού: Web). Είναι µία γλώσσα προγραµµατισµού. Χρησιµοποιείται για να σηµαίνει ένα τµήµα κειµένου και να το κάνει να εµφανίζεται καλύτερα. Επιτρέπει την ενσωµάτωση ήχου και εικόνων στις web σελίδες. Αρχικά είχε κατασκευασθεί µε σκοπό µόνο την µορφοποίηση κειµένου, αλλά µεγάλωσε και ενσωµάτωσε σχεδιαστικές τεχνικές. Η HTML χρησιµοποιεί ένα αριθµό από tags για την µορφοποίηση κειµένου, για την δηµιουργία συνδέσµων (links) µετάβασης ανάµεσα των σελίδα, για την εισαγωγή εικόνων, ήχου κ.α. Όταν ένας Web Browser ανοίγει ένα αρχείο HTML τα στοιχεία Αργυρώ Μανατάκη ΑΜ 1910 11

(tags) µεταφράζονται σε κατάλληλα χαρακτηριστικά µε αποτελέσµατα στην εµφάνιση και στην λειτουργικότητα της συγκεκριµένης σελίδας. Εκδόσεις HTML: Το 1990 ο Tim Berners-Lee από το Cern, το εργαστήριο φυσικής της Γενεύης, δηµιούργησε ένα νέο πρωτόκολλο µε το οποίο θα µπορούσαν να µεταφέρονται κάθε είδος αρχείων και αντικειµένων µέσα από το Internet. Το πρωτόκολλο αυτό ονοµάστηκε HTTP (HyperText Transfer Protocol) και σηµατοδότησε την αρχή του WWW όπως το ξέρουµε σήµερα. Οι σελίδες που ήταν η βάση του WWW ήτας γραµµένες στην πρώτη έκδοση της γλώσσας HTML. Το 1994 αναπτύσσεται το πρότυπο HTML 2.0 από ένα διεθνή οργανισµό (Internet Engineering Task Forse). H επόµενη έκδοση η 3.0 δεν έγινε αποδεκτή από τις Microsoft και Netscape οπότε γρήγορα αντικαταστάθηκε από την έκδοση 3.2 (1996). Η τελευταία περιελάµβανε πολλές από τις σηµάνσεις (tags) που είχαν εισάγει οι δύο εταιρίες. Η έκδοση 4.0 παρουσιάστηκε τον Ιούνιο του 1997. Γλώσσες Προγραµµατισµού στο Internet: Οι ενδογενείς αδυναµίες της HTML, µιας κατεξοχήν γλώσσας µορφοποίησης υπερκειµένου, σύντοµα οδήγησαν στην ανάπτυξη γλωσσών προγραµµατισµού στο Internet. Η χρήση των γλωσσών προγραµµατισµού κρίθηκε απαραίτητη αφού η εξάπλωση του Internet και η χρήση των σελίδων HTML για αλληλεπίδραση µε τους χρήστες (δυναµική αποστολή και λήψη δεδοµένων) δεν µπορούσε να πραγµατοποιηθεί µέσω της HTML. Αρχικά, αναπτύχθηκε από την εταιρεία Netscape η γλώσσα JavaScript η οποία, όπως και η ΗTML µεταφράζεται από τον Web Browser κατά την εµφάνιση της σελίδας. H Microsoft ανέπτυξε απ' την πλευρά της µια δική της έκδοση της γλώσσας JavaScript την οποία ονόµασε JScript και µια έκδοση της γλώσσας Basic ειδικά για το Internet που ονόµασε VBScript. Έτσι πλέον µε την χρήση των παραπάνω γλωσσών είναι δυνατό να ελεγχθούν και να προγραµµατιστούν όλα σχεδόν τα αντικείµενα που µπορεί να περιέχει µία ιστοσελίδα και µε τη χρήση είτε εντολών διαδικαστικού χαρακτήρα, είτε εντολών διακλάδωσης, όπως για παράδειγµα η δοµή [if then else ]. Η χρήση τέτοιου είδους "προγραµµάτων" ή όπως ονοµάζονται "scripts" είναι διαδικασία που έχει µεγάλες απαιτήσεις σε προγραµµατισµό και απευθύνεται σε προγραµµατιστές και µόνο. Αργυρώ Μανατάκη ΑΜ 1910 12

ηµιουργία αρχείων HTML: Η δηµιουργία αρχείων HTML είναι πολύ απλή. Αρκεί να τρέξουµε έναν οποιοδήποτε διορθωτή κειµένου text, όπως το Notepad των Windows. Να γράψουµε τον κώδικα HTML που επιθυµούµε και να το αποθηκεύσουµε (σώσουµε) σε ένα αρχείο µε κατάληξη.htm ή.html. Συνήθως αποθηκεύουµε µε επέκταση.html όταν θα δηµοσιεύσουµε τα αρχεία µας σε διακοµιστή Unix. Αντίθετα ο εξυπηρετητής Windows NT καταλαβαίνει τα αρχεία και σαν.htm και σαν.html. Κάθε HTML αρχείο αποτελείται από ένα στοιχείο <html> το οποίο χωρίζεται σε δύο µέρη το <head> και το <body>. Σκελετός κάθε HTML αρχείου 1.9 CSS Το CSS είναι το ακρωνύµιο των λέξεων Cascading Style Sheets στην κατασκευή ιστοσελίδων, είναι ηλεκτρονικά έγγραφα µε ένα σύνολο κανόνων για την µορφοποίηση µιας ιστοσελίδας. Ενδεικτικά, µπορεί να χρησιµοποιηθεί για να διαµορφώσει: Τα χρώµατα και το µέγεθος διαφόρων στοιχείων της ιστοσελίδας, Την συµπεριφορά τους σε διάφορες ενέργειες. Παλιότερα, συνηθίζονταν να διαµορφώνεται κάθε στοιχείο της ιστοσελίδας ξεχωριστά, σε κάθε µία ξεχωριστή σελίδα. Η µεγάλη ευκολία που προσφέρει η χρήση ενός CSS, είναι ότι οι ενδεχόµενες αλλαγές, γίνονται µόνο σε ένα έγγραφο και αυτόµατα εφαρµόζονται σε όλες τις σελίδας που το χρησιµοποιούν. Έτσι µία ιστοσελίδα που χρησιµοποιεί CSS, µπορεί πολύ ευκολότερα να αλλάξει όψη. Αργυρώ Μανατάκη ΑΜ 1910 13

Για την δηµιουργία και επεξεργασία εγγράφων CSS, µπορεί να χρησιµοποιηθεί ένας επεξεργαστής (editor) απλού κειµένου ή κάποιο πρόγραµµα ειδικό για CSS που προσφέρει αρκετές ευκολίες στην διαµόρφωση του κώδικα CSS. Ένα πρόγραµµα (open source, δωρεάν διαθέσιµο για download και χρήση) για την επεξεργασία εγγράφων CSS είναι το CSSED. 1.9.1 Πλεονεκτήµατα CSS Τα πλεονεκτήµατα των φύλλων στυλ CSS είναι: ιαχωρισµός του περιεχοµένου από την σχεδίαση, Ελαχιστοποίηση του χρόνου για τις αλλαγές στην σχεδίαση αφού όλα τα στοιχεία περιέχονται σε ένα αρχείο, Πιο καθαρός κώδικας HTML, Προσβασιµότητα από όλους τους Web Browsers, Πιστοποίηση από την W3C το µεγαλύτερο οργανισµό Web Standards, Αύξηση ταχύτητας της εµφάνισης της ιστοσελίδας, Μικρότερο µέγεθος αρχείων, Καλύτερη θέση στις µηχανές αναζήτησης λόγω καθαρότερου κώδικα, Οµοιόµορφη εµφάνιση όλων των ιστοσελίδων που συνδέονται µε το CSS αρχείο αφού τα στοιχεία δεν αλλάζουν Το κυριότερο µειονέκτηµα των φύλλων στυλ CSS σε ότι αφορά τη διάταξη είναι ότι οι παλιότεροι φυλλοµετρητές είτε δεν τα καταλαβαίνουν είτε τα παρερµηνεύουν. Αργυρώ Μανατάκη ΑΜ 1910 14

Κεφάλαιο 2 - Εισαγωγικές Πληροφορίες 2.1 Eλεύθερο Λογισµικό Το ελεύθερο λογισµικό όπως ορίζεται από το Ίδρυµα Eλευθέρου Λογισµικού (Free Software Foundation), είναι λογισµικό που µπορεί να χρησιµοποιηθεί, αντιγραφεί, µελετηθεί, τροποποιηθεί και αναδιανεµηθεί χωρίς περιορισµό. Η ελευθερία από τέτοιους περιορισµούς είναι βασικό στοιχείο στην ιδέα του «ελεύθερου λογισµικού», έτσι ώστε το αντίθετο του ελεύθερου λογισµικού να είναι το ιδιόκτητο λογισµικό και όχι το λογισµικό που πωλείται για κέρδος, όπως το εµπορικό λογισµικό. Το ελεύθερο λογισµικό ορισµένες φορές αναφέρεται και σαν ανοιχτό λογισµικό ή λογισµικό ανοιχτού κώδικα αλλά οι δύο έννοιες δεν είναι ταυτόσηµες. 2.1.1 Άδειες Ελευθέρου Λογισµικού Εν γένει, σύµφωνα µε την ισχύουσα νοµοθεσία περί πνευµατικής ιδιοκτησίας, η ελεύθερη αντιγραφή, διανοµή και τροποποίηση του λογισµικού δεν επιτρέπεται. Για το λόγο αυτό, οι εκδόσεις ελευθέρου λογισµικού κάνουν χρήση ειδικής άδειας (free software license) σύµφωνα µε την οποία, παραχωρείται το δικαίωµα αντιγραφής, τροποποίησης και αναδιανοµής του λογισµικού στους χρήστες. Σύµφωνα µε το Ίδρυµα Ελεύθερου Λογισµικού, οι άδειες χρήσης ελεύθερου λογισµικού πρέπει να περιλαµβάνουν τις εξής ελευθερίες: Ελευθερία 0: Ελευθερία χρήσης του προγράµµατος για οποιονδήποτε σκοπό. Ελευθερία 1: Ελευθερία µελέτης και τροποποίησης του προγράµµατος. Ελευθερία 2: Ελευθερία αντιγραφής του προγράµµατος. Ελευθερία 3: Ελευθερία βελτίωσης του προγράµµατος και επανέκδοσης του, προς το συµφέρον της κοινότητας των χρηστών. Οι ελευθερίες 1 και 3 προϋποθέτουν την πρόσβαση των χρηστών στον πηγαίο κώδικα του λογισµικού. Αργυρώ Μανατάκη ΑΜ 1910 15

2.1.2 Πλεονεκτήµατα χρήσης ελεύθερου λογισµικού Τα µεγαλύτερα πλεονεκτήµατα του ελεύθερου λογισµικού είναι: Έχει ανοικτά πρότυπα, οπότε µπορεί να επικοινωνήσει µε οποιοδήποτε άλλο λογισµικό. Σας αποδεσµεύει από εξωτερικούς προµηθευτές. Μείωση κόστους πληροφοριακών συστηµάτων: εν αγοράζονται άδειες χρήσης, δωρεάν ανανεώσεις, απεριόριστος αριθµός εγκαταστάσεων, δυνατότητα ιδίας παραµετροποίησης και επέκτασης δυνατότητα ιδίας υποστήριξης. Υιοθέτηση διεθνών βέλτιστων πρακτικών: Τα έργα ΕΛΛΑΚ λόγω της συνεχούς δοκιµασίας τους σε διαφορετικά περιβάλλοντα εργασίας, αναγκάζονται, συν το χρόνο, να ενσωµατώνουν διαδικασίες και πρακτικές που είναι γενικώς παραδεκτές και αποτελεσµατικές. Μικρότεροι χρόνοι υλοποίησης πληροφοριακών συστηµάτων. Προώθηση του ανταγωνισµού των εταιρειών λογισµικού µε αποτέλεσµα καλύτερες προσφερόµενες υπηρεσίες Ύπαρξη πληθώρας επιλογών και δοκιµασµένων λύσεων ιαλειτουργικότητα ακόµα και µεταξύ λογισµικού διαφορετικών προµηθευτών. Αποφυγή «παγίδευσης» λόγω υιοθέτησης συγκεκριµένων κλειστών τεχνολογιών που δεσµεύουν µελλοντικές αποφάσεις και δυσχεραίνουν την αλλαγή. Αξιοπιστία. Το λογισµικό είναι δοκιµασµένο από πολλούς και αποφεύγονται αρνητικές εκπλήξεις και σφάλµατα. Ασφάλεια. Ο κώδικας µελετάται από πλήθος ανθρώπων, άρα τα όποια κενά ασφάλειας εντοπίζονται και διορθώνονται µε µεγάλη ταχύτητα. Εµπιστοσύνη. 2.2 Ορισµός του CMS Το CMS είναι ακρωνύµιο για το Content Management System (Σύστηµα ιαχείρισης Περιεχοµένου). Ένα σύστηµα διαχείρισης περιεχοµένου (CMS) υποστηρίζει την δηµιουργία, την διαχείριση, την διάθεση, την έκδοση και την ανακάλυψη εταιρικών πληροφοριών. Στην πραγµατικότητα, ένα CMS είναι µια εφαρµογή software η οποία Αργυρώ Μανατάκη ΑΜ 1910 16

προσφέρει στον δηµιουργό ενός website την δυνατότητα να οργανώνει, να χειρίζεται και να τροποποιεί τα άρθρα του website. Η δηµιουργία ενός website αποκτά εντελώς διαφορετικό νόηµα αν χρησιµοποιηθεί ένα CMS. Ένα Σύστηµα ιαχείρισης Περιεχοµένου(CMS),είναι δηλαδή ένα σύστηµα που επιµελείται όλο το περιεχόµενο που µπορεί να υπάρξει σε µια ιστοσελίδα µε έναν εύκολο τρόπο χωρίς να απαιτούνται εξειδικευµένες γνώσεις για να το χειριστούµε. Με άλλα λόγια είναι ένα «αντικείµενο» υψηλής συµπερίληψης. Υλοποιείται µε την λογική του µοντέλου «WYSIWYG» (What You See Is What You Get Ότι βλέπεις είναι ότι παίρνεις), δηλαδή µια αντικειµενοστραφή λογική όπου το «αντικείµενο» είναι στο υψηλότερο επίπεδο. Και όπου η υλοποίηση είναι µια εικονική λογική. Με ένα CMS, είναι πολύ εύκολη η λειτουργία δηµοψηφισµάτων µέσω του website, το στήσιµο ενός forum, η δηµιουργία ενός blog, η χρήση news feeds, η δηµιουργία βάσης δεδοµένων µε εικόνες, αρχεία, κτλ. Αν λοιπόν ο χρήστης θέλει να δηµιουργήσει ένα δυναµικό, εύκολα αναβαθµίσιµο και µοντέρνο website, η εύκολη και σίγουρη λύση είναι ένα πρόγραµµα CMS. 2.2.1 Enterprise CMS Ο όρος Enterprise CMS αναφέρεται στις τεχνολογίες, τις στρατηγικές, τις µεθόδους και τα εργαλεία που χρησιµοποιούνται για την συλλογή, διαχείριση, αποθήκευση, διατήρηση και παράδοση των περιεχοµένων και των εγγράφων που σχετίζονται µε έναν οργανισµό και τις διαδικασίες του. Τα Enterprise CMS εργαλεία επιτρέπουν τη διαχείριση των πληροφοριών ενός οργανισµού. 2.2.2 Component CMS Το Component CMS διαχειρίζεται περιεχόµενα σε ένα σπυρωτό επίπεδο περιεχοµένων παρά ένα επίπεδο εγγράφου. Κάθε περιεχόµενο παρουσιάζει ένα µεµονωµένο θέµα, έννοια ή ένα απόκτηµα. Τα συστατικά συγκεντρώνονται σε πολλαπλά περιεχόµενα και µπορούν να θεαθούν σαν ψηφιακά ή παραδοσιακά έγγραφα. Κάθε συστατικό έχει το δικό του κύκλο ζωής και µπορεί να εντοπιστεί µεµονωµένα σαν µέρος µιας σύναξης. Το CCMS χρησιµοποιείται χαρακτηριστικά σε πολλαπλά κανάλια όσον αφόρα την πελατειακή επεξεργασία περιεχοµένων. Αργυρώ Μανατάκη ΑΜ 1910 17

2.3 Ορισµός του Web-CMS Το σύστηµα διαχείρισης περιεχοµένου (CMS) είναι µια εφαρµογή που χρησιµοποιείται για να δηµιουργήσει, να επεξεργαστεί, να διαχειριστεί και για να δηµοσιεύσει ιστοσελίδες στο διαδίκτυο. Τα συστήµατα διαχείρισης περιεχοµένου (CMS) µπορούν να χρησιµοποιηθούν για να κατασκευάσουν ιστοτόπους όπως: Εταιρικούς Προσωπικούς Εκπαιδευτικούς Ηλεκτρονικά καταστήµατα Ενηµερωτικούς Γενικά, σε ιστοτόπους που µπορούν να καλύψουν σχεδόν όλη την γκάµα των ενδιαφεροµένων. Το περιεχόµενο που µπορεί να χρησιµοποιηθεί περιλαµβάνει κείµενα, εικόνες, ήχο, video, ηλεκτρονικά αρχεία και γενικά οτιδήποτε µπορεί να διανεµηθεί µέσω του διαδικτύου. Ένα σύστηµα διαχείρισης περιεχοµένου (CMS) πρέπει να υποστηρίζει: Εύκολη διαχείριση περιεχοµένου µέσω ενός browser. ιαφορετικούς ρόλους και επίπεδα για τους χρήστες. υνατότητα δηµοσίευσης περιεχοµένου από χρήστες έπειτα από την έγκριση του διαχειριστή. υνατότητα κατηγοριοποίησης του περιεχοµένου ώστε να είναι ευκολότερη η διαχείριση του. ιαχωρισµός περιεχοµένου και εµφάνισης (για παράδειγµα: οποιαδήποτε στιγµή να µπορούµε να αλλάξουµε το φόντο της σελίδας ή το στυλ της γραµµατοσειράς και να εφαρµόζεται σε όλες τις σελίδες). 2.3.1 Χαρακτηριστικά ενός CMS Ένα σύστηµα διαχείρισης περιεχοµένου (CMS) µπορεί να υποστηρίζει τα ακόλουθα χαρακτηριστικά: ηµιουργία περιεχοµένου (το περιεχόµενο αποθηκεύεται σε µια βάση δεδοµένων). Αργυρώ Μανατάκη ΑΜ 1910 18

ιαχείριση περιεχοµένου (οι κοινές αλλαγές του περιεχοµένου γίνονται µια και µόνο φορά, όχι σε όλες τις σελίδες του website, π.χ. ο τίτλος του website). ηµοσίευση. Παρουσίαση (η σχεδίαση του περιεχοµένου του website είναι ανεξάρτητη από το περιεχόµενο που έχει αποθηκευτεί στην βάση δεδοµένων. 2.3.2 Πλεονεκτήµατα ενός CMS Αυτοµατοποιηµένα πρότυπα: ηµιουργία προτύπων(templates) συνήθως σε µορφή HTML ή XML τα οποία µπορούν εύκολα να εφαρµοστούν σε νέα και υπάρχοντα περιεχόµενα, επιτρέποντας στην εµφάνιση όλου του περιεχόµενου να αλλάξει από µια κεντρική θέση. Εύκολα επεξεργάσιµο περιεχόµενο: Εφόσον το περιεχόµενο είναι διαχωρισµένο από την οπτική παρουσίαση της ιστοσελίδας, συνήθως γίνεται πιο εύκολο να το επεξεργαστείς και να το διαχειριστείς. Τα περισσότερα Συστήµατα ιαχείρισης Περιεχοµένου για sites (WCMS) περιλαµβάνουν εργαλεία επεξεργασίας WYSIWYG (What You See Is What You Get) επιτρέποντας σε µη-τεχνικά άτοµα να δηµιουργήσουν και να επεξεργαστούν περιεχόµενο. Χαρακτηριστικό κλιµακωτών συνόλων: Τα περισσότερα Συστήµατα ιαχείρισης Περιεχοµένου για sites (WCMS) περιλαµβάνουν plug-ins ή modules (µονάδες) τα οποία µπορούν εύκολα να εγκατασταθούν για να επεκτείνουν την λειτουργικότητα της υπάρχουσας ιστοσελίδας. Αναβάθµιση προτύπων µέσω Web: Ένα ενεργό Σύστηµα ιαχείρισης Περιεχοµένου για sites(wcms), συνήθως λαµβάνει ενηµερώσεις οι οποίες εµπεριέχουν νέα χαρακτηριστικά και κρατούν το σύστηµα ενηµερωµένο στα τρέχοντα πρότυπα. ιαχείριση της ροής εργασίας(workflow): Workflow είναι η διαδικασία της δηµιουργίας κύκλων των αλληλοδιαδοχικών ή παράλληλων έργων που πρέπει να εκπληρωθούν σε ένα Σύστηµα ιαχείρισης Περιεχοµένου (CMS). Για παράδειγµα ένας δηµιουργός περιεχοµένου µπορεί να υποβάλλει µια «ιστορία»(story), αλλά δεν θα Αργυρώ Μανατάκη ΑΜ 1910 19

δηµοσιευθεί µέχρι ο συντάκτης αντιγράφων να την «καθαρίσει» και ο αρχισυντάκτης να την εγκρίνει. Αντιπροσωπεία: Μερικά Συστήµατα ιαχείρισης Περιεχοµένου (CMS) επιτρέπουν σε διάφορες οµάδες χρηστών να έχουν περιορισµένα δικαιώµατα πάνω σε συγκεκριµένα περιεχόµενα µιας ιστοσελίδας, εξαπλώνοντας την ευθύνη της διαχείρισης περιεχοµένου. ιαχείριση των εγγράφων: Ένα Σύστηµα ιαχείρισης Περιεχοµένου µπορεί να παρέχει ένα µέσο για την διαχείριση του κύκλου ζωής ενός εγγράφου από την αρχική στιγµή δηµιουργίας του, µέσα από τις αναθεωρήσεις των εκδόσεων, τη δηµοσίευση, το αρχείο, και την καταστροφή του εγγράφου. Virtualization (εικονικότητα) του περιεχοµένου: Ένα Σύστηµα ιαχείρισης Περιεχοµένου µπορεί να αποτελέσει το µέσο που να επιτρέπει σε κάθε χρήστη να εργάζεται µέσα σε ένα εικονικό αντίγραφο µιας πλήρους ιστοσελίδας, σύνολα εγγράφων και/ή µιας βάσης κώδικα. Αυτό επιτρέπει στις αλλαγές σε πολλούς αλληλοεξαρτώµενους πόρους να είναι εµφανείς και/ή να εκτελούνται σε πλαίσιο πριν την υποβολή τους. 2.4 ιαθέσιµα Web CMS Τα διαθέσιµα CMS χωρίζονται σε 3 κατηγορίες: CMS κλειστού κώδικα. CMS ανοιχτού κώδικα. Παραµετροποιηµένα CMS βασισµένα σε πλαίσια ανοιχτού κώδικα. Η κατηγορία αυτή ουσιαστικά είναι µια µίξη των παραπάνω. είτε στην παρακάτω εικόνα τα πιο δηµοφιλή CMS. Αργυρώ Μανατάκη ΑΜ 1910 20

Τα πιο δηµοφιλή CMS 2.4.1 CMS κλειστού κώδικα Τα CMS κλειστού κώδικα έχουν εµπορική υποστήριξη, καθώς και προσδιορισµένες υπηρεσίες. Σε ορισµένες περιπτώσεις µπορεί να είναι καλύτερα τεκµηριωµένα και πιο ασφαλή αλλά έχουν ένα βασικό µειονέκτηµα. Αυτό είναι το κόστος. Εκτός από το βασικό κόστος υπάρχει το κόστος παραµετροποίησης καθώς και το κόστος ολοκλήρωσης µε υπάρχοντα εταιρικά συστήµατα. 2.4.2 Τα πιο δηµοφιλή CMS κλειστού κώδικα Vignette Content Management: Τα προϊόντα της Vignette βοηθούν τις επιχειρήσεις να αποκτήσουν και να διαχειρίζονται τις πληροφορίες που χρειάζονται. Είναι µια έµπειρη εταιρία αποδοτικότητας, η οποία στοχεύει στην αύξηση της παραγωγικότητας, µείωση του κόστους και στην βελτίωση της εµπειρίας του χρήστη. Οι Intranet, extranet και internet λύσεις της συµπεριλαµβάνουν portal, integration, enterprise content management και δυνατότητες συνεργασίας που µπορούν να αποδώσουν µοναδικά προτερήµατα. IBM Workplace Web Content Management: Το συγκεκριµένο προϊόν παρέχει µία µεγάλη γκάµα λειτουργιών όπως: personalization, το web content management, η διαχείριση εγγράφων και οι λειτουργίες συνεργασίας και παραγωγικότητας στα πλαίσια της επεκτάσιµης υποδοµής του WebShere Portal. Αργυρώ Μανατάκη ΑΜ 1910 21

Jalios JCMS: Είναι ένα enterprise content management (ECM) που αναπτύχθηκε από την Jalios, µια γαλλική εταιρεία που ιδρύθηκε το 2001 και εδρεύει στο Παρίσι, Γαλλία. Περιλαµβάνει, µεταξύ άλλων, τα ακόλουθα χαρακτηριστικά: διαχείρισης περιεχοµένου, διαχείριση εγγράφων, collaboration, workflow και πύλες. Dynamicweb: Είναι προϊόν της Dynamicweb Software Ltd η οποία εξειδικεύεται στην παροχή web-based λύσεις λογισµικού για την επαγγελµατική αγορά. Όλα τα προϊόντα είναι modular και έχουν επεκταθεί εύκολα για να ταιριάζουν στις ανάγκες των πελατών. Η Dynamicweb Software Ltd αναπτύσσει τρία κύρια προϊόντα Synkron Via, Dynamicweb ηλεκτρονικού εµπορίου και Dynamicweb CMS. Το Dynamicweb CMS είναι ένα πολυγλωσσικό και φιλικό Σύστηµα ιαχείρισης Περιεχοµένου (CMS), το οποίο µπορεί να χρησιµοποιηθεί για τη διαχείριση του περιεχοµένου στους δικτυακούς τόπους, extranets και Intranets. Βασίζεται στην τεχνολογία Microsoft.NET και έχει επιλεχθεί σε περισσότερες από 3.000 εταιρίες και Οργανισµούς σε διάφορες χώρες. (Iterating, 2009). Powerfront CMS: Το PowerFront παρέχει µια ολοκληρωµένη λύση διαχείρισης περιεχοµένου που µπορεί να περιλαµβάνει: τη διαχείριση περιεχοµένου, τον σχεδιασµό ιστοσελίδων, θέµατα ασφάλειας, το ηλεκτρονικό εµπόριο, procurement, reporting options και υποστήριξη. Στόχος της είναι η υποστήριξη ιστοσελίδων των επιχειρήσεων, intranets, extranets ή procurement websites. 2.4.3 Πλεονεκτήµατα Web - CMS κλειστού κώδικα Εµπορική Υποστήριξη Σαφώς προσδιορισµένες υπηρεσίες. Ετοιµοπαράδοτο (συνήθως). Καλύτερη τεκµηρίωση και εκπαίδευση. Ασφάλεια. 2.4.4 Μειονεκτήµατα Web - CMS κλειστού κώδικα Βασικό κόστος. Κόστος παραµετροποίησης. Κόστος ολοκλήρωσης µε υπάρχοντα εταιρικά συστήµατα. Αργυρώ Μανατάκη ΑΜ 1910 22

2.4.5 CMS ανοικτού κώδικα Στις εφαρµογές ανοικτού κώδικα επιτρέπεται η πρόσβαση και η αλλαγή του πηγαίου κώδικα. Το κόστος της εφαρµογής µειώνεται δραµατικά καθώς στις περισσότερες περιπτώσεις ολόκληρη η εφαρµογή βρίσκεται στο διαδίκτυο και ο ενδιαφερόµενος την κατεβάζει µε µηδενικό κόστος παρόλα αυτά, τυπικά απαιτούνται τουλάχιστον κάποιες τεχνικές γνώσεις για να στηθεί η εφαρµογή και να λειτουργήσει. Υποστηρίζονται από µία κοινότητα χρηστών και προγραµµατιστών και συχνά συνοδεύονται από πρόσθετα (plug-ins) τα οποία δηµιουργεί και προσφέρει η κοινότητα. 2.4.6 Τα πιο δηµοφιλή CMS ανοιχτού κώδικα Joomla: Είναι ένα σύστηµα διαχείρισης περιεχοµένου (CMS) µε αρκετές δυνατότητες, εξαιρετικά ευέλικτο και φιλικό. Η εφαρµογή αυτή χρησιµοποιείται για τη δηµοσίευση στο διαδίκτυο µιας προσωπικής ιστοσελίδα, αλλά και ενός εταιρικού δικτυακού τόπου. Είναι προσαρµόσιµο σε περιβάλλοντα επιχειρηµατικής κλίµακας όπως τα intranets µεγάλων επιχειρήσεων ή οργανισµών. Οι δυνατότητες επέκτασής του είναι πρακτικά µεγάλες. Υλοποίηση site µε τη χρήση ενός web content management εργαλείου (joomla) και η ασφαλής θωράκισή του. Drupal: Είναι ένα αρθρωτό σύστηµα διαχείρισης περιεχοµένου (CMS), γραµµένο στη γλώσσα προγραµµατισµού php. Το Drupal, όπως πολλά σύγχρονα CMS, επιτρέπει στο διαχειριστή συστήµατος να οργανώνει το περιεχόµενο, να προσαρµόζει την παρουσίαση, να αυτοµατοποιεί διαχειριστικές εργασίες και να διαχειρίζεται τους επισκέπτες του ιστοτόπου και αυτούς που συνεισφέρουν. Παρόλο που υπάρχει µια πολύπλοκη προγραµµατιστική διεπαφή, οι περισσότερες εργασίες µπορούν να γίνουν µε λίγο ή και καθόλου προγραµµατισµό. Το Drupal ορισµένες φορές περιγράφεται ως "υποδοµή για εφαρµογές ιστού", καθώς οι δυνατότητές του προχωρούν παραπέρα από τη διαχείριση περιεχοµένου, επιτρέποντας ένα µεγάλο εύρος υπηρεσιών και συναλλαγών. Xoops: Το Xoops χρησιµοποιεί µια σπονδυλωτή αρχιτεκτονική που επιτρέπει στους χρήστες του να προσαρµόσουν, να ενηµερώνουν και διαφοροποιήσουν θεµατικά τους ιστοχώρους τους. Παρέχει δυνατότητες προσωποποιήσης (personalization), Αργυρώ Μανατάκη ΑΜ 1910 23

διαχείριση χρηστών, διεπαφή βάση θεµάτων (theme based interface), πολυγνωσία και πολλά άλλα. Είναι γραµµένο σε php και κυκλοφορεί υπό τους όρους της GNU Γενικής ηµόσιας Άδειας (GPL). To όνοµα XOOPS είναι ακρωνύµιο των λέξεων extensible Object Oriented Portal System. Plone: Το Plone είναι ένα σύστηµα διαχείρισης περιεχοµένου (CMS - Content Management System), ανοιχτού κώδικα, το οποίο στηρίζεται στον application server Zope. Και τα δύο συστήµατα είναι γραµµένα σε Python. Η ανάπτυξη του Plone ξεκίνησε το 2001 από περίπου 200 προγραµµατιστές ανά τον κόσµο. Πρόκειται για ένα ιδιαίτερα σταθερό σύστηµα, ενώ στα πλεονεκτήµατα του περιλαµβάνεται η ασφάλεια, το ισχυρό workflow engine που διαθέτει, οι διευκολύνσεις που δίνει στους διαχειριστές για να προσθέτουν περιεχόµενο, η εξαιρετική µηχανή αναζήτησης που ενσωµατώνει, καθώς επίσης και η ίδια η αρχιτεκτονική του, που επιτρέπει στους προγραµµατιστές να υλοποιούν συστήµατα καλύτερα προσαρµοσµένα στις ανάγκες των χρηστών. Typo3: Το TYPO3 είναι ένα Σύστηµα ιαχείρισης Περιεχοµένου (Content Management System CMS) ανοικτού κώδικα για εταιρικούς σκοπούς στο διαδίκτυο ή σε ενδοδίκτυο (intranet). Προσφέρει πλήρη ευελιξία και επεκτασιµότητα καθώς παρέχει ένα ολοκληρωµένο σύνολο προκατασκευασµένων διεπαφών και λειτουργικών µονάδων. 2.4.7 Πλεονεκτήµατα Web - CMS ανοιχτού κώδικα Τα Web-CMS ανοιχτού κώδικα έχουν αρκετά πλεονεκτήµατα. Τα κυριότερα από τα οποία αναφέρονται παρακάτω: Αναµφισβήτητα το να έχεις τη δυνατότητα να δηµιουργήσεις έναν ιστότοπο από το µηδέν χωρίς εξειδικευµένες τεχνικές γνώσεις σου προσφέρει χαµηλό κόστος. Πληρώνεις για την υπηρεσία και την υποστήριξη που σου παρέχεται και όχι για το λογισµικό. Ευκολία παραµετροποίησης. Υπάρχει υποστήριξη και βοήθεια των χρηστών του Web-CMS από την Κοινότητα του (forums). Αργυρώ Μανατάκη ΑΜ 1910 24

Υπάρχει απεριόριστη ευκολία ολοκλήρωσης µε τα υπάρχοντα λογισµικά. 2.4.8 Μειονεκτήµατα Web - CMS ανοιχτού κώδικα «Ελεύθερο Λογισµικό» δεν συνεπάγεται και λογισµικό χωρίς κόστος. Έλλειψη εµπορικής υποστήριξης. Όχι τόσο ώριµο. Φτωχή χρηστικότητα. Εστιάζεται περισσότερο στην τεχνική αρχιτεκτονική και σύνολο χαρακτηριστικών παρά στην εµπειρία του χρήστη. Έλλειψη τεκµηρίωσης. Όχι για επίπεδο επιχειρήσεων µεγάλου βεληνεκούς (Entrprise). Αργυρώ Μανατάκη ΑΜ 1910 25

Κεφάλαιο 3 - Η αρχιτεκτονική ενός CMS ανοιχτού κώδικα Joomla 3.1 Τι είναι το Joomla Το Joomla είναι ένα πλήρες σύστηµα διαχείρισης περιεχοµένου γεµάτο δυνατότητες αλλά και ταυτόχρονα εξαιρετικά ευέλικτο και φιλικό. Είναι εφαρµογή που χρησιµοποιείται για δηµοσίευση στο διαδίκτυο µιας προσωπικής ιστοσελίδας, αλλά και ενός ολόκληρου εταιρικού δικτυακού τόπου. Είναι προσαρµόσιµο σε περιβάλλοντα επιχειρηµατικής κλίµακας όπως τα intranets µεγάλων επιχειρήσεων ή οργανισµών. Οι δυνατότητες επέκτασής του είναι πρακτικά απεριόριστες. Το Joomla είναι εφαρµογή ανοικτού κώδικα. Αυτό σηµαίνει ότι η χρήση του είναι απολύτως δωρεάν. Είµαστε ελεύθεροι να το χρησιµοποιούµε, να το τροποποιούµε και να διερευνούµε τις δυνατότητές του χωρίς να πρέπει να πληρώσουµεε κάποια άδεια χρήσης σε κανέναν. Η λειτουργεία του είναι απλή, εγκαθίσταται σε έναν κεντρικό υπολογιστή, τον web server. Ο χρήστης, εµείς δηλαδή, έχει πρόσβαση στο περιβάλλον διαχείρισης µέσω ενός browser, όπως είναι ο Internet Explorer, ο Firefox ή οποιοσδήποτε άλλος. Από τη στιγµή που είµαστε εµείς ο διαχειριστής, µπορούµε να προσθέσουµε οποιοδήποτε κείµενο ή γραφικό, και έτσι να δηµιουργήσουµε την ιστοσελίδα µας. 3.2 Ιστορία του Joomla Το Joomla δηµιουργήθηκε ως αποτέλεσµα της διάσπασης του development team του Mambo στις 17 Αυγούστου 2005. Την εποχή εκείνη, το όνοµα Mambo ήταν εµπορικό σήµα της Miro International Pvt Ltd, οι οποίοι αποτελούσαν ένα µη κερδοσκοπικό ίδρυµα µε δεδηλωµένο σκοπό τη χρηµατοδότηση του έργου και την προστασία από µηνύσεις. Το development team του Mambo δηµιούργησε µια ιστοσελίδα που ονοµάστηκε OpenSourceMatters µε σκοπό να διανέµουν πληροφορίες στους χρήστες, προγραµµατιστές, σχεδιαστές ιστοσελίδων και στην κοινότητα γενικότερα. Ο αρχηγός της οµάδας, Andrew Eddie, γνωστός και ως "Masterchief" έγραψε µια Αργυρώ Μανατάκη ΑΜ 1910 26

ανοιχτή επιστολή προς την Κοινότητα, η οποία εµφανίστηκε στο τµήµα ανακοινώσεις του δηµόσιου φόρουµ στο mamboserver.com. Χιλιάδες άνθρωποι εντάχθηκαν στην opensourcematters.org ιστοσελίδα µέσα σε µια µέρα οι περισσότεροι για να αποσπάσουν λόγια ενθάρρυνσης και στήριξης. Ωστόσο, η Miro CEO Peter Lamont δηµοσίευσε µια απάντηση στο development team, σε άρθρο µε τίτλο "Το Mambo Open Source Controversy-20 ερωτήσεις µε την Miro". Το γεγονός αυτό δηµιούργησε αντιπαραθέσεις εντός της κοινότητας του ελεύθερου λογισµικού για τον ορισµό του "ανοικτού κώδικα". ύο εβδοµάδες µετά την ανακοίνωση του Andrew Eddie, οι οµάδες αναδιοργανώθηκαν και η κοινότητα εξακολούθησε να αυξάνεται. Ο Eben Moglen και το Software Freedom Law Center (SFLC) βοήθησαν την βασική οµάδα του Joomla που αρχίζει τον Αύγουστο του 2005. Η SFLC συνεχίσει να παρέχει νοµική καθοδήγηση για το Joomla. Στις 18 του Αυγούστου 2005, γίνεται έκκληση για τη συµβολή της Κοινότητας στο να προτείνει ονόµατα για το project. Η βασική οµάδα ανέφερε ότι θα λάβει την τελική απόφαση για το όνοµα του project µε βάση τα στοιχεία της κοινότητας. Η οµάδα πυρήνας τελικά επέλεξε το όνοµα να µην είναι από τον κατάλογο των ονοµάτων που προτείνονται από την κοινότητα. Την 1η Σεπτεµβρίου 2005, το νέο όνοµα, "Joomla!", ανακοινώθηκε. Το οποίο είναι η αγγλική ορθογραφία του jumla αραβική λέξη που σηµαίνει "όλοι µαζί" ή "ως σύνολο", καθώς και "πρόταση". Το Joomla (Joomla 1.0.0) κυκλοφόρησε στις 16 Σεπτεµβρίου 2005. Ήταν µια νέα εµπορική απελευθέρωση του Mambo 4.5.2.3. Το Joomla δηµιουργήθηκε σε συνδυασµό άλλων σφαλµάτων και µέτριων-διορθώσεων σε επίπεδο ασφαλείας. Κέρδισε το Packt Publishing Open Source Content Management System Award το 2006 και το 2007. Αργυρώ Μανατάκη ΑΜ 1910 27

3.3 Χαρακτηριστικά του Joomla Το Joomla CMS αποτελεί ένα βραβευµένο σύστηµα διαχείρισης περιεχοµένου ανοικτού κώδικα, το οποίο βασίζεται στην αρχιτεκτονική PHP / MySQL και επιτρέπει τη δηµιουργία websites και ισχυρών online εφαρµογών. Πολλά χαρακτηριστικά του, συµπεριλαµβανοµένης της ευχρηστίας και της επεκτασιµότητάς του, έχουν καταστήσει το Joomla ως το δηµοφιλέστερο εργαλείο για κατασκευή websites. H χρήση του Joomla καλύπτει παγκοσµίως µια ευρύτατη θεµατική γκάµα όπως εταιρικά internet και intranet sites, εµπορικά sites και portals, κυβερνητικές υπηρεσίες, e-commerce, online κρατήσεις, περιοδικά-εκδόσεις και εκπαιδευτικές ιστοσελίδες. Τα βασικά χαρακτηριστικά του Joomla είναι: Εύκολη προσθήκη περιεχοµένου στον εκάστοτε ιστότοπο από οποιονδήποτε υπολογιστή διαθέτει σύνδεση στο διαδίκτυο µε απλή πληκτρολόγηση και µορφοποίηση του κειµένου, µεταφόρτωση των φωτογραφιών και άµεση δηµοσίευση. Ιδιαίτερα απλή εγκατάσταση και αρχική παραµετροποίηση. υνατότητα συνεργασίας µε όσους µπορούν να συµβάλουν στην επεξεργασία του περιεχοµένου από οποιονδήποτε υπολογιστή µε σύνδεση στο διαδίκτυο και µε καθορισµό του πλαισίου των αρµοδιοτήτων τους. ηµοσίευση απεριόριστων σελίδων, χωρίς περιορισµό από το Joomla, καθώς επίσης δυνατότητα αναζήτησης και αρχειοθέτησης όλου του περιεχοµένου. Ενσωµατωµένη υποστήριξη διαφηµιστικών banners για προώθηση προϊόντων και υπηρεσιών καθώς και υποστήριξη RSS feeds. To Joomla υποστηρίζει εκατοντάδες πρόσθετες εφαρµογές (extensions) που επεκτείνουν τη λειτουργικότητα του όπως forum, photo galleries, βιβλιοθήκες αρχείων, βιβλία επισκεπτών και φόρµες επικοινωνίας. Τµήµατα για Νέα Προϊόντα ή Υπηρεσίες είναι πλήρως επεξεργάσιµα, διαχωρίσιµα και εύχρηστα. Αργυρώ Μανατάκη ΑΜ 1910 28

Τµήµατα µε θεµατικές ενότητες µπορούν να προστεθούν από διαφορετικούς συντάκτες. Πλήρως παραµετροποιηµένο περιεχόµενο και περιβάλλον, συµπεριλαµβανοµένων των θέσεων του αριστερού, κεντρικού και δεξιού µενού. Ευκολία στη χρήση του ακόµα και για αρχάριους χρήστες Η/Υ. Είναι πολυγλωσσικό. Upload φωτογραφιών µέσω του φυλλοµετρητή του χρήστη, σε δική του βιβλιοθήκη για χρήση οπουδήποτε στον ιστοχώρο. Έχει τη δυνατότητα δηµιουργίας πολλών επιπέδων χρηστών. υναµική υποστήριξη Forum/Ψηφοφορίας για τα επί τόπου αποτελέσµατα. Υπάρχει ειδικός µηχανισµός για της µηχανές αναζήτησης. Λειτουργεί σε Linux, FreeBSD, Mac OS X Server, Solaris και AIX. Πολλές εταιρείες και οργανισµοί έχουν απαιτήσεις που προεκτείνονται πέρα από το αρχικό πακέτο του Joomla. Σε αυτές τις περιπτώσεις ένα ισχυρό API διευκολύνει την ανάπτυξη εξελιγµένων επεκτάσεων που διευρύνουν τη δύναµη του Joomla προς απεριόριστες κατευθύνσεις. Προηγµένες εφαρµογές κατασκευασµένες µε το Joomla περιλαµβάνουν: Συστήµατα ελέγχου αποθήκης, εργαλεία αναφοράς δεδοµένων, application bridges, custom καταλόγους προϊόντων, ολοκληρωµένα e-commerce συστήµατα, σύνθετους επιχειρησιακούς καταλόγους, συστήµατα κρατήσεων και εργαλεία επικοινωνίας. 3.4 Η αρχιτεκτονική του Joomla Το Joomla αποτελείται από πολλά διαφορετικά µέρη, τα οποία επιτρέπουν οι επεκτάσεις να γίνονται εύκολα. Θα µπορούσαµε να το περιγράψουµε ως συναφές και πολύπλοκο σύστηµα και όχι ως ένα µπλεγµένο σύνολο από γεγονότα και συσχετίσεις. Αργυρώ Μανατάκη ΑΜ 1910 29

Η αρχιτεκτονική ενός CMS Βάσει της παραπάνω εικόνας διαχωρίζουµε το CMS σε τρία βασικά υποσυστήµατα: Το υποσύστηµα συλλογής (Collection System) To υποσύστηµα διαχείρισης (Management System) To υποσύστηµα δηµοσίευσης (Publishing System) 3.4.1 Το υποσύστηµα συλλογής (Collection System) Το υποσύστηµα συλλογής είναι υπεύθυνο για όλες τις διεργασίες που γίνονται προτού η πληροφορία γίνει έτοιµη για δηµοσίευση. Μετατρέπει την ακατέργαστη πληροφορία σε καλά οργανωµένο περιεχόµενο. Το υποσύστηµα συλλογής (Collection System) Αργυρώ Μανατάκη ΑΜ 1910 30

Τα στάδια της συλλογής είναι: Συγγραφή (Authoring): ηµιουργείται το περιεχόµενο εξολοκλήρου από την αρχή. Απόκτηση (Acquisition): Συλλέγεται το περιεχόµενο από υπάρχουσες πηγές. Μετατροπή (Conversion): Εξάγονται οι µη απαραίτητες πληροφορίες από το περιεχόµενο και αν είναι ανάγκη αλλάζει και η µορφή του. Συσσώρευση (Aggregation): Επεξεργαζόµαστε το περιεχόµενο, το διαιρούµε σε τµήµατα και το προσαυξάνουµε µε τα απαραίτητα µεταδεδοµένα. Υπηρεσίες Συλλογής (Collection Services): Είναι CMS, προγράµµατα καινσυναρτήσεις που βοηθούν στη διαδικασία συλλογής. Π.χ. µια υπηρεσία συλλογής είναι οι web forms στις οποίες εισάγουµε περιεχόµενο. 3.4.2 Το υποσύστηµα διαχείρισης (Management System) Το υποσύστηµα διαχείρισης είναι υπεύθυνο για την µακροχρόνια αποθήκευση των συστατικών περιεχοµένου καθώς και για κάθε είδους αρχείο που χρησιµοποιείται. Περιέχει την αποθήκη περιεχοµένου, το workflow καθώς και δυνατότητες διαχείρισης. Το υποσύστηµα διαχείρισης (Management System) Αργυρώ Μανατάκη ΑΜ 1910 31

Το CMS πρέπει να είναι ικανό να µας πληροφορεί για τα ακόλουθα: Λεπτοµέρειες για το περιεχόµενο, δηλαδή τι είδους συστατικά περιεχοµένου έχουν συλλεχθεί και σε πιο στάδιο του κύκλου ζωής τους βρίσκονται. Πόσο καλά αρχικοποιηµένο είναι το υλικό µας και αν µπορεί να δηµιουργηθεί συµφόρηση (bottleneck). Πώς χρησιµοποιούµε τα συστατικά στις δηµοσιεύσεις και πιο περιεχόµενο δεν χρησιµοποιείται ή είναι έτοιµο για διαγραφή. Ποιος έχει πρόσβαση και πού στο περιεχόµενο και ποιος έχει συνεισφέρει περισσότερο. ηλαδή, πρέπει να βρίσκουµε απαντήσεις στο σύστηµα διαχείρισης για οτιδήποτε σχετικά µε το περιεχόµενο, τις δηµοσιεύσεις και το υποσύστηµα συλλογής. Για να µπορέσει το υποσύστηµα διαχείρισης να µας προσφέρει αυτές τις δυνατότητες περιέχει: Αποθηκευτικό χώρο: Ένα µέρος για την αποθήκευση του περιεχοµένου. ιαχείριση: Ένα σύστηµα διαχείρισης για τις ρυθµίσεις του CMS. Workflow: Καθορισµένα σύνολα βηµάτων για την πραγµατοποίηση της εργασίας ώστε το περιεχόµενο να γίνει έτοιµο προς δηµοσίευση. Συνδέσεις: Ένα σύνολο συνδέσεων (υλικού και λογισµικού) συνήθως µέσα στον οργανισµό µεταξύ δικτύων, εξυπηρετητών και αποθηκών δεδοµένων. 3.4.3 Το υποσύστηµα δηµοσίευσης (Publishing System) Το υποσύστηµα δηµοσίευσης είναι υπεύθυνο για την εξαγωγή περιεχοµένου από τον αποθηκευτικό χώρο των δεδοµένων και την αυτόµατη δηµιουργία δηµοσιεύσεων. Αργυρώ Μανατάκη ΑΜ 1910 32

Το υποσύστηµα δηµοσίευσης (Publishing System) Ένα υποσύστηµα δηµοσίευσης περιλαµβάνει: Φόρµες δηµοσιεύσεων (Publishing Templates): Προγράµµατα που δηµιουργούν δηµοσιεύσεις αυτόµατα. Υπηρεσίες δηµοσιεύσεων: Ένα σύνολο εργαλείων που ελέγχουν τι έχει δηµοσιευτεί και πώς έχει δηµοσιευτεί. Συνδέσεις: Μέθοδοι και εργαλεία που χρησιµοποιούνται για να εισάγουν δεδοµένα από συστήµατα έξω από το CMS. ηµοσιεύσεις ιστού (Web publications): Η πιο συνηθισµένη έξοδος για CMS. Άλλες δηµοσιεύσεις: ιαφορετικές δηµοσιεύσεις από τις δηµοσιεύσεις ιστού, όπως ηλεκτρονικές δηµοσιεύσεις και δηµοσιεύσεις εκτύπωσης. 3.5 Επεκτασιµότητα του Joomla ιαχείριση χρηστών: Το Joomla έχει ένα σύστηµα εγγραφής που επιτρέπει στους χρήστες να διαµορφώσουν τις προσωπικές επιλογές τους. Υπάρχουν εννέα οµάδες χρηστών µε διάφορους τύπους αδειών, δηλαδή σε ποιους χρήστες επιτρέπεται να έχουν πρόσβαση, να εκδώσουν, να δηµοσιεύσουν και να διαχειριστούν. Η επικύρωση είναι ένα σηµαντικό µέρος των πρωτοκόλλων διαχείρισης χρηστών και υποστήριξης Joomla, συµπεριλαµβανοµένων των LDAP, OpenID, ακόµη και του Gmail. Αυτό επιτρέπει στους χρήστες να χρησιµοποιήσουν τις υπάρχουσες πληροφορίες λογαριασµού τους για να βελτιώσουν τη διαδικασία εγγραφής. Αργυρώ Μανατάκη ΑΜ 1910 33

ιαχείριση πολυµέσων (εικόνες, βίντεο, ήχος): Με τον Media manager µπορείτε να δηµοσιεύσετε αρχεία πολυµέσων όπως εικόνες, ήχους. Ακόµα µπορείτε να διαχειριστείτε αρχεία και φάκελους, µετονοµάζοντας, δηµιουργώντας ή διαγάφοντας. Ο διαχειριστής MEDIA είναι ενσωµατωµένος στο εργαλείο Συντάκτης άρθρου ώστε να µπορείτε να εισάγετε εικόνες και άλλα αρχεία οποιαδήποτε στιγµή. ιαχείριση γλωσσών: Υπάρχει διεθνής υποστήριξη για πολλές παγκόσµιες γλώσσες µε utf-8 κωδικοποίηση. Εάν θέλετε τον ιστοχώρο σας σε µια γλώσσα και την διαχείρισή του σε άλλη, οι πολλαπλές γλώσσες είναι δυνατές. ιαχείριση banner (διαφήµισης): Είναι εύκολο να εισάγετε banner και διαφηµίσεις στην ιστοσελίδα σας χρησιµοποιώντας τον banner manager, αρχίζοντας από τη δηµιουργία ενός σχεδιαγράµµατος πελατών. Μόλις προσθέσετε τις καµπάνιες και τα banners, µπορείτε να θέσετε τους αριθµούς εµφάνισης, πρόσθετα URLs, και άλλα. ιαχείριση επαφών: Ο contact manager βοηθά τους χρήστες σας να βρουν το σωστό πρόσωπο και τα στοιχεία επικοινωνίας του. Υποστηρίζει επίσης τις πολλαπλές µορφές επαφών που πηγαίνουν στα συγκεκριµένα άτοµα καθώς επίσης και τις οµάδες. Ψηφοφορίες: Εάν θέλετε να µάθετε περισσότερα για τους χρήστες σας, είναι εύκολο να δηµιουργηθούν ψηφοφορίες µε πολλαπλές επιλογές. Αναζήτηση: Βοηθά στην πλοήγηση των χρηστών στα πιο δηµοφιλή στοιχεία αναζήτησης και παρέχει στον admin στατιστικές αναζήτησης. ιαχείριση συνδέσεων Ιστού: Η παροχή συνδέσµων για τους χρήστες είναι απλή και µπορείτε να τους ταξινοµήσετε σε κατηγορίες, να µετρήσετε ακόµη και τα κλικς. ιαχείριση περιεχοµένου: Μπορείτε να οργανώσετε το περιεχόµενό σας µε οποιοδήποτε τρόπο θέλετε και όχι απαραιτήτως όπως θα είναι στον ιστοχώρο σας. Οι χρήστες σας µπορούν να βαθµολογήσουν τα άρθρα, να τα στείλουν αυτόµατα µε µήνυµα ηλεκτρονικού ταχυδροµείο σε έναν φίλο, ή να τα προβάλλουν Αργυρώ Μανατάκη ΑΜ 1910 34

σε PDF (µε την υποστήριξη utf-8 για όλες τις γλώσσες). Οι administrators µπορούν να αρχειοθετήσουν το περιεχόµενο για την απόκρυψη από επισκέπτες. Στα δηµόσια websites, ενσωµατωµένο ηλεκτρονικό ταχυδροµείο προστατεύει τα email σας από τα spambots. Η δηµιουργία του περιεχοµένου είναι απλή µε το WYSIWYG συντάκτη (What You See Is What You Get δηλαδή ότι δακτυλογραφείτε είναι ακριβώς αυτό που θα εµφανιστεί στην ιστοσελίδα), που δίνει ακόµη και στους αρχάριους χρήστες τη δυνατότητα να συνδυάσουν το κείµενο, εικόνες µε έναν όµορφο τρόπο. Μόλις δηµιουργήσετε τα άρθρα σας, υπάρχουν διάφορες προ-εγκατεστηµένες ενότητες ώστε να παρουσιαστούν τα δηµοφιλέστερα άρθρα, τα πιό πρόσφατα νέα στοιχεία, newsflashes, σχετικά άρθρα, και άλλα. Syndication και διαχείριση Newsfeed: Με το Joomla, είναι εύκολο να συντονίσετε το περιεχόµενό σας µε Syndication, όπου επιτρέπει στους επισκέπτες σας να εγγραφούν στο νέο περιεχόµενο µε τον αγαπηµένο RSS αναγνώστη τους. Είναι εξίσου εύκολο να ενσωµατωθούν οι τροφοδοσίες RSS από άλλες πηγές και να αθροιστούν όλες στο site σας. ιαχείριση MENU επιλογών: Ο MENU manager επιτρέπει να δηµιουργήσετε επιλογές και στοιχεία επιλογών όσα και να χρειάζεστε. Μπορείτε να κτίσετε την ιεραρχία των επιλογών σας (και τα τοποθετηµένα στοιχεία επιλογών) απολύτως ανεξάρτητα από την ικανοποιηµένη δοµή του περιεχοµένου. Τοποθετήστε MENU σε πολλές θέσεις και σε οποιοδήποτε στυλ θέλετε, rollovers, dropdown, flyouts, και οποιοδήποτε σύστηµα ΜΕΝU υπάρχει. Επίσης τα breadcrumbs έρχονται να βοηθήσουν στον προσανατολισµό των επισκεπτών του site. ιαχείριση προτύπων: Τα πρότυπα στο Joomla είναι ένας ισχυρός τρόπος να γίνει το site σας ακριβώς όπως θέλετε, είτε χρησιµοποιώντας ένα ενιαίο πρότυπο για όλο το site είτε ένα ξεχωριστό πρότυπο για κάθε τµήµα του. Ενσωµατωµένο σύστηµα βοήθειας: Το Joomla έχει ενσωµατωµένο τµήµα βοήθειας για να βοηθήσει τους χρήστες µε την εύρεση του τι χρειάζονται. Ένα γλωσσάρι εξηγεί τους όρους στα αγγλικά ενώ ένας ελεγκτής έκδοσης επαληθεύει ότι χρησιµοποιείται την πιό πρόσφατη έκδοση. Αργυρώ Μανατάκη ΑΜ 1910 35

Χαρακτηριστικά γνωρίσµατα συστήµατος: Γρήγορη φόρτωση σελίδων είναι δυνατή µε την page cache, granular-level module caching, και την GZIP συµπίεση σελίδας. Εάν ο διαχειριστής του site σας πρέπει να ανιχνεύσει λάθη και σφάλµατα, η debugging mode και η error reporting είναι ανεκτίµητα. Το FTP layer επιτρέπει τις µεταφορές αρχείων (όπως την εγκατάσταση επεκτάσεων) χωρίς να πρέπει να γίνουν όλοι οι φάκελλοι και τα αρχεία writable, καθιστώντας τη ζωή του admin σας ευκολότερη, αυξάνοντας την ασφάλεια του site σας. Οι Administators επικοινωνούν γρήγορα και αποτελεσµατικά µε τους χρήστες one-on-one µέσω του ιδιωτικού µηνύµατος ή µε όλους τους χρήστες µέσω του συστήµατος µαζικής αποστολής. Υπηρεσίες Ιστού: Με τις υπηρεσίες Ιστού, µπορείτε να χρησιµοποιήσετε τις Remote Procedure Calls (µέσω του HTTP και XML). Μπορείτε επίσης να ενσωµατώσετε τις υπηρεσίες xml-rpc µε το Blogger και Joomla APIs. 3.6 Η δοµή του Joomla Τα δοµικά συστατικά του Joomla είναι: 3.6.1 ηµόσιο τµήµα (Front-end) Ένα web cms αποτελείται από δύο µέρη, ένα Front-end και ένα Back-end. Το δηµόσιο τµήµα (Front-end) είναι στην ουσία αυτό που βλέπουν οι επισκέπτες και οι συνδεδεµένοι χρήστες στο site, δηλαδή οι τελικοί χρήστες. Μέσα στο δηµόσιο τµήµα βρίσκονται τα άρθρα, τα µενού και γενικά όλα τα στοιχεία που θέλουµε να εµφανίζονται στην ιστοσελίδα µας. 3.6.2 Περιοχή διαχείρισης (Back-end) Η περιοχή διαχείρισης (Back-end) είναι το εργαστήριο του Joomla. Μέσα από την περιοχή διαχείρισης ο ιαχειριστής µπορεί να προσθέσει περιεχόµενο, να εµφανίζει ή να αποκρύπτει στοιχεία, να δηµιουργεί χρήστες και γενικά να εκµεταλλεύεται όλες τις δυνατότητες του Joomla. Όλα τα παραπάνω γίνονται στο Back-end από Αργυρώ Μανατάκη ΑΜ 1910 36

εξουσιοδοτηµένα άτοµα. Το Back-end βρίσκεται σε διαφορετική διεύθυνση URL από την ιστοσελίδα. 3.6.3 ικαιώµατα πρόσβασης (Access Rights) Στα web cms, τα ονόµατα χρηστών αποδίδονται στα ενδιαφερόµενα άτοµα και κάθε ένα από αυτά έχει διαφορετικά δικαιώµατα πρόσβασης. Αυτό µπορεί να κυµαίνεται από ένα απλό εγγεγραµµένο χρήστη µέχρι τον «υπέρ-διαχειριστή», ο οποίος έχει τον πλήρη έλεγχο του τοµέα. Στη συνέχεια µε βάση τα δικαιώµατα, η ιστοσελίδα, εµφανίζει διαφορετικό περιεχόµενο. Υπάρχει διαθέσιµη επιλογή για να γίνει επεξεργασία του περιεχοµένου απευθείας από το Front-end ή ο χρήστης έχει το δικαίωµα να εργάζεται στο Back-end. 3.6.4 Μενού (Menus) Τα µενού είναι αντικείµενα µε τα οποία ο χρήστης µπορεί να πλοηγείται στην ιστοσελίδα µας. Μπορεί να είναι οριζόντια ή κατακόρυφα. Τα µενού δηµιουργούνται δυναµικά και συνδέονται µε αντικείµενα του Joomla (ενότητες, κατηγορίες, άρθρα). 3.6.5 Περιεχόµενο (Content) Το περιεχόµενο µπορεί να έχει διάφορες µορφές. Στην πιο απλή περίπτωση, είναι κείµενο. Ωστόσο, το περιεχόµενο µπορεί να είναι µια εικόνα, µια σύνδεση, ένα µουσικό κοµµάτι, ένα απόσπασµα από µια εφαρµογή όπως το Google Maps ή ένας συνδυασµός όλων αυτών. Για να δώσουµε µια γενική άποψη της έννοιας περιεχόµενο, µπορεί να ενσωµατώνεται σε δοµές, για παράδειγµα, τα κείµενα των διαφόρων κατηγοριών αποτελούν περιεχόµενο. Οι κατηγορίες, φυσικά, είναι επίσης περιεχόµενο το οποίο πρέπει να διαχειριστεί. 3.6.6 Επεκτάσεις (Extensions) Τα συστατικά µέρη, οι ενότητες, τα πρότυπα και τα πρόσθετα (plugins) αναφέρονται όλα ως επεκτάσεις (extensions). Επεκτάσεις που προσφέρουν επιπλέον λειτουργίες οι οποίες δεν περιέχονται στον πυρήνα του Joomla. Αργυρώ Μανατάκη ΑΜ 1910 37

3.6.7 Εφαρµογές (Components) Το Joomla σαν web cms πρέπει να είναι επεκτάσιµο και σε θέση να αναπτυχθεί ανάλογα µε τις απαιτήσεις του χρήστη και της ιστοσελίδας. Οι επεκτάσεις που προσφέρουν επιπλέον λειτουργίες και συνήθως έχουν το δικό τους χώρο στη διαχείριση του Joomla ονοµάζονται εφαρµογές (components). Μερικές από αυτές είναι εφαµογές για e-shop, για gallery φωτογραφιών, για e-learning. 3.6.8 Πρόσθετα (Plug-ins) Τα προσθετά (plug-ins) είναι ένα κοµµάτι κώδικα προγραµµατισµού που είναι προσαρτηµένα σε ορισµένα σηµεία του πλαισίου του Joomla για να αλλάζουν τη λειτουργικότητά του. Ένα plug-in µπορεί, για παράδειγµα, να χρησιµοποιηθεί στο εσωτερικό περιεχόµενο του κειµένου για να φορτώσει το περιεχόµενο ενός ενθέµατος (module) στο κείµενο. Τα plugins χρησιµοποιούνται επίσης σε µια ολοκληρωµένη ιστοσελίδα αναζήτησης, προκειµένου να ενσωµατώσουν πρόσθετα εφαρµογές (components). 3.6.9 Ενθέµατα (Μodules) Τα ενθέµατα (modules) µπορούµε να τα παροµοιάσουµε σαν τα "κουτιά" µέσα στα οποία εµφανίζεται το περιεχόµενο, οι εφαρµογές, τα πρόσθετα και γενικά όλα τα αντικείµενα που εµφανίζονται στο δηµόσιο τµήµα της ιστοσελίδας µας. 3.6.10 Πρότυπα (Templates) Τα πρότυπα χρησιµεύουν για να διαχωριστεί το περιεχόµενο από την εµφάνιση. Στα πρότυπα ορίζονται τα χρώµατα, η θέση των ενθεµάτων και γενικά όλη η σχεδίαση της ιστοσελίδας µας. Ένα πρότυπο αποτελείται από τουλάχιστον ένα αρχείο HTML για τη δοµή της σελίδας και ένα αρχείο CSS για τον σχεδιασµό. Μπορούµε είτε να δηµιουργήσουµε εµείς ένα πρότυπο χρησιµοποιώντας τα κατάλληλα προγράµµατα είτε να βρούµε κάποιο δωρεάν στο διαδίκτυο είτε τέλος να αγοράσουµε κάποιο από την µεγάλη γκάµα έτοιµων προτύπων που κυκλοφορεί. 3.6.11 ιαµόρφωση Ρυθµίσεων (Configuration Settings) Οι ρυθµίσεις που ισχύουν για το σύνολο του δικτυακού τόπου προσδιορίζονται χρησιµοποιώντας τη διαµόρφωση ρυθµίσεων. Αυτό περιλαµβάνει το κείµενο τίτλου στο παράθυρο περιήγησης, λέξεις-κλειδιά για τις µηχανές αναζήτησης, διακόπτες Αργυρώ Μανατάκη ΑΜ 1910 38

που επιτρέπουν ή απαγορεύουν τη σύνδεση στο site ή το διακόπτη που θέτει ολόκληρο το site online ή offline και πολλές άλλες λειτουργίες. 3.6.12 Application Programming Interface (API) Σήµερα ένα Application Programming Interface (API), πρέπει να συµβαδίζει µε την εποχή. Πρέπει να δίνει τη δυνατότητα να υπάρχει πρόσβαση στο Joomla από άλλα προγράµµατα. Αυτό ανοίγει εντελώς νέες εφαρµογές που δεν ήταν προηγουµένως εφικτές µε Joomla. Ένα API είναι ο πιο σηµαντικός σύνδεσµος µεταξύ τρίτων επεκτάσεων και του πυρήνα του Joomla. 3.7 Σύγκριση του Joomla µε άλλα CMS ιεξάγεται µεγάλη µάχη ανάµεσα στα συστήµατα διαχείρισης περιεχοµένου (CMS) ανοιχτού κώδικα, µε πολλές αξιόλογες προτάσεις. Κάθε εφαρµογή έχει πλεονεκτήµατα και µειονεκτήµατα, ενώ µεγάλο ρόλο στην τελική απόφαση παίζουν οι απαιτούµενες προδιαγραφές των υπό κατασκευή ιστοσελίδων. Συµφώνα µε έρευνες των τελευταίων χρόνων τα τρία συστήµατα διαχείρισης περιεχοµένου που κυριαρχούν στην αγορά σήµερα είναι: WordPress, Joomla και Drupal. Οι αριθµοί δείχνουν ότι αυτά τα τρία συστήµατα διαχείρισης περιεχοµένου έχουν παίξει καθοριστικό ρόλο στην διαµόρφωση της αγοράς. Το Joomla είναι ίσως το καταλληλότερο για αυτούς που αναζητούν ένα ιστότοπο απλό όσον αφόρα την ανάπτυξη, τη διαχείριση αλλά και τη χρήση του, χωρίς αυτό να σηµαίνει ότι υστερεί σε ποιότητα και αξιοπιστία. Αποτελεί ένα από τα πιο ενδιαφέροντα και ισχυρά open source CMS και αυτό οφείλεται τόσο στην αρχιτεκτονική του κώδικά του αλλά κυρίως στην κοινότητα που το περιβάλλει και το υποστηρίζει. Το Joomla µπορεί να βρει εφαρµογή από µια προσωπική ιστοσελίδα στην οποία ο πελάτης θέλει να έχει δυναµικά στοιχεία έως µια µεγάλη επιχείρηση µε δεκάδες χειριστές να ανανεώνουν το περιεχόµενο του, βάση group policies που ορίζονται από τους διαχειριστές. Αρχικά, η δοµή του δεν είναι περίπλοκη. Έχει αναπτυχθεί για όλους και ο καθένας µπορεί να το αναπτύξει περαιτέρω. Το περιβάλλον διαχείρισης είναι αρκετά διαισθητικό, µε αποτέλεσµα να δίνει ξεκάθαρη εικόνα στον διαχειριστή για τις Αργυρώ Μανατάκη ΑΜ 1910 39

κινήσεις που πρέπει να κάνει. Υπάρχει µεγάλη ποικιλία προτύπων (templates) τα οποία επιτρέπουν στον ιστότοπο να έχει µια καλή εµφάνιση και αρκετά από αυτά είναι δωρεάν. Είναι πολυγλωσσικό, υποστηρίζοντας ακόµα και γλώσσες που γράφονται από δεξιά προς τα αριστερά (π.χ. εβραϊκά ή αραβικά). Ανάµεσα στα µειονεκτήµατα του Joomla βρίσκεται ότι µε µία εγκατάσταση του µας δίνεται η δυνατότητα για έναν µόνο ιστότοπο. Επίσης υπάρχει περιορισµός στη διανοµή των ρόλων των χρηστών και στις άδειες πρόσβασης που δίνει. Πόλυ σηµαντικό είναι ότι τα URLs του δεν είναι αρκετά φιλικά στις µηχανές αναζήτησης, αν και υπάρχει module επί πληρωµής που βοηθάει στην βελτίωση του. Το Drupal µπορεί εύκολα να δηµιουργήσει πολλούς διαφορετικούς τύπους ιστοσελίδων από απλά web blogs µέχρι µεγάλες online κοινότητες. Στο Drupal ο σχεδιασµός του δεν είναι τόσο ζωηρόχρωµος όσο του Joomla, αλλά είναι πολύ εύκολο να προσαρµοστεί. Αυτό που δεν µπορεί να προσαρµοστεί εύκολα είναι η ορολογία του διαχειριστικού περιβάλλοντος που µπορεί να γίνει αρκετά δυσνόητη για µη ειδικευµένους χρήστες. Σε αντίθεση µε το Joomla, µας δίνει την δυνατότητα µε µια εγκατάσταση να δηµιουργήσουµε και να διαχειριστούµε πολλαπλούς ιστότοπους. Επίσης, έχει ενσωµατωµένο εργαλείο αναζήτησης και αναζητήσεις-φιλικές προς τις µηχανές αναζήτησης ως ένα επιπλέον module. Όσο αναφορά το WordPress, είναι µία open source blog εφαρµογή γραµµένη σε php. Ενώ το WordPress είναι ευρύτερα γνωστό ως blogging πλατφόρµα, είναι κατά πολλούς τρόπους ένα CMS. Στον πυρήνα του, το σύστηµα WordPress επιτρέπει τη δηµιουργία και τη διαχείριση του περιεχοµένου που δηµιουργείται µέσα στα ιστολόγια (blogs). Το WordPress είναι ο επίσηµος διάδοχος µίας άλλης Web εφαρµογής που ονοµάζεται b2cafelog. Σε γενικές γραµµές το WordPress είναι πιο απλοποιηµένο. Σαν interface είναι αρκετά ευκολότερο από ότι το Joomla και το Drupal. Η διαµόρφωση της εµφάνισης (templating), όπως και στο Joomla γίνεται µε την επιλογή ενός προτύπου και την επεξεργασία του αρχείου CSS. To WordPress δεν είναι ένα πλήρες εργαλείο CMS. Πάνω σε αυτό βασίζονται οι πιο πολλές διαφορές µε το Joomla και το Drupal. Αργυρώ Μανατάκη ΑΜ 1910 40

Είναι βραδύτερο από τα άλλα δύο CMS (Joomla και Drupal), αυτό για παράδειγµα µπορεί να διορθωθεί αν βελτιστοποιήσει ο χρήστης χειροκίνητα τα ερωτήµατα της βάσης δεδοµένων, αποβάλει ορισµένα κοµµάτια κώδικα, συµπιέσει τα CSS αρχεία και αν εφαρµοστεί προσωρινή αποθήκευση (caching). Μερικά από αυτά είναι µέρος της αρχιτεκτονικής του Drupal και του Joomla και αυτό είναι που τα κάνει πιο γρήγορα. Συµπεραίνουµε, λοιπόν, ότι καθένα από τα συστήµατα διαχείρισης περιεχοµένου που αναλύσαµε (Joomla, Drupal, Wordpress) έχει πλεονεκτήµατα και µειονεκτήµατα. Οι χρήστες επιλέγοντας το CMS που καλύπτει τις απαιτήσεις τους και είναι ανάλογο των δυνατοτήτων τους θα έχουν τα επιθυµητά αποτελέσµατα. Αργυρώ Μανατάκη ΑΜ 1910 41

Κεφάλαιο 4 - Εγκατάσταση απαραίτητων εργαλείων και Joomla 4.1 Τοπικός Server Apache Ο Apache HTTP γνωστός και απλά σαν Apache είναι ένας εξυπηρετητής του παγκόσµιου ιστού (web). Όποτε επισκέπτεστε έναν ιστότοπο ο πλοηγός σας επικοινωνεί µε έναν διακοµιστή HTTP. O Apache είναι ένας από τους δηµοφιλέστερους, εν µέρει γιατί λειτουργεί σε διάφορες πλατφόρµες σαν τα Windows, το Linux, το Unix, και το Mac OS X. ιατηρείται τώρα από µια κοινότητα ανοιχτού κώδικα µε επιτήρηση από το Ίδρυµα Λογισµικού Apache (Apache Software Foundation). Η πρώτη του έκδοση, γνωστή ως NCSA HTTPd, δηµιουργήθηκε από τον Robert McCool και κυκλοφόρησε το 1993. Θεωρείται ότι έπαιξε σηµαντικό ρόλο στην αρχική επέκταση του ιστού. Ήταν η πρώτη βιώσιµη εναλλακτική επιλογή που παρουσιάστηκε απέναντι στον εξυπηρετητή http της εταιρείας Netscape και από τότε έχει εξελιχθεί σε σηµείο να ανταγωνίζεται άλλους εξυπηρετητές βασισµένους στο Unix σε λειτουργικότητα και απόδοση. Από το 1996 ήταν από τους πιο δηµοφιλείς όµως από τον Μάρτιο του 2006 έχει µειωθεί το ποσοστό της εγκατάστασής του κυρίως από τον Microsoft Internet Information Services και τη πλατφόρµα.net. Τον Οκτώβριο του 2007 το µερίδιο του ήταν 47.73% από όλους τους ιστοτόπους. Ο Apache είναι ένα ελεύθερο ανοικτού κώδικα λογισµικό. Εκτός του κόστους, είναι ιδιαίτερα διαµορφώσιµο και είναι πλήρες των προηγµένων χαρακτηριστικών γνωρισµάτων, όπου αυτός είναι και ο κύριος λόγος για τον οποίο οι περισσότεροι πάροχοι web hosting τον χρησιµοποιούν. 4.2 PHP Η PHP είναι µια ευρέως χρησιµοποιούµενη, γενικού σκοπού scripting γλώσσα η οποία είναι κατάλληλη για ανάπτυξη web σελίδων και µπορεί να ενσωµατωθεί σε HTML κώδικα. Εκτελείται σε έναν web server, λαµβάνοντας ως είσοδο PHP κώδικα και παράγοντας ως έξοδο ιστοσελίδες. Μπορεί να αναπτυχθεί στους περισσότερους Αργυρώ Μανατάκη ΑΜ 1910 42

web servers, σε σχεδόν κάθε λειτουργικό σύστηµα και πλατφόρµα και µπορεί να χρησιµοποιηθεί µε τα περισσότερα συστήµατα διαχείρισης βάσεων δεδοµένων (DBMS). Η PHP είναι εγκατεστηµένη σε περισσότερες από 20 εκατοµµύρια ιστοσελίδες και 1 εκατοµµύριο web servers. Αντίθετα από µια συνηθισµένη HTML σελίδα, η σελίδα PHP δεν στέλνεται άµεσα σε έναν πελάτη (client-side), αλλά πρώτα µεταγλωττίζεται στο web server (server-side) και µετά αποστέλλεται το παραγόµενο αποτέλεσµα. Έτσι τα στοιχεία HTML στον πηγαίο κώδικα µένουν ως έχουν, αλλά ο PHP κώδικας µεταγλωττίζεται και εκτελείται. Η µεταγλώττιση αυτή αυξάνει το χρόνο εκτέλεσης του script διότι προσθέτει ένα επιπλέον βήµα προς εκτέλεση. Τα PHP scripts µπορούν να µεταγλωττιστούν και από πριν, µε την χρήση των PHP compilers όπως γίνεται και σε άλλες γλώσσες προγραµµατισµού όπως η C. Η PHP είναι παρόµοια µε άλλες serverside scripting γλώσσες που παρέχουν δυναµικό περιεχόµενο από τον web server στο πελάτη (client), όπως το ASP.NET της Microsoft, οι JavaServer Pages της Sun Microsystems και mod_perl. Ο κώδικας της PHP µπορεί να θέσει ερωτήµατα σε βάσεις δεδοµένων, να δηµιουργήσει εικόνες, να διαβάσει και να γράψει αρχεία, να συνδεθεί µε αποµακρυσµένους υπολογιστές, κ.ο.κ. Σε γενικές γραµµές οι δυνατότητες που µας δίνει είναι απεριόριστες. H PHP είναι cross-platform. Cross-platform (ή multi-platform) είναι ένα λογισµικό το οποίο µπορεί να τρέξει σε πολλά λειτουργικά συστήµατα και πλατφόρµες. Στην περίπτωση µας η PHP µπορεί να τρέξει σε Windows, Linux, BSD, Mac OS X, Solaris καθώς και σε πολλές άλλες πλατφόρµες. Συνοπτικά τα πλεονεκτήµατα της PHP σε σχέση µε άλλες scripting γλώσσες που χρησιµοποιούνται για ανάπτυξη ιστοσελίδων περιγράφονται παρακάτω. 4.2.1 Βασικά χαρακτηριστικά της PHP Η PHP είναι δωρεάν. Μπορείτε να κατεβάσετε τον πηγαίο κώδικα, να το χρησιµοποιήσετε, να κάνετε αλλαγές σε αυτό, να το τροποποιήσετε σύµφωνα µε τις ανάγκες Αργυρώ Μανατάκη ΑΜ 1910 43

σας χωρίς ποτέ να χρειαστεί να καταβάλατε κάποιο χρηµατικό κόστος. Μπορείτε ακόµη να µοιραστείτε ή και να πουλήσετε την δικιά σας τροποποιηµένη έκδοση της PHP. Το ότι είναι δωρεάν δεν σηµαίνει ότι θα πρέπει να µοιράσετε την δουλεία σας δωρεάν. Η PHP είναι γρήγορη. Στην πλειοψηφία των προγραµµάτων, η PHP µπορεί να ανταγωνιστεί εύκολα την Perl και Python, και συνήθως είναι 10-15% πιο γρήγορη από την ASP.NET της Microsoft. Η PHP είναι ικανή. Υπάρχουν χιλιάδες έτοιµες συναρτήσεις που µπορούν να εκτελέσουν ένα ευρύ φάσµα έργων, όπως χειρισµός βάσεων δεδοµένων όλων των ειδών (MySQL, Oracle, MS SQL, PostgreSQL, και πολλά άλλα), upload αρχείων, FTP, email, γραφικών διεπαφών, δηµιουργώντας Flash ταινίες, και άλλα. Η PHP είναι αξιόπιστη. Η PHP κατασκευάστηκε από τα ίδια άτοµα που έφτιαξαν και το Apache, που είναι ο πιο δηµοφιλής web server. Η PHP είναι εύκολη στο debugging(αποσφαλµάτωσης). Υπάρχουν µια σειρά από προγράµµατα(εµπορικά και δωρεάν) εντοπισµού σφαλµάτων που καθιστούν πολύ εύκολο το debugging του κώδικα. Η PHP υποστηρίζεται από µεγάλες εταιρίες. ύο από τους πιο βασικούς συντελεστές της PHP ίδρυσαν µια εταιρεία, µε όνοµα Zend, που υποστηρίζει την πώληση προϊόντων και την τεχνική υποστήριξη για τη γλώσσα, οπότε δεν υπάρχει λόγος να ανησυχείτε για τον αν η PHP δεν υποστηρίζεται από µια µεγάλη εταιρεία. Η PHP υποστηρίζεται από πολλές κοινότητες. Υπάρχουν πολλές δηµοφιλείς PHP websites που προσφέρουν τεχνική υποστήριξη στο χρήστη σχετικά µε την PHP, καθώς και αρκετά email στα οποία µπορούν να σας δώσουν απαντήσεις, όταν τις χρειάζεται.. Η PHP αναπτύσσεται συνεχώς. Με την δηµιουργία της PHP 5, εισήχθησαν νέα χαρακτηριστικά όπως Αργυρώ Μανατάκη ΑΜ 1910 44

καλύτερο error handling(διαχείριση σφαλµάτων), πιο αντικειµενοστραφής προσανατολισµός και µεγαλύτερη ταχύτητα. Η PHP είναι η γλώσσα όλων. Το καλύτερο πράγµα µε την PHP είναι ότι είναι εξαιρετικά απλή για ένα µη εξειδικευµένο χρήστη, παράλληλα όµως προσφέρει πολλά προηγµένα χαρακτηριστικά σε έναν επαγγελµατία προγραµµατιστή. 4.3 MySQL H MySQL είναι βάση δεδοµένων µέσα στην οποία µπορούµε να καταχωρούµε, επεξεργαζόµαστε, αναζητούµε και να ταξινοµούµε δεδοµένα. Παρέχει τη δυνατότητα λειτουργίας από πολλαπλούς χρήστες µε ασφάλεια αφού µόνο οι κατοχυρωµένοι ως χρήστες έχουν πρόσβαση στα δεδοµένα της. Χρησιµοποιεί γλώσσα SQL που είναι η πιο διαδεδοµένη γλώσσα στις βάσεις δεδοµένων. Τα αρχικά MySQL προέρχονται από τις λέξεις My Structured Query Language. Το πρόγραµµα λειτουργεί ως διακοµιστής παροχής πρόσβασης πολλών χρηστών σε µια σειρά από βάσεις δεδοµένων. ηλαδή, παρέχει τη δυνατότητα λειτουργίας από πολλαπλούς χρήστες µε ασφάλεια αφού µόνο οι κατοχυρωµένοι ως χρήστες έχουν πρόσβαση στα δεδοµένα της. Χρησιµοποιεί τη γλώσσα SQL που είναι η πιο διαδεδοµένη γλώσσα στις βάσεις δεδοµένων. Η MySQL είναι ένα σύστηµα διαχείρισης σχεσιακών βάσεων δεδοµένων (RDBMS) το οποίο µετρά περισσότερες από 11 εκατοµµύρια εγκαταστάσεις. Έλαβε το όνοµά του από την κόρη του Μόντυ Βιντένιους, την Μάι. Το πρόγραµµα τρέχει έναν εξυπηρετητή (server) παρέχοντας πρόσβαση πολλών χρηστών σε ένα σύνολο βάσεων δεδοµένων. Ο κωδικός του εγχειρήµατος είναι διαθέσιµος µέσω της GNU General Public License, καθώς και µέσω ορισµένων ιδιόκτητων συµφωνιών. Ανήκει και χρηµατοδοτείται από µία και µοναδική κερδοσκοπική εταιρία, τη σουηδική MySQL AB, σήµερα θυγατρική της Sun Microsystems. Αργυρώ Μανατάκη ΑΜ 1910 45

4.3.1 Πλεονεκτήµατα της Mysql Μερικοί από τους κύριους ανταγωνιστές της Mysql είναι οι PostgreSQL, Microsoft SQL Server, Oracle. Τα πλεονεκτήµατα όµως της Mysql είναι τα εξής: Υψηλή απόδοση Χαµηλό κόστος Εύκολη διαµόρφωση και εκµάθηση Μεταφερσιµότητα ιαθεσιµότητα του κώδικα προέλευσης ιαθεσιµότητα υποστήριξης 4.4 Εργαλείο phpmyadmin Το PhpMyAdmin είναι ένα εργαλείο γραµµένο σε PHP µε το οποίο διαχειριζόµαστε τις βάσεις δεδοµένων που έχουµε µέσω web. Το phpmyadmin µπορεί να χειρίζεται πλήρως βάσεις δεδοµένων, πίνακες, πεδία πινάκων αλλά και ένα ολόκληρο MySQL Server. Υποστηρίζει 54 γλώσσες, µεταξύ των οποίων και τα ελληνικά και είναι λογισµικό ανοιχτού κώδικα. Αργυρώ Μανατάκη ΑΜ 1910 46

phpmyadmin υνατότητες του phpmyadmin : ηµιουργεί και διαγράφει βάσεις δεδοµένων. ηµιουργεί, τροποποιεί, διαγράφει, αντιγράφει και µετονοµάζει πίνακες. Κάνει συντήρηση της βάσης. Προσθέτει, διαγράφει και τροποποιεί πεδία πινάκων. Εκτελεί ερωτήµατα SQL ακόµα και οµαδικά (batch). ιαχειρίζεται κλειδιά σε πεδία. Φορτώνει αρχεία κειµένου σε πίνακες. ηµιουργεί και διαβάζει πίνακες (που προέρχονται από dump βάσης). Εξάγει δεδοµένα σε µορφή CVS, XML και LATEX. ιαχειρίζεται πολλούς διακοµιστές. ιαχειρίζεται τους χρήστες MySQL και τα δικαιώµατα τους. Ελέγχει την αναφορική δραστηριότητα των δεδοµένων των MyISAM πινάκων. ηµιουργεί PDF γραφικών του layout της βάσης δεδοµένων. Εκτελεί αναζητήσεις σε όλη τη βάση δεδοµένων ή µέρος αυτής. Υποστηρίζει πίνακες InnoDB και ξένα κλειδιά. Υποστηρίζει MySQLi, µια βελτιωµένη επέκταση του MySQL. Αργυρώ Μανατάκη ΑΜ 1910 47

4.5 Εργαλεία που απαιτούνται Η δηµιουργία ενός Τουριστικού Οδηγού χρησιµοποιώντας το Joomla CMS προαπαιτεί και κάποιες άλλες λειτουργίες. Αρχικά, η εγκατάσταση του Τουριστικού Οδηγού θα γίνει τοπικά οπότε πρέπει να χρησιµοποιηθεί ένας τοπικός server, πάνω στον οποίο θα στηθεί η ιστοσελίδα. Στην εργασία αυτή θα χρησιµοποιηθεί ο Apache HTTP. Επίσης, πρέπει να έχει εγκατασταθεί στον ηλεκτρονικό υπολογιστή που χρησιµοποιούµε η γλώσσα προγραµµατισµού PHP για την διαµόρφωση του site. Όσον αφορά τη δηµιουργία της βάσης δεδοµένων στην οποία θα αποθηκεύονται όλες οι πληροφορίες που αφορούν τον Τουριστικό Οδηγό θα χρησιµοποιηθεί η MySQL. Ακόµη, θα χρησιµοποιηθεί και το εργαλείο phpmyadmin µε το οποίο θα διαχειριζόµαστε τη βάση δεδοµένων που έχουµε. 4.6 Εγκατάσταση του XAMPP Το XAMPP είναι ένα ελεύθερο και ανοικτό cross-platform web server package, που αποτελείται κυρίως από τον Apache HTTP Server, τη MySQL βάση δεδοµένων και των διερµηνέων για scripts γραµµένα σε γλώσσες προγραµµατισµού PHP και Perl. Είναι ένα χρήσιµο εργαλείο που µας βοηθάει να µετατρέψουµε τον υπολογιστή µας σε web server. Στην εργασία αυτή γίνεται εγκατάσταση του XAMPP 2.5.8 σε περιβάλλον Windows XP. Η έκδοση XAMPP 1.7.3 για Windows περιέχει: Apache 2.2.14 (IPv6 enabled) + OpenSSL 0.9.8l MySQL 5.1.41 + PBXT engine PHP 5.3.1 phpmyadmin 3.2.4 Perl 5.10.1 FileZilla FTP Server 0.9.33 Mercury Mail Transport System 4.72 Αργυρώ Μανατάκη ΑΜ 1910 48

Από την ιστοσελίδα http://www.apachefriends.org κατεβάζουµε στον υπολογιστή µας το.exe αρχείο xampp-win32-1.7.3. Αφού κατέβει επιτυχώς, τρέχουµε το αρχείο και µας εµφανίζεται η παρακάτω οθόνη. Μας ζητάει να επιλέξουµε το φάκελο στον οποίο θα αποθηκεύσει τα απαραίτητα αρχεία για την λειτουργία του, επιλέγουµε να τα αποθηκεύσει στον σκληρό δίσκο C και πατάµε install για να αρχίσει η εγκατάσταση. Αφού ολοκληρωθεί η εγκατάσταση µας ρωτάει εάν επιθυµούµε να δηµιουργηθεί συντόµευση στην επιφάνεια εργασίας. Εάν επιθυµούµε πληκτρολογούµε y και έπειτα enter, εάν όχι πληκτρολογούµε n και enter. Αργυρώ Μανατάκη ΑΜ 1910 49

Στη συνέχεια, µας ενηµερώνει ότι πρέπει να τοποθετήσει σωστά τα XAMPP paths και ζητάει την έγκριση µας για να συνεχίσει. Με τον ίδιο τρόπο, όπως παραπάνω, δίνουµε εντολή για ναι. Έπειτα, πληκτρολογούµε n για να µην χρησιµοποιήσει τα drive letters XAMPP επειδή δεν θα χρησιµοποιήσουµε USB sticks. Αργυρώ Μανατάκη ΑΜ 1910 50

Η εγκατάσταση συνεχίζεται και το XAMPP είναι έτοιµο για χρήση. Πληκτρολογήσουµε "Return" για να συνεχίσουµε. Εµφανίζεται η παρακάτω οθόνη, η οποία µας ενηµερώνει ότι στα αρχεία "php.ini" και "my.ini" έχει οριστεί η ζώνη ώρας "Europe/Helsinki". Αργυρώ Μανατάκη ΑΜ 1910 51

Αυτό δεν ανταποκρίνεται στα δικά µας δεδοµένα οπότε όταν ολοκληρωθεί η εγκατάσταση του XAMPP θα επισκεφτούµε το link http://us2.php.net/manual/en/timezones.europe.php για να δούµε πως ορίζει τη ζώνη ώρας για την Ελλάδα. Βλέπουµε ότι η ζώνη ώρας αναφέρεται ως Mode/Athens. Για να δούµε πως ορίζει τη ζώνη ώρας για την Ελλάδα. Βλέπουµε ότι η ζώνη ώρας αναφέρεται ως Mode/Athens. Πηγαίνουµε στο C:\xampp\php\php.ini να αλλάξουµε τo αρχείο "php.ini". Ανοίγουµε το αρχείο µε ένα notpad και ψάχνουµε για το σηµείο που θα βρούµε τον παρακάτω κώδικα. Κώδικας: Αλλάζουµε αυτό το κοµµάτι κώδικα συµφωνά µε το παρακάτω. Κώδικας: Σώζουµε τις αλλαγές και κάνουµε επανεκκίνηση τον Apache server για να αναγνωρίσει τις αλλαγές. Την ίδια διαδικασία ακολουθούµε και για το αρχείο "my.ini". Πηγαίνουµε στο C:\xampp\mysql\bin\my.ini όπου βρίσκεται το συγκεκριµένο αρχείο και το ανοίγουµε µε ένα notepad. Βρίσκουµε το παρακάτω σηµείο κώδικα: Κώδικας: Το αλλάζουµε σύµφωνα µε τη δικιά µας ζώνη. Αργυρώ Μανατάκη ΑΜ 1910 52

Κώδικας: Σώζουµε το αρχείο και κάνουµε επανεκκίνηση την MySQL. Στη συνέχεια της εγκατάστασης του XAMPP, µας έχει κάποιες επιλογές για το τι θέλουµε να κάνουµε στο συγκεκριµένο σηµείο. Επιλέγουµε start XAMPP Control Panel, δηλαδή πληκτρολογούµε 1, για να φύγουµε από τις οθόνες εγκατάστασης και να ανοίξει το Control Panel του XAMPP. Αργυρώ Μανατάκη ΑΜ 1910 53

Στο Control Panel θα πατήσουµε Start στον Apache και την ΜySql. Ανοίγουµε ένα browser της αρεσκείας µας και πληκτρολογούµε http://localhost/ ή http://127.0.0.1/. Μας εµφανίζει την πρώτη σελίδα του XAMPP. Αργυρώ Μανατάκη ΑΜ 1910 54

Αρχικά, πρέπει να επιλέξουµε γλώσσα, η ελληνική γλώσσα δεν υπάρχει έτσι επιλέγουµε αγγλικά και συνεχίζουµε. εχόµαστε συγχαρητήρια για την επιτυχή εγκατάσταση του ΧΑΜΡΡ. Από το αριστερό µενού επιλέγουµε το security για να θέσουµε τους κωδικούς για την MySql και για την προστασία του XAMPP directory. Αργυρώ Μανατάκη ΑΜ 1910 55

Αφού θέσουµε τους κωδικούς της MySql, εµφανίζεται το παρακάτω µήνυµα στην οθόνη του XAMPP. Αργυρώ Μανατάκη ΑΜ 1910 56

Στη συνέχεια θέτουµε όνοµα χρήστη και τον κωδικό για την προστασία του XAMPP Directory. Αργυρώ Μανατάκη ΑΜ 1910 57

Και εµφανίζεται το παρακάτω µήνυµα στην οθόνη του XAMPP. Για να δηµιουργήσουµε τη βάση δεδοµένων, από το µενού της αριστερής στήλης του κέντρου διαχείρισης του XAMPP, από την ενότητα Tools επιλέγουµε το phpmyadmin. Κάνουµε login µε το username: root και το password που βάλαµε. Αργυρώ Μανατάκη ΑΜ 1910 58

Στο πλαίσιο MySQL localhost, υπάρχει η δυνατότητα "Create new database". Συµπληρώνουµε το όνοµα της βάσης µας στο πρώτο πεδίο, εδώ το όνοµα της βάσης µας θα είναι "joomla". Στο πεδίο "Collation" επιλέγουµε utf8_unicode_ci και κάνουµε κλικ στο κουµπί Create. Η νέα βάση δεδοµένων έχει δηµιουργηθεί. 4.7 Εγκατάσταση του Joomla Αργυρώ Μανατάκη ΑΜ 1910 59

Στην εργασία αυτή χρησιµοποιήσαµε την έκδοση 1.5.15 του Joomla. Αρχικά, πρέπει να κατεβάσουµε το αρχείο "Joomla_1.5.10-Stable-Full_Package.zip" από το http://www.joomla.org/. Αφού έχουµε κατεβάσει το zip αρχείο, πηγαίνουµε στον φάκελο htdocs που βρίσκεται στο C:\xampp\htdocs και δηµιουργούµε ένα φάκελο στον οποίο θα αποθηκεύσουµε τα αρχεία που περιέχει το zip αρχείο, ονοµάζουµε τον φάκελο "joomla". Στη συνέχεια, πηγαίνουµε στο browser και πληκτρολογούµε http://localhost/joomla. Η πρώτη οθόνη που εµφανίζεται µας ζητάει να επιλέξουµε γλώσσα που θα χρησιµοποιήσουµε κατά την εγκατάσταση του Joomla. Επιλέγουµε την ελληνική γλώσσα και συνεχίζουµε κάνοντας κλικ στο κουµπί "Next". Αργυρώ Μανατάκη ΑΜ 1910 60

Στην δεύτερη οθόνη εγκατάστασης γίνεται προληπτικός έλεγχος για όλα τα στοιχεία που χρειάζεται το Joomla για την σωστή του λειτουργία (PHP, MySQL, κ.τ.λ.). Στον έλεγχο που έγινε όλα είναι θετικά και συνεχίζουµε στο επόµενο βήµα κάνοντας κλικ στο κουµπί "Επόµενο". Αργυρώ Μανατάκη ΑΜ 1910 61

Στη συνέχεια διαβάζουµε την άδεια χρήσης του Joomla και κάνουµε κλικ στο κουµπί "Επόµενο". Στο επόµενο βήµα της εγκατάστασης πρέπει να ρυθµίσουµε τη βάση δεδοµένων. Στις βασικές ρυθµίσεις επιλέγουµε συµπληρώνουµε τα εξής : Είδος βάσης δεδοµένων: επιλέγουµε την mysql Όνοµα διακοµιστή: localhost Όνοµα χρήστη: root Κωδικός: βάζουµε τον κωδικό που είχαµε δώσει πριν για την mysql Όνοµα βάσης δεδοµένων: joomla Αφού τα συµπληρώσουµε κάνουµε κλικ στο κουµπί "Επόµενο" και συνεχίζουµε την εγκατάσταση. Αργυρώ Μανατάκη ΑΜ 1910 62

Ακολουθούν οι ρυθµίσεις FTP, όπου δεν συµπληρώνουµε τίποτα γιατί δεν αφορούν την τοπική εγκατάσταση, και συνεχίζουµε στο επόµενο βήµα. Εδώ µας ζητάει να ορίσουµε τις βασικές ρυθµίσεις της ιστοσελίδας µας. Και συµπληρώνουµε τα πεδία ως εξής: Όνοµα Ιστοτόπου: Εισάγουµε την ονοµασία του ιστότοπου µας, στην δική µας περίπτωση βάζουµε www.travel-europe.gr. Αργυρώ Μανατάκη ΑΜ 1910 63

H διεύθυνση ηλεκτρονικού ταχυδροµείου σας: Εισάγουµε το ηλεκτρονικό µας ταχυδροµείο, αλλά επειδή η εφαρµογή θα χρησιµοποιηθεί τοπικά µπορούµε να βάλουµε και µία τυχαία διεύθυνση. Κωδικός ιαχειριστή: Βάζουµε τον κωδικό µε τον οποίο θα εισερχόµαστε στο διαχειριστικό κοµµάτι της ιστοσελίδας µας (Back-end Joomla). Επιβεβαίωση κωδικού διαχειριστή: Επιβεβαιώνουµε τον κωδικό. Σε περίπτωση που επιθυµούµε το Joomla να µας φτιάξει µια ενδεικτική αρχική σελίδα, κάνουµε κλικ στο κουµπί "Εισαγωγή Ενδεικτικού Περιεχοµένου". Εµείς δεν θέλουµε να εισάγει ενδεικτικό περιεχόµενο οπότε κάνουµε κλικ στο κουµπί "Επόµενο". Η εγκατάστασή µας έχει ολοκληρωθεί, οπότε στην τελευταία οθόνη εγκατάστασης µας εµφανίζεται ένα µήνυµα που µας ενηµερώνει ότι σε αυτό το σηµείο πρέπει να διαγράψουµε τον φάκελο installation. Εάν δεν το κάνουµε δεν µπορούµε να προχωρήσουµε περαιτέρω. Πρόκειται για µια δικλείδα ασφαλείας του Joomla. Αργυρώ Μανατάκη ΑΜ 1910 64

Ο φάκελος instalation βρίσκεται στον φάκελο εγκατάστασης του Joomla, µε όνοµα "joomla". Μόλις διαγράψουµε τον φάκελο instalation, επιστρέφουµε στη σελίδα εγκατάστασης του Joomla και ως επόµενη επιλογή έχουµε δύο κουµπιά, "Ιστότοπος" και " ιαχείριση". Πατώντας το κουµπί "Ιστότοπος" θα µπορέσουµε να εισέλθουµε στον ιστότοπο µας. Ο οποίος είναι στο πρωταρχικό του στάδιο βέβαια χωρίς καν την εισαγωγή του ενδεικτικού περιεχοµένου (αφού δεν πατήσαµε εισαγωγή). Αργυρώ Μανατάκη ΑΜ 1910 65

Εάν πατήσουµε το κουµπί " ιαχείριση" θα εισέλθουµε στο Back-end του Joomla από το οποίο θα δώσουµε την επιθυµητή µας µορφή στον ιστότοπο µας. Το Username είναι "admin" διότι στην σελίδα εγκατάστασης του Joomla που µας έλεγε να διαγράψουµε το φάκελο instalation, µας έδινε και τα Στοιχεία Πρόσβασης ιαχειριστή δηλαδή το Όνοµα Χρήστη: admin. Ως Password βάζουµε τον Κωδικό ιαχειριστή που είχαµε δώσει προηγουµένως. Από εδώ και στο εξής θα εισερχόµαστε στο Back-end του Joomla γράφοντας http://localhost/joomla/administrator. Αργυρώ Μανατάκη ΑΜ 1910 66