Download - Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Transcript
Page 1: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

ΑΛΕΞΑΝΔΡΕΙΟ ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟΙΔΡΥΜΑ ΘΕΣΣΑΛΟΝΙΚΗΣ

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

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

«ΑΝΑΠΤΥΞΗ ΔΙΑΔΙΚΤΥΑΚΩΝ ΕΦΑΡΜΟΓΩΝ ΜΕ ΤΗΝ ΠΛΑΤΦΟΡΜΑ JOOMLA»

ΧΑΤΖΗΓΙΑΝΝΗ ΘΕΟΔΩΡΑ Α.Μ. 083339

ΕΠΙΒΛΕΠΩΝ: ΣΦΕΤΣΟΣ ΠΑΝΑΓΙΩΤΗΣΘΕΣΣΑΛΟΝΙΚΗ ΙΟΥΝΙΟΣ 2014

Page 2: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Πρόλογος

Φαντάζει ένας ολόκληρος αιώνας, αλλά είναι μόλις ένα τέταρτο του αιώνα. Ο

Παγκόσμιος Ιστός γίνεται 25 ετών. Σαν σήμερα, στις 12 Μαρτίου 1989 ο βρετανός

Τιμ Μπέρνερς Λι, παρουσίασε ξαφνικά σε μία τεχνική εργασία ορόσημο, την ιδέα

του για έναν νέο εύκολο τρόπο, με τον οποίο οι χρήστες του Διαδικτύου θα

μπορούσαν να αποκτούν πρόσβαση σε αρχεία και ιστοσελίδες. Εκείνη η

ημερομηνία θεωρείται η ημέρα γέννησης του Ιστού. Μπορεί το Διαδίκτυο να είχε,

ήδη, δημιουργηθεί πριν αρκετά χρόνια, όμως μόνο όταν συνδυάστηκε με τον

Παγκόσμιο Ιστό, άνοιξε ο δρόμος για το παγκόσμιο φαινόμενο εξάπλωσης του

Ιντερνέτ, όπως το ξέρουμε πια σήμερα.

Το Internet είναι πλέον συνυφασμένο με το σύγχρονο τρόπο ζωής και αφορά

σχεδόν όλες τις ηλικιακές ομάδες. Είναι απαραίτητο εργαλείο της καθημερινότητας

του Έλληνα πολίτη. Αποτελεί μέσο επικοινωνίας, μέσο ψυχαγωγίας και μέσο

ενημέρωσης. Με τον ερχομό του internet ο τρόπος προβολής, διαφήμισης και

αγορών άλλαξε αισθητά σε ολόκληρο τον κόσμο και αλλάζει μέρα με την ημέρα και

στην χώρα μας.  Η παγκόσμια αγορά λιανικής έχει ανοικτές τις πύλες της

στο internet και αποτελεί τεράστιο πεδίο δράσης για ιδιοκτήτες επιχειρήσεων και

υπηρεσιών. Επιπλέον η πρόσβαση των ελληνικών επιχειρήσεων στο ιντερνέτ έχει

φτάσει το 91%, με 6 στις 10 επιχειρήσεις να έχουν την δική τους ιστοσελίδα. Αυτός

ο επεκτατικός ρυθμός οδήγησε στην ανάγκη οι χρήστες να αποκτήσουν την

εξοικείωση αλλά και τη απαιτούμενη γνώση και δυνατότητα για την δημιουργία

διαφόρων διαδικτυακών εφαρμογών και ιστοσελίδων. Έτσι σε μία περίοδο κρίσης,

το ηλεκτρονικό επιχειρείν γίνεται νούμερο ένα προτεραιότητα πολλών

επιχειρήσεών που σε συνδυασμό με τα συστήματα διαχείρισης περιεχομένου

δημιούργησαν καινοτόμες λύσεις για την προβολή και την προώθηση της

επιχείρησής τους.

Σελίδα 2 από 87

Page 3: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Περίληψη

Η παρούσα πτυχιακή εργασία ασχολείται με την ανάπτυξη , την υλοποίηση και την

παρουσίαση ενός δυναμικού site με την χρήση ενός προγράμματος CMS. Πιο

συγκεκριμένα θα ασχοληθούμε με δημιουργία της ιστοσελίδας μιας επιχείρησης με

την βοήθεια της CMS πλατφόρμας Joomla 2.5. Αρχικά γίνεται μία προσέγγιση

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

ποια είναι τα πλεονεκτήματα που παρέχουν. Έπειτα γίνεται παρουσίαση της

πλατφόρμας Joomla και των σχετικών με αυτό εργαλείων, χαρακτηριστικών και

επεκτάσεων. Παρατίθενται οι διαδικασίες εγκατάστασης της (Joomla 2.5) με της

σχετικές απεικονίσεις. Στη συνέχεια αναφέρονται οι τεχνολογίες που θα

χρησιμοποιήσουμε για την υλοποίηση του πρακτικού μέρους και οι οποίες

αποτελούν αναπόσπαστο κομμάτι οποιασδήποτε CMS εφαρμογής όπως (HTML,

javascript, XML, CSS, MySQL, PHP). Τέλος όσον αφορά στην υλοποίηση της,

παραθέτονται αναλυτικά τα στάδια ανάπτυξης της ιστοσελίδας.

Σελίδα 3 από 87

Page 4: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Abstract

This thesis discusses about the procedure development of a “web application

development” or more specific “a web site development” with the assistance of

Joomla platform version 2.5. Initially we made an approach about the CMS

(Content Management Systems), what exactly is it, what its constitute and what

are the advantages that CMS provides. Following we present the Joomla platform

and its related tools, features and extensions. Therefore, we explain the

installation procedure of Joomla 2.5. All the procedure it is illustrated step by step

with relative pictures. In addition we mentioned and analyzed  technologies that

required to implement the practical part and which are an integral part of any CMS

application, such as HTML, javascript, XML, CSS, MySQL and PHP. Finally we

implement the website and we demonstrate it step-by-step.

Σελίδα 4 από 87

Page 5: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

2.2 Πίνακας περιεχομένων

1. Συστήματα Διαχείρισης περιεχομένου..................................................................11

1.1 Τι είναι μια Διαδικτυακή Εφαρμογή.................................................................................11

1.2 Εισαγωγή στα Σύστημα Διαχείρισης Περιεχομένου (Content Management System - CMS) 12

1.2.1 Επιχειρησιακά συστήματα διαχείρισης περιεχομένου (Enterprise CMS)..........12

1.2.2 Σύστημα διαχείρισης περιεχομένου ιστού (Web CMS)........................................12

1.2.3 Σύστημα διαχείρισης περιεχομένου εξαρτημάτων λογισμικού (Component CMS) 13

1.3 Είδη Συστημάτων Διαχείρισης Περιεχομένου (CMS)...................................................13

1.3.1 Commercial- Σύστημα Διαχείρισης Περιεχομένου (CMS) για εμπορική χρήση (κλειστού κώδικα).....................................................................................................................14

1.3.2 Σύστημα Διαχείρισης Περιεχομένου ανοιχτού κώδικα (Open Source CMS).....14

1.3.3 Managed Open Source CMS..................................................................................15

1.4 Πλεονεκτήματα των Συστημάτων Διαχείρισης Περιεχομένου ( CMS)........................15

1.5 Ανάλυση και σύγκριση των 3 CMS που υπερισχύουν στην Αγορά...........................17

2. Παρουσίαση της πλατφόρμας Joomla για την ανάπτυξη διαδικτυακών εφαρμογών..................................................................................................................................19

2.1 Εισαγωγή στην Joomla!...................................................................................................19

2.2 Χαρακτηριστικά και δυνατότητες του Joomla!...............................................................20

2.3 Αρχιτεκτονική του Jooma!................................................................................................23

2.4 ΤΕΧΝΙΚΕΣ ΑΠΑΙΤΗΣΕΙΣ ΤΟΥ JOOMLA.......................................................................25

2.5 Επιλογές Διαμόρφωσης...................................................................................................25

2.6 WAMP-XAMPP εγκατάσταση.........................................................................................27

2.7 Εγκατάσταση της Joomla! 2.5 με το εργαλείο Wamp.................................................31

2.8 Η Δομή Και το Περιβάλλον του JOOMLA.....................................................................35

3. Τεχνολογίες και εργαλεία ανάπτυξης της Πτυχιακής....................................42

3.1 Η HTML Γλώσσα Προγραμματισμού.............................................................................42

3.2 Η ΤΕΧΝΟΛΟΓΙΑ XML......................................................................................................44

3.3 Η Γλώσσα Προγραμματισμού Javascript......................................................................45

3.4 Η Τεχνολογία CSS............................................................................................................46

4. Δημιουργία Δυναμικών ιστοσελίδων με την χρήση PHP/MYSQL..................47

4.1 Apache (Web Server).......................................................................................................47

4.2 PHP....................................................................................................................................48

4.3 MySQL Database.............................................................................................................49

Σελίδα 5 από 87

Page 6: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

4.4 PhpMyAdmin.....................................................................................................................50

5. Δημιουργία Της Ιστοσελίδας ...................................................................................51

5.1. Εγκατάσταση τη ελληνικής Γλώσσας...................................................................................51

5.2. Επιλογή και εγκατάστασή του κατάλληλου template.........................................................52

5.3. Προσαρμογή του Template.................................................................................................54

5.4. Διαμορφώνοντας τα περιεχόμενα της ιστοσελίδας............................................................55

5.5. Διαμόρφωση του “Top Horizontal Menu”...........................................................................57

5.6. Δημιουργία άρθρων............................................................................................................59

6. Extensions που Εγκαταστάθηκαν...........................................................................60

6.1. JCE Content Editor - Επεξεργαστής Κειμένου.....................................................................61

6.2. Simple Image Gallery- Γκαλερί εικόνων...............................................................................64

6.3. SlideShow CK- Διαφάνειες Εικόνων.....................................................................................66

6.4. CSS gallery...........................................................................................................................71

6.5. Embed Google Map.............................................................................................................73

7. Θέματα Ασφάλειας.......................................................................................................75

7.1. Χρησιμοποιήστε Ασφαλή Κωδικό και όνομα χρήστη..........................................................75

7.2. Τακτικό Backup του Joomla site μας!..................................................................................77

7.3. Συχνά Update της Εφαρμογής Joomla αλλά και των Extension..........................................78

7.4. Αφαίρεση μη χρησιμοποιούμενων επεκτάσεων.................................................................78

7.5. Αλλαγή προθέματος της βάσης δεδομένων........................................................................79

7.6. Προστασία Αρχείων.............................................................................................................80

7.7. Χρήση .htaccess αρχείου.....................................................................................................80

7.8. Απόκρυψη της διαχειριστικής σελίδας...............................................................................81

7.9. Χρήση σωστού CHMOD (δικαιώματα) για κάθε φάκελο και αρχείο...................................81

7.10. Επιλογή αξιόπιστου hosting provider..............................................................................82

8. Εγκατάσταση σε Web Server...................................................................................83

9. Συμπεράσματα...............................................................................................................84

Σελίδα 6 από 87

Page 7: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

ΛΙΣΤΑΕΙΚΟΝΩΝΕικόνα 1 Τα δημοφιλέστερα CMS της Αγοράς................................................................................17Εικόνα 2 Αποτελέσματα δημοφιλέστερης CMS Αναζήτησης στο Google.......................................18Εικόνα 3 Αρχιτεκτονική του Joomla!...............................................................................................24Εικόνα 4 Τεχνικές Απαιτήσεις του Joomla! 2.5...............................................................................25Εικόνα 5 Wamp Server Download...................................................................................................27Εικόνα 6 Wamp Server Setup (1).....................................................................................................28Εικόνα 7 Wamp Server Setup (2).....................................................................................................28Εικόνα 8 Wamp Server Setup (3).....................................................................................................29Εικόνα 9 Wamp Server Setup (4).....................................................................................................29Εικόνα 10 Wamp Server Setup (5)..................................................................................................30Εικόνα 11 Wamp Server Setup (6)...................................................................................................30Εικόνα 12 Download Joomla 2.5.....................................................................................................31Εικόνα 13 Joomla Installation -choose language.............................................................................32Εικόνα 14 Joomla installation - Database Configuration.................................................................33Εικόνα 15 Joomla instalation - Βασικές Ρυθμίσεις..........................................................................33Εικόνα 16 Joomla installation - Main Configuration........................................................................34Εικόνα 17 Joomla installation -remove installation folder..............................................................34Εικόνα 18 Front-End Joomla (by default)........................................................................................36Εικόνα 19 Login - Back End Περιβάλλον..........................................................................................36Εικόνα 20 Back End Περιβάλλον Διαχείρισης.................................................................................37Εικόνα 21 Menu Manager...............................................................................................................38Εικόνα 22 Module Manager............................................................................................................39Εικόνα 23 Templates Manager........................................................................................................41Εικόνα 24 PHP η Χρήση του............................................................................................................48Εικόνα 25 WAMP Apache, MySQL, PhP...........................................................................................49Εικόνα 26 Extension Manager - Upload Template..........................................................................52Εικόνα 27 Template Manager - Edit Style.......................................................................................54Εικόνα 28 Προεπισκόπηση του Template μας................................................................................55Εικόνα 29 Διαμόρφωση Περιεχομένου Αρχικής Σελίδας................................................................56Εικόνα 30 Menu Manager –Type Menu..........................................................................................57Εικόνα 31 Menu Manager - Edit Menu...........................................................................................58Εικόνα 32 Article Manager-Δημιουργία νέου άρθρου....................................................................59Εικόνα 33 Extensions Site for Joomla..............................................................................................60Εικόνα 34 Tiny MCE basic (Default) Editor......................................................................................61Εικόνα 35 JCE Text Editor................................................................................................................62Εικόνα 36 Global Configuration-Set Default Editor.........................................................................63Εικόνα 37 Media Manager - Δημιουργία φακέλων και Εισαγωγή εικόνων....................................64Εικόνα 38 Article Manager- Insert Image Gallery............................................................................65Εικόνα 39 Module Manager-Edit Slideshow CK...............................................................................66Εικόνα 40 SlideShow Ck- Edit Slide Manager..................................................................................67Εικόνα 41 Module Manager-Slideshow Editor -Styles Options.......................................................68Εικόνα 42 Module Manager-Slideshow Editor- Styles Options.......................................................68Εικόνα 43 Module Manager- Edit Slideshow ck-Details..................................................................69

Σελίδα 7 από 87

Page 8: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Εικόνα 44 Article Manager – Insert/set position of slideshow........................................................70Εικόνα 45 Front-End Σιροπιαστά.....................................................................................................70Εικόνα 46 Module Manager -CSS Gallery........................................................................................72Εικόνα 47 Article Manager - Show CSS gallery tags.........................................................................72Εικόνα 48 Front-End - CSS gallery....................................................................................................73Εικόνα 49 Article Manager- Insert Google Maps.............................................................................74Εικόνα 50 Google Maps...................................................................................................................74Εικόνα 51 User Manager.................................................................................................................75Εικόνα 52 Control Panel - User Manager........................................................................................76Εικόνα 53 User Manager-Edit Profile..............................................................................................76Εικόνα 54 Global Configuration-Server-Database Settings..............................................................79Εικόνα 55 FTP Client (FileZilla)- Add new location...........................................................................83

Σελίδα 8 από 87

Page 9: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Εισαγωγή (Περιλαμβάνει τους Στόχους και σκοπούς της ΠΕ καθώς και περιγραφή των κεφαλαίων που ακολουθούν)

Στόχος της παρούσας πτυχιακής εργασίας είναι η δημιουργία και η ανάπτυξη μίας

δυναμικής ιστοσελίδας μίας εποχιακής επιχείρησης εστίασης και παραγωγής

προϊόντων ζαχαροπλαστικής λιανικής πώλησης. Στην ιστοσελίδα θα

εμπεριέχονται εικόνες όπου θα παραθέτονται όλα τα προϊόντα με την σχετική

περιγραφή, και plug-in του Google maps με τις σχετικές τοποθεσίες της

επιχείρησης. Οι επισκέπτες θα έχουν επιπλέον την δυνατότητα να ενημερώνονται

για τις εκάστοτε προσφορές και τα προϊόντα της επιχείρησης, τα «φρέσκα νέα» της

ημέρας και ο κάθε χρήστης θα έχει την δυνατότητα να αξιολογεί τα προϊόντα και να

αφήνει το δικό του σχόλιο τόσο για τα προϊόντα όσο και για την επιχείρηση. Ακόμη

δίνεται η δυνατότητα στους επισκέπτες να πραγματοποιήσουν οποιαδήποτε

παραγγελία θέλουν για οποιαδήποτε κοινωνική εκδήλωση συμπληρώνοντας τα

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

της παραγγελίας.

Η υλοποίηση της ιστοσελίδας αυτής έγινε με μία ιδιαίτερη κατηγορία εργαλείων

διαχείρισης γνώσης, ενός συστήματος διαχείρισης περιεχομένου ανοικτού κώδικα ,

το Joomla. Θα περιγραφεί παρακάτω τι ακριβώς είναι αυτό το εργαλείο, αυτή η

πλατφόρμα, θα παρουσιάσουμε ένα οδηγό εγκατάστασης και τις βασικές

λειτουργίες. Καθώς επίσης και τις επιμέρους τεχνολογίες που χρησιμοποιήθηκαν

σε αυτήν την υλοποίηση του πρακτικού μέρους της πτυχιακής αυτής. Τέλος, θα

παρουσιάσουμε βήμα προς βήμα τη διαδικασία δημιουργίας και της κατάλληλης

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

Η πτυχιακή είναι χωρισμένη σε 2 μέρη. Το πρώτο μέρος περιέχει το θεωρητικό

κομμάτι και το δεύτερο μέρος το πρακτικό κομμάτι.

Στο Μέρος Ι, το θεωρητικό μέρος αναφέρει και αναλύει την τεχνολογία των ΣΔΠ

CMS και τα είδη στα οποία χωρίζεται, αναλύει το εργαλείο Joomla καθώς και τις

τεχνολογίες που χρειάζονται και τις τεχνικές απαιτήσεις.

Στο 1ο κεφάλαιο αρχικά αναφέρεται τι είναι μια διαδικτυακή εφαρμογή και ποιες

εφαρμογές χαρακτηρίζονται έτσι. Στη Συνέχεια αναλύονται τα Συστήματα

Σελίδα 9 από 87

Page 10: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Διαχείρισης Περιεχομένων (ΣΔΠ), τα είδη και τα χαρακτηριστικά τους. Και στο

τέλος γίνεται μια σύγκριση των πιο διαδεδομένων CMS της αγορας.

Στο 2ο κεφάλαιο γίνεται αναφορά στο Joomla εργαλείο. Τι είδους σύστημα

διαχείρισης περιεχομένου αντιπροσωπεύει, τα χαρακτηριστικά της, την δομή της

και τις τεχνικές απαιτήσεις που έχει.

Στο 3ο κεφάλαιο παραθέτονται οι τεχνολογίες και τα εργαλεία ανάπτυξης που είναι

απαραίτητα για την ανάπτυξη της ιστοσελίδας μας. Όπως η HTML, η javascript, η

XML και η CSS.

Στο 4ο αναφέρονται τα εργαλεία διαμόρφωσης και ανάπτυξης της εφαρμογής μας

όπως ο Apache server, η PHP και η MySQL

Στο 2ο μέρος αναλύουμε το πρακτικό κομμάτι, την εγκατάσταση των “templates”

και άλλων extension, και την διαμόρφωση του περιεχομένου της σελίδας μας.

Στο 5ο κεφάλαιο περιγράφουμε την εγκατάσταση της ελληνικής γλώσσας στο site

μας και την εγκατάσταση ενός template.

Στο 6ο κεφάλαιο αναφέρουμε τα extensions που εγκαταστήσαμε, που χρησιμεύουν

και την διαδικασία της εγκατάστασης τους.

Στο 7ο κεφάλαιο μιλάμε για τα θέματα ασφαλείας που απασχολούν εφαρμογές

όπως το Joomla.

Τέλος στο 8ο αναφέρουμε την διαδικασία εγκατάστασης της ιστοσελίδας μας σε

έναν διαδικτυακό server.

Σελίδα 10 από 87

Page 11: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

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

Τα Συστήματα Διαχείρισης περιεχομένου (CMS) αποτελούν διαδικτυακές

εφαρμογές που επιτρέπουν στους διαχειριστές την δυνατότητα να ενημερώνουν

και να τροποποιούν online το διαδικτυακό περιεχόμενο μίας ιστοσελίδας. Τα

συστήματα αυτά ανάλογα με τον τρόπο χρήση τους χωρίζονται σε κάποια είδη και

κάποιες κατηγορίες οι οποίες παρατίθενται παρακάτω. Σε αυτό το κεφάλαιο θα

αναλυθούν

1.1 Τι είναι μια Διαδικτυακή Εφαρμογή

Με τον όρο Διαδικτυακή εφαρμογή ορίζεται οποιοδήποτε λογισμικό είναι

προσβάσιμο μέσω του παγκόσμιου ιστού (world wide web). Η εφαρμογή αυτή είναι

αποθηκευμένη σε ένα δικτυακό server και εκτελείται από εγκεκριμένους χρήστες

ενός δικτύου όπως ένα intranet ή internet.

Το βασικότερο πλεονέκτημα αυτών των δικτυακών εφαρμογών, σε αντίθεση με της

τοπικά αποθηκευμένες εφαρμογές είναι ότι οι απομακρυσμένοι χρήστες μπορούν

να έχουν πρόσβαση σε αυτές χωρίς να απαιτείται να εγκατασταθεί άλλο

πρόγραμμα στο τερματικό τους, πλην του web browser ενός οποιοδήποτε

φυλλομετρητή .

Μια από τις πιο γνωστές δικτυακές εφαρμογές είναι τα κλασσικά e-shop, με το

καλάθι αγορών, το λογαριασμό πελάτη και τις διαδικτυακές πληρωμές. Βέβαια, δεν

υπάρχουν όρια στο τι μπορούν να κάνουν οι διαδικτυακές εφαρμογές. Άλλα

παραδείγματα είναι τα Συστήματα διαχείρισης περιεχομένου, τα Πληροφοριακά

συστήματα διοίκησης, τα Συστήματα διαχείρισης πελατών Portal, συστήματα

κρατήσεων, συστήματα πωλήσεων εισιτηρίων και συστήματα αγγελιών.

1.2 Εισαγωγή στα Σύστημα Διαχείρισης Περιεχομένου (Content Management System -

Σελίδα 11 από 87

Page 12: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

CMS)

Ένα σύστημα διαχείρισης περιεχομένου αποτελεί μια διαδικτυακής φύσεως

εφαρμογή η οποία παρέχει την δυνατότητα στον διαχειριστή της εφαρμογής να

τροποποιεί και να διαμορφώνει οnline το περιεχόμενο, τα κείμενα, τα βίντεο και τις

εικόνες από τον διαδικτυακό του τόπο, με στόχο την δημιουργία και την

δημοσίευση ιστοσελίδων.

Τα Συστήματα Διαχείρισης περιεχομένου μπορούν να χρησιμοποιηθούν για την

δημιουργία προσωπικών, εταιρικών και εκπαιδευτικών ιστοσελίδων αλλά και για

την δημιουργία ηλεκτρονικών καταστημάτων τα λεγόμενα e-shop. Υπάρχουν 3

βασικές κατηγορίες για τα CMS και αυτές είναι:

1.2.1 Επιχειρησιακά συστήματα διαχείρισης περιεχομένου (Enterprise CMS)

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

τεχνολογία του αφορά την συλλογή, την διαχείριση, την διανομή, την διατήρηση και

την παράδοση περιεχομένων και των εγγράφων τους που σχετίζονται με έναν

οργανισμό και τις υπηρεσίες του. Άρα αφορούν τη χρήση τους περισσότερο από

οργανισμούς.

1.2.2 Σύστημα διαχείρισης περιεχομένου ιστού (Web CMS)

Είναι ένα σύστημα διαχείρισης περιεχομένου λογισμικού που συνήθως

εφαρμόζεται σαν εφαρμογή δικτύου το οποίο για να κατασκευαστεί και να

διαχειριστεί χρειάζεται HTML περιεχόμενο. Αυτό χρησιμοποιείται για να

διαχειρίζεται δυναμικές συλλογές από web υλικό. Το λογισμικό παρέχει εργαλεία

σχεδίασης που δίνει την άδεια στους χρήστες, ακόμη και με ελάχιστη γνώση

προγραμματισμού, να δημιουργήσουν και να διαχειριστούν ένα σύστημα σχετικά

εύκολο στη χρήση για την δημιουργία δυναμικών δικτυακών τόπων. Σχεδόν όλα τα

είδη ιστοσελίδων μπορούν εν δυνάμει να καλυφθούν από τη χρήση των web CMS,

περιλαμβάνοντας κείμενα, εικόνες, ήχο, βίντεο, ψηφιακά έγγραφα, animation και

οτιδήποτε μπορεί να εμφανίζεται στο διαδίκτυο.

Οι δικτυακοί τόποι μπορεί να είναι:

Σελίδα 12 από 87

Page 13: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Εταιρικοί

Προσωπικοί

Εκπαιδευτικοί

Ενημερωτικοί

Ηλεκτρονικά καταστήματα

Ψυχαγωγικοί

Κοινωνικής δικτύωσης

1.2.3 Σύστημα διαχείρισης περιεχομένου εξαρτημάτων λογισμικού (Component

CMS)

Το CCMS (component CMS) δεν διαχειρίζονται τα περιεχόμενα σε επίπεδο

εγγράφου αλλά σε ένα σπυρωτό επίπεδο όπου κάθε περιεχόμενο παρουσιάζει ένα

μεμονωμένο θέμα ή έννοια. Τα συστατικά συγκεντρώνονται σε πολλαπλά

περιεχόμενα όπου το κάθε συστατικό έχει τον δικό του κύκλο ζωής και μπορούν να

αναπαρασταθούν τόσο ψηφιακά όσο και σαν παραδοσιακά έγγραφα.

Χρησιμοποιώντας ένα στοιχείο του συστήματος διαχείρισης περιεχομένου, το

περιεχόμενο αποθηκεύεται και αποτελεί αντικείμενο διαχείρισης σε επίπεδο

Υποεγγράφου (ή εξαρτήματος), για μεγαλύτερη επαναχρησιμοποίηση του

περιεχομένου.

1.3 Είδη Συστημάτων Διαχείρισης Περιεχομένου (CMS)

Υπάρχουν 3 είδη συστημάτων διαχείρισης περιεχομένου και διακρίνονται ανάλογα

με τον σκοπό και την λειτουργία τους.

1.3.1 Commercial- Σύστημα Διαχείρισης Περιεχομένου (CMS) για εμπορική χρήση

(κλειστού κώδικα)

Σελίδα 13 από 87

Page 14: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Τα συστήματα διαχείρισης περιεχομένου διατίθενται συνήθως δωρεάν εκτός και αν

ο χρήστης θέλει να προμηθευτεί άδεια χρήσης για εμπορικό σκοπό όπου θα

πρέπει να πληρώσει ένα ποσό. Το ποσό αυτό φυσικά είναι αρκετά πιο φτηνό από

τα εμπορικά συστήματα διαχείρισης περιεχομένου (ΣΔΠ) όπου κοστίζουν από

μερικές χιλιάδες δολάρια έως και εκατομμύρια ειδικά όταν παρέχουν

επαγγελματικές υπηρεσίες .

Η επιλογή ενός τέτοιου τύπου Συστήματος Διαχείρισης Περιεχομένου παρέχει το

πλεονέκτημα της υποστήριξης στον χρήστη, έναντι κάποιου κόστους, από μια

ομάδα ατόμων που διαχειρίζονται πολύ καλά τον CMS κώδικα που

χρησιμοποιείται. Επιπλέον η ίδια επιχείρηση που προσφέρει τον CMS κώδικα

μπορεί να παρέχει και την διαμόρφωση του δικτυακού τόπου του ενδιαφερόμενου

χρήστη.

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

εμπορικού ΣΔΠ, πάντα έναντι κάποιου κόστους για την αγορά της άδειας χρήσης,

ο εκάστοτε ενδιαφερόμενος χρήστης δεσμεύεται με την συγκεκριμένη εταιρεία. Θα

υπάρχει πάντα η εξάρτηση από αυτήν την εταιρεία αφού η ίδια είναι που

διαχειρίζεται τον CMS κώδικα καθώς και ολόκληρο το σύστημα. Για οποιαδήποτε

αλλαγή, ενημέρωση ή αναβάθμιση ο χρήστης θα πρέπει απευθύνεται στην

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

1.3.2 Σύστημα Διαχείρισης Περιεχομένου ανοιχτού κώδικα (Open Source

CMS)

O όρος Ανοιχτός κώδικας υποδηλώνει πως κάποια προγράμματα ή λειτουργικά

συστήματα, έχουν προγραμματιστεί με τρόπο, ώστε να μπορεί να επέμβει κάποιος

στον τρόπο λειτουργίας των. Στις μέρες μας τέτοιες εφαρμογές και συστήματα είναι

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

λογισμικού και γενικά να προωθήσουν την “κοινή γνώση”. Αυτό επιτυγχάνεται με

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

τόσο για την προβολή όσο και για την τροποποίηση του. 

Ένα από τα πιο διαδεδομένα Συστήματα Διαχείρισης ανοικτού Περιεχομένου είναι

το Joomla. Το Joomla αποτελεί εφαρμογή ανοιχτού κώδικα και είναι μια απολύτως

δωρεάν πλατφόρμα. Οι χρήστες είναι ελεύθεροι να το χρησιμοποιήσουν, να το

τροποποιήσουν και να διερευνήσουν τις δυνατότητές του χωρίς να πρέπει να Σελίδα 14 από 87

Page 15: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

πληρώσουν κάποια άδεια χρήσης. Δεν απαιτείται από τον χρήστη να καταβάλει

οποιοδήποτε ποσό για να αποκτήσει ένα αντίγραφο από ένα από τα πιο κομψά και

προχωρημένα ΣΔΠ στον κόσμο. Η διαχείριση του CMS κώδικα μπορεί να γίνει είτε

από τον ίδιο τον χρήστη είτε από κάποιον προγραμματιστή ανοικτού κώδικα για

την ανάπτυξη οποιουδήποτε διαδικτυακού τόπου. Επιπλέον η χρήση ανοικτού

κώδικα CMS παρέχει ευελιξία στον χρήστη αφού θα μπορεί να επεμβαίνει στον

κώδικα για οποιαδήποτε μετατροπή τον ενδιαφέρει. Βέβαια θα πρέπει να

αναφερθεί πως ο χρήστης μπορεί αφενός να αποκτά μια δωρεάν open CMS

εφαρμογή, από την άλλη η σχεδίαση , η διαμόρφωση, η συντήρηση και η

υποστήριξη ενός CMS για ένα δικτυακό τόπο της περισσότερες φορές δεν είναι

δωρεάν, αφού θα χρειαστεί η πρόσληψη ενός προγραμματιστή για την διαχείριση

του.

1.3.3 Managed Open Source CMS

Πρόσφατα ένας αριθμός από εμπορικούς οργανισμούς ανέπτυξαν Συστήματα

Διαχείρισης Περιεχομένου που στηρίζονται στο μοντέλο ανοιχτού κώδικα. Σε αυτή

την περίπτωση συστημάτων υπάρχει ένας οργανισμός που παρέχει

επαγγελματικές υπηρεσίες ή υποστήριξη για το προϊόν και ο κώδικας διανέμεται

ελεύθερα.

1.4 Πλεονεκτήματα των Συστημάτων Διαχείρισης Περιεχομένου ( CMS)

Μέχρι πρότινος αν μία εταιρεία επιθυμούσε την ανάπτυξη και την επέκταση της στο

διαδίκτυο, υποχρεούνταν να συνάψει κάποιο συμβόλαιο με κάποια εταιρεία

παροχής υπηρεσιών συντήρησης, η οποία θα αναλάμβανε (εκτός από την

δημιουργία της εταιρικής ιστοσελίδας) να την διατηρεί ενημερωμένη. Οι ίδιες

εταιρείες πλέον έχουν αναπτύξει κάποια συστήματα τα οποία μειώνουν κατά πολύ

το κόστος και το χρόνο λειτουργίας των δικτυακών τόπων.

Πλέον οι αλλαγή και η ενημέρωση της εκάστοτε ιστοσελίδας μπορεί να γίνει από

τον χρήστη, σε οποιονδήποτε υπολογιστή είναι συνδεδεμένος στο διαδίκτυο. Τα

συστήματα αυτά (CMS) επιτρέπουν τον χρήστη να κάνει γρήγορα και εύκολα τις

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

απαιτούνται εξειδικευμένες γνώσεις σχετικά με την δημιουργία ιστοσελίδων ή

Σελίδα 15 από 87

Page 16: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

γραφικών. Οι αλλαγές αυτές μπορούν να εφαρμοστούν από οποιονδήποτε

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

την εγκατάσταση κάποιων ειδικών προγραμμάτων επεξεργασίας ιστοσελίδων ή

γραφικών κλπ.

Έτσι επιγραμματικά μπορούμε να πούμε ότι μερικά από τα πλεονεκτήματα και τα

χαρακτηριστικά ενός ολοκληρωμένου CMS είναι τα ακόλουθα

Η παροχή γρήγορης ενημέρωσης, διαχείριση και αρχειοθέτησης του

περιεχομένου του δικτυακού τόπου, από οπουδήποτε

Η ταυτόχρονη ενημέρωση και υποστήριξη από πολλούς χρήστες με

συγκεκριμένα δικαιώματα και διαφορετικούς υπολογιστές 

Δεν απαιτεί ιδιαίτερες και ειδικευμένες τεχνικές γνώσεις από τους

διαχειριστές του καθώς  παρέχουν εύκολη χρήση και άμεση γνώση του

τελικού αποτελέσματος, με την βοήθεια των Web Browser (κειμενογράφων) 

Η παροχή ασφάλειας κατά τον σχεδιασμό της ιστοσελίδας, καθώς μας

αποτρέπει από λανθασμένες ενέργειες, που θα μπορούσαν να

δημιουργήσουν προβλήματα στην εμφάνισή του.

Όλο το περιεχόμενο καταχωρείται στις βάσεις δεδομένων, τις οποίες

μπορούμε πιο εύκολα και γρήγορα να τις προστατεύσουμε τηρώντας

αντίγραφα ασφαλείας 

Ο Διαχωρισμός που γίνεται μεταξύ του περιεχομένου από το σχεδιασμό

(Back-End) και την πλοήγηση (navigation / Front-End) του δικτυακού τόπου 

και η αλλαγή τους χωρίς να είναι απαραίτητη η ενημέρωση όλων των

σελίδων από τον ίδιο το χρήστη. 

Η απαίτηση πολύ λιγότερου χώρου, χρόνου και φόρτου εξυπηρέτησης

καθότι η ανάπτυξη των σελίδων γίνεται με δυναμικό τρόπο και δεν

υπάρχουν πλέον πολλές επαναλαμβανόμενες στατικές σελίδες

Η δυνατότητα παροχής εφαρμογών όπως δημοσκοπήσεων, στατιστικών,

και προβολής διαφήμισης

1.5 Ανάλυση και σύγκριση των 3 CMS που υπερισχύουν στην Αγορά

Σελίδα 16 από 87

Page 17: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Εικόνα 1 Τα δημοφιλέστερα CMS της Αγοράς

Αυτή την στιγμή στην αγορά κυκλοφορούν πολλές εφαρμογές open CMS. Τα πιο

δημοφιλής μέχρι στιγμής είναι το Joomla, το Drupal και το WordPress. Τα

τελευταία χρόνια το WordPress έχει αρχίσει πραγματικά να θεωρείται και αυτό ως

ένα αληθινό CMS.

Το WordPress έχει κατακτήσει και αυτό την κορυφή στην λίστα με τις προτιμήσεις

του κοινού από το 2011 και μετά, καθώς θεωρείται ο βασιλιάς του λογισμικού για

ιστολόγια (blogs), κάτι στο οποίο τα άλλα δύο CMS υστερούν. Τα Joomla και

Drupal είναι πρώτα στις προτιμήσεις του κοινού για την δημιουργία εταιρικών και

επαγγελματικών ιστοσελίδων αλλά και εφαρμογών Virtue Mart. Έχουν και τα δύο

αναπτυχθεί ευρέως από χιλιάδες μέλη στην κοινότητα τους που τα βοηθά να

αναπτύξουν και να επεκτείνουν τις δυνατότητες χρήσης τους.

Και τα τρία αυτά προϊόντα συστήματος διαχείρισης περιεχομένου είναι ανοικτού

κώδικα και είναι χτισμένα σε PHP και MySQL . Και τα τρία διαφέρουν σημαντικά

όσον αφορά τα χαρακτηριστικά , την ικανότητα , την ευελιξία και την ευκολία

χρήσης τους. Το Drupal είναι πολύ φιλικό στον προγραμματιστή αλλά απαιτείται η

χρήση του κώδικα του εκάστοτε χρήστη. Δεν είναι πολύ φιλικό στο σχεδιαστή και

τον χρήστη και είναι δύσκολο για κάποιον με λίγες γνώσεις κώδικα να μπορεί

αναπτύξει έναν πραγματικά ωραίο δικτυακό τόπο που να ξεχωρίζει. To Joomla

από την άλλη έχει σχεδιαστεί ώστε να είναι εύκολο στην εγκατάσταση και

διαμόρφωση ακόμα και αν ένας χρήστης δεν είναι προχωρημένος.

 Αφού το Google αποτελεί την πλέον δημοφιλέστερη μηχανή αναζήτησης αξίζει να

αναφερθεί ότι σε έρευνα που έχει γίνει για να σημειωθεί ο συνολικός αριθμός

αναζήτησης για κάθε μια από τις λέξεις «WordPress», «Joomla» και «Drupal»

Σελίδα 17 από 87

Page 18: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

έχουμε τα εξής αποτελέσματα όπως παραθέτονται στο παρακάτω σχήμα.

37,200,0006,120,000

13,600,000

Search Requests in Google

WordPressJoomlaDrupal

Εικόνα 2 Αποτελέσματα δημοφιλέστερης CMS Αναζήτησης στο Google

Οι περισσότεροι οργανισμοί αναγνωρίζουν την αναγκαιότητα των Συστήματα

Διαχείρισης Περιεχομένου καθώς προσφέρουν μια ποικιλία χαρακτηριστικών που

ενισχύουν την αποτελεσματικότητα και την ποιότητα του ιστοχώρου. Έτσι οι στόχοι

που θα πρέπει να επιτευχθούν με την βοήθεια αυτών των συστημάτων θα πρέπει

να είναι ξεκάθαροι, για την πλήρη εκμετάλλευση των πλεονεκτημάτων που

προσφέρει η εκάστοτε εφαρμογή. Εν κατακλείδι δεν υπάρχει εφαρμογή CMS

πασπαρτού, η επιλογή της καλύτερης πλατφόρμας εξαρτάται από της απαιτήσεις

της κάθε ιστοσελίδας, το budget αλλά και τις τεχνικές γνώσεις του καθενός.

2. Παρουσίαση της πλατφόρμας Joomla για την ανάπτυξη διαδικτυακών εφαρμογών

Το Joomla θεωρείται ίσως το καταλληλότερο (CMS) Σύστημα Διαχείρισης

Περιεχομένου τόσο για την ανάπτυξη ιστοσελίδων αλλά και εφαρμογών τύπου e-

Σελίδα 18 από 87

Page 19: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

shop (VirtueMart). Παρακάτω αναλύεται του τι ακριβώς είναι αυτή η πλατφόρμα, τι

δυνατότητες παρέχει στον χρήστη και τι απαιτήσεις έχει.

2.1 Εισαγωγή στην Joomla!

Το όνομα Joomla προέρχεται από την λέξη «Jumla», που αποτελεί μία φωνητική

γραφή της γλώσσας Σουαχίλι και σημαίνει “όλοι μαζί” ή “ως σύνολο”. Ύστερα από

την διάσπαση της εταιρίας «Micro International Pvt Ltd» το Σεπτέμβρη του 2005

αποφασίστηκε το σύστημα Mambo να μετονομάσει σε Joomla. Το Joomla πλέον

αποτελεί ένα βραβευμένο και ολοκληρωμένο σύστημα διαχείρισης περιεχομένου,

που παρακολουθεί κάθε είδος περιεχομένων ενός δικτυακού τόπου.

Το σύστημα αυτό είναι ανοικτού κώδικα, είναι φιλικό στον τελικό χρήστη και στον

προγραμματιστή και φροντίζει επίσης την σχεδίαση του δικτυακού τόπου και του

τρόπου που θα πρέπει να δουλεύει ένα σύστημα διαχείρισης περιεχομένου.

Εφόσον λοιπόν το Joomla διαχειρίζεται όλα τα περιεχόμενα δεν απαιτεί από τον

χρήστη καμία γνώση ή δεξιότητα για την διαχείριση του.

Ο χρήστης εγκαθιστά την εφαρμογή αυτή στον κεντρικό του υπολογιστή και του

παρέχεται η πρόσβαση στο περιβάλλον διαχείρισης μέσω ενός οποιουδήποτε

browser . Το περιβάλλον διαχείρισης μπορεί να είναι ακόμη και η Ελληνική

γλώσσα, πέρα από την Αγγλική. Μετά την εγκατάσταση, ο χρήστης μπορεί να

διαχειριστεί τον δικτυακό του τόπο μέσω της κονσόλας διαχείρισης

δημιουργώντας ενότητες, κατηγορίες, άρθρα με περιεχόμενο, δημοσκοπήσεις και

πολλά άλλα.

Όταν δημιουργείται ένα νέο περιεχόμενο, οι απλές αλλαγές είναι εφικτές χωρίς την

απαραίτητη γνώση της HTML από τον επεξεργαστής κειμένου. Εν ολίγοις οι

δυνατότητες αυτού του εργαλείου περιορίζονται μόνο από τις δυνατότητες και την

δημιουργικότητα του χρήστη.

Ένα κύριο και βασικό χαρακτηριστικό του Joomla είναι η ανάπτυξη δυναμικών

ιστοσελίδων, δηλαδή σελίδων που δημιουργούνται την στιγμή που ζητούνται. Οι

αιτήσεις των χρηστών λαμβάνονται και εξυπηρετούνται από ένα

σύστημα διακομιστή (server) όπως είναι ο Apache.

2.2 Χαρακτηριστικά και δυνατότητες του Joomla!

Σελίδα 19 από 87

Page 20: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Όπως προείπαμε το Joomla αποτελεί μία εφαρμογή ανοιχτού CMS κώδικα, όπου

διάφορες ομάδες ατόμων βελτιώνουν με την συνεισφορά τους την ανάπτυξη αλλά

και τα συστήματα που την υποστηρίζουν .Παρόλο που το Joomla προσφέρει

κυρίως τα βασικά χαρακτηριστικά ενός CMS, το μεγαλύτερό του πλεονέκτημα είναι

ότι είναι τόσο επεκτάσιμο, που είναι ελάχιστες οι λειτουργίες, που δεν υποστηρίζει.

Αφού το Joomla στηρίζεται ως επι το πλείστον σε ελεύθερο λογισμικό ανοιχτού

κώδικα και όλα τα επιμέρους συστατικά του στοιχεία βασίζονται και αυτά σε

ανοιχτό λογισμικό ελεύθερης διανομής.

Συνοπτικά λοιπόν μπορούμε να αναφέρουμε ότι το Joomla απαρτίζεται από τα

εξής χαρακτηριστικά:

Χρησιμοποιεί τις καλύτερες τεχνολογίες ανοιχτού λογισμικού. Η

πλατφόρμα αυτή είναι γραμμένη σε κώδικα PHP ως server side script για το

προγραμματισμό του συστήματος και τα δεδομένα τα αποθηκεύει στη βάση

δεδομένων MySQL. Χρησιμοποιείται η XML για τη διαχείριση περεταίρω

εργαλείων καθώς και η γλώσσα σήμανσης CSS (και CSS2) για την

μορφοποίηση των φύλλων. Ακόμη παρέχεται η RSS δυνατότητα.

Τα Χαρακτηριστικά του συστήματος. Η πλήρης διαχείριση της βάσης και του περιεχομένου του συστήματος

γίνεται από οποιοδήποτε web browser.

Δεν είναι εξαρτώμενο από το λειτουργικό σύστημα, αρκεί αυτό να έχει

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

πλήρως σε Windows, Linux, Unix συστήματα, Mac, Solaris ΑΙΧ.

Η δυνατότητα της γρήγορης φόρτωσης της σελίδας οφείλεται στην

προσωρινή αποθήκευση της σελίδας.

Ο διαχειριστής του συστήματός μπορεί να αντιμετωπίσετε οποιοδήποτε

σφάλμα προκύψει στη λειτουργία του joomla άμεσα , χάρη στην πολύτιμη

βοήθεια της αναφοράς σφαλμάτων

Το Joomla έχει ενσωματωμένο τμήμα βοήθειας για να βοηθήσει τους

χρήστες με την εύρεση του τι χρειάζονται. Ένα γλωσσάρι εξηγεί τους όρους

Σελίδα 20 από 87

Page 21: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

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

πιό πρόσφατη έκδοση.

Το FTP Layer επιτρέπει τη λειτουργία των αρχείων (όπως την εγκατάσταση

επεκτάσεων) χωρίς να χρειάζεται να κάνει όλους τους φακέλους και τα

αρχεία εγγράψιμα, κάνοντας τη ζωή του διαχειριστή και την διαχείριση του

δικτυακού τόπου ευκολότερη και αυξάνει την ασφάλεια του δικτυακού

τόπου.

Η δυνατότητα Διαχείρισης Χρηστών. Το Joomla Παρέχει τη δυνατότητα

δημιουργίας πολλών επιπέδων χρηστών. Προσφέρει ένα σύστημα καταγραφής

στους χρήστες επιτρέποντάς τους να διαμορφώνουν προσωπικές επιλογές.

Ανάλογα με το τι επιτρέπεται να διαχειρίζονται οι χρήστες (Users) υπάρχουν

εννέα ομάδες χρηστών, με διάφορους τύπους δικαιωμάτων, ώστε να μπορούν

να έχουν πρόσβαση, να επεξεργάζονται και να δημοσιεύουν ανάλογα με τα

δικαιώματά τους. Ο έλεγχος ταυτότητας είναι ένα σημαντικό μέρος της

διαχείρισης των χρηστών και της υποστήριξης του Joomla πολλαπλών

πρωτοκόλλων, συμπεριλαμβανομένων των πρωτοκόλλων ταυτοποίησης

LDAP, OpenID και του Gmail. Επιτρέπεται έτσι στους χρήστες να

χρησιμοποιούν τις υπάρχουσες πληροφορίες του λογαριασμού τους για την

επιτυχή ολοκλήρωση της διαδικασίας εγγραφής τους.

Η Διαχείριση της Γλώσσας. Το περιβάλλον διαχείρισης παρέχει διεθνής

υποστήριξη για πολλές γλώσσες του κόσμου και κωδικοποίηση UTF-8. Αν

χρειάζεστε η ιστοσελίδα σας σε μία γλώσσα και τον πίνακα σε ένα άλλο

διαχειριστή, με πολλές γλώσσες είναι δυνατόν.

Η Διαχείριση Media Manager. Το Media Manager εργαλείο μας επιτρέπει την

δυνατότητα να φορτώνουμε και να εισάγουμε εικόνες ενσωματώνοντας τες σε

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

χρήστης να ανεβάσει αν θέλει πολλές εικόνες ταυτόχρονα, με την βοήθεια του

εργαλείου flash uploader.

Σελίδα 21 από 87

Page 22: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Η δυνατότητα Διαχείρισης Περιεχομένου ( Content Manager ). Η

δημιουργία των άρθρων με την βοήθεια του Content Manager είναι πολύ

εύκολη. Το Content manager στηρίζει την δημιουργία άρθρων τριών επιπέδων

(τριών βημάτων) κάνοντας την οργάνωση του περιεχομένου πανεύκολη. Tο

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

όποιον τρόπο θέλει και όχι κατ 'ανάγκη όπως θα είναι by default στην

ιστοσελίδα. Για την δημιουργία του περιεχομένου αυτού απαιτούνται 3 βήματα.

Δημιουργείτε πρώτα μία κατηγορία για τα άρθρα, έπειτα συντάσσεται το άρθρο

και τέλος δημιουργείται ένας σύνδεσμος στη σελίδα που μας κατευθύνει σε

αυτό το άρθρο. Οι επισκέπτες μπορούν να αξιολογήσουν τα άρθρα, να τα

στείλουν με e-mail σε έναν φίλο τους, ή να τα αποθηκεύσετε αυτόματα σε ένα

PDF (με UTF-8 υποστήριξη για όλες τις γλώσσες). Οι διαχειριστές μπορούν να

αρχειοθετήσουν το περιεχόμενο για τη φύλαξη του, η να το αποκρύψουν από

τους επισκέπτες της ιστοσελίδας.

Η Διαχείριση του Μενού (Menu Manager). Για την εμφάνιση του

περιεχομένου, στην ιστοσελίδα απαραίτητη προϋπόθεση είναι η ύπαρξη και η

δημιουργία κάποιου μενού. Η χρήση και η διαχείριση του μενού, επιτρέπει

στον χρήστη την δημιουργία όσων μενού και στοιχείων μενού χρειάζεται ο

διαχειριστής. Είναι εφικτή η δημιουργία ιεραρχικής δομή των μενού και είναι

εντελώς ανεξάρτητη από τη δομή του περιεχομένου.

Η Διαχείριση των προτύπων. Τα πρότυπα στο Joomla είναι ένας ισχυρός

τρόπος ώστε να γίνει το site σας ακριβώς όπως θέλετε, είτε χρησιμοποιώντας

ένα ενιαίο πρότυπο για όλο το site είτε ένα ξεχωριστό πρότυπο για κάθε τμήμα

του. 

Η Δυνατότητα διαφήμισης (Banner Manager). Με την χρήση της εφαρμογής

αυτής ο χρήστης-διαχειριστης μπορεί να δημιουργήσει διαφημίσεις που θα

εμφανίζονται στην ιστοσελίδα του. Οι διαφημίσεις αυτές μπορεί να είναι ακόμα

Σελίδα 22 από 87

Page 23: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

και κερδοσκοπικού χαρακτήρα.

Διαχείριση Επαφών (Contact Manager). Ο χρήστης καθοδηγείται από το

contact manager ώστε να βρεί το σωστό πρόσωπο που τον ενδιαφέρει και τα

αντίστοιχα στοιχεία επικοινωνίας του. Υποστηρίζει επίσης τις πολλαπλές

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

ομάδες.

Η ισχυρή επεκτασιμότητα. Ένα ισχυρό χαρακτηριστικό του Joomla που το

καθιστά και τόσο δημοφιλή είναι οι επεκτάσεις (extensions). Με την βοήθεια

των επεκτάσεων μπορούμε να επεκτείνουμε την ιστοσελίδα με νέες εφαρμογές

και λειτουργίες . Οι εφαρμογές αυτές είναι από τρίτους κατασκευαστές και

μπορεί να παρέχονται δωρεάν ή για εμπορική χρήση.

2.3 Αρχιτεκτονική του Jooma!

Οι σύγχρονες διαδικτυακές εφαρμογές κάνουν χρήση μιας αρχιτεκτονικής, η οποία

έχει αντικαταστήσει την παραδοσιακή client/server αρχιτεκτονική, γνωστής ως

multi-tiered δηλαδή πολλών επιπέδων. Μία πολύ γνωστή και επιτυχημένη

εφαρμογή μιας τέτοιας κατηγορίας αρχιτεκτονικής είναι η Java EE, η οποία κάνει

χρήση τεσσάρων επιπέδων. Οι διαδικτυακές εφαρμογές γραμμένες σε PHP

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

Το εργαλείο Joomla! Αποτελείται από πολλά διαφορετικά συστατικά μέρη όπου το

κάθε μέρος ξεχωριστά αποτελεί αυτόνομο τμήμα και επιτελεί συγκεκριμένες

λειτουργίες.

Η αρχιτεκτονική του συστήματος αποτελείται από τρία βασικά επίπεδα. Η ιεραρχία

των επιπέδων έχει ως εξής , στη βάση είναι το κεντρικό, κατασκευαστικό επίπεδο,

ενδιάμεσα το επίπεδο εφαρμογών και τέλος στην κορυφή το επίπεδο επεκτάσεων

Στο κατώτερο, κατασκευαστικό επίπεδο όπως παρατηρείται και από το σχήμα,

εμπεριέχονται οι βιβλιοθήκες είτε αυτές που παρέχονται από το Joomla αυτόματα

είτε αυτές που εγκαθίστανται από εξωτερικούς προγραμματιστές. Επιπλέον το

επίπεδο αυτό συμπεριλαμβάνει το πλαίσιο πάνω στο οποίο στηρίζεται η λειτουργία

του Joomla, καθώς και τα επιμέρους plug-ins που επεκτείνουν την λειτουργία του

Σελίδα 23 από 87

Page 24: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

πλαισίου.

Στο μεσαίο επίπεδο εμπεριέχονται οι εφαρμογές. Εδώ έχουμε τις εφαρμογές

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

web server, τις εφαρμογές διαχείρισης δικτυακού τόπου και περιεχομένου καθώς

και εφαρμογές για την παρουσίαση αυτών των τόπων. Η διαχείριση αυτών των

τόπων είναι εφικτό να γίνει και απομακρυσμένα με τις οι εφαρμογές

απομακρυσμένης πρόσβασης που συμπεριλαμβάνονται και αυτές σε αυτό το

επίπεδο.

Τέλος στο ανώτερο επίπεδο παρουσιάζονται οι επεκτάσεις όπου εδώ βρίσκονται

τα πρότυπα, οι ενότητες και τα συστατικά στοιχεία της εφαρμογής μας.

Εικόνα 3 Αρχιτεκτονική του Joomla!

2.4 ΤΕΧΝΙΚΕΣ ΑΠΑΙΤΗΣΕΙΣ ΤΟΥ JOOMLA

Σελίδα 24 από 87

Page 25: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Οι τεχνικές απαιτήσεις για το εργαλείο Joomla και συγκεκριμένα για την έκδοση

Joomla! 2.5 που θα χρησιμοποιηθεί στο πρακτικό κομμάτι αυτής της πτυχιακής

έχει τα ακόλουθα χαρακτηριστικά όπως παραθέτονται στον παρακάτω πίνακα. Να

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

του Joomla! (1.6 και 1.7) οι οποίες δεν είναι πλέον υποστηριζόμενες

Software Recomended MinimumPHP 5.4 + 5.2.4 +

Supported DatabaseMySQL 5.0.4 + 5.0.4 +

SQL Server 10.50.1600.1+ 10.50.1600.1+

Supported Web Servers:Apache[2]

(with mod_mysql, mod_xml, and mod_zlib)

2.x + 2.x +

Nginx 1.1 1.0

Microsoft IIS[5] 7 7

Εικόνα 4 Τεχνικές Απαιτήσεις του Joomla! 2.5

2.5 Επιλογές Διαμόρφωσης

Πριν ακόμα ξεκινήσει το ενδιαφέρον κομμάτι της εγκατάστασης και της διαχείρισης

αυτής της πλατφόρμας θα πρέπει να δούμε τι συστατικά στοιχεία απαιτούνται για

να εγκαταστήσουμε το Joomla. Όπως αναφέρθηκε σε προηγούμενη ενότητα το

Joomla θα πρέπει να εγκατασταθεί σε οποιοδήποτε web server που διαθέτει

server - side τεχνολογία, PHP, καθώς και μια βάση MYSQL. Επιπλέον, σαν

ελάχιστες απαιτήσεις που έχουν πλέον οι περισσότεροι web server θεωρείται και η

δυνατότητα FTP συνδέσεων καθώς και αποστολής και λήψης e-mail μέσω SMTP

πρωτοκόλλου Έτσι πρίν προβούμε στην εγκατάσταση του Joomla η MySQL, ο

Apache και η PHP θα πρέπει να έχουν εγκατασταθεί στον υπολογιστή μας. Αν

έστω ένα από τα συστατικά της αρχιτεκτονικής απουσιάζει δε μπορούμε να

Σελίδα 25 από 87

Page 26: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

προχωρήσουμε με την εγκατάσταση του Joomla .

Για να απλοποιήσουμε όμως την κατάσταση και να σώσουμε αρκετό χρόνο

κάνοντας την ζωή μας πιο εύκολή δεν θα χρειαστεί να εγκαταστήσουμε ξεχωριστά

κάθε μια από τις παραπάνω τεχνολογίες και ύστερα να υποχρεωθούμε να

εκτελέσουμε ένα σύνολο από ρυθμίσεις για να δημιουργήσουμε τον web server

μας. Υπάρχουν ήδη ολοκληρωμένα πακέτα που συμπεριλαμβάνουν όλες αυτές τις

τεχνολογίες μαζί και δημιουργούν τις ρυθμίσεις αυτόματα κάνοντας την

διαμόρφωση πολύ πιο γρήγορα. Τέτοια λογισμικά είναι τα ακόλουθα.

Το LAMP (Linux Apache MySQL PHP). Οι περισσότερες εκδόσεις του Linux

έρχονται με έναν ήδη διαμορφωμένο LAMP διακομιστή

Το WAMP (Windows Apache MySQL PHP). Εάν έχουμε windows μηχάνημα

θα προτιμήσουμε το WAMP.

To MAMP (Mancintosh Apache MySQL PHP)

Το XAMPP για πολλαπλές εφαρμογές

2.6 WAMP-XAMPP εγκατάσταση

Για την εγκατάσταση του WAMP θα επιλέγουμε την τελευταία έκδοση του Wamp

Server τον και συγκεκριμένα εκείνη την έκδοση που ταιριάζει με το λειτουργικό του Σελίδα 26 από 87

Page 27: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

υπολογιστή μας (32 ή 64 bit).

Εικόνα 5 Wamp Server Download

Έτσι επιλέγω να κατεβάσω την 64bit έκδοση του WAMP SERVER.

Αφού αποθηκευτεί το αρχείο στον φάκελο που επιλέξαμε και όταν εν τέλει αυτό

κατέβει θα πατήσουμε διπλό κλικ στο ληφθέν αρχείο για να ξεκινήσουμε την

εγκατάστασή του.

Σελίδα 27 από 87

Page 28: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Εικόνα 6 Wamp Server Setup (1)

Στο παράθυρο διαλόγου που θα εμφανιστεί κάνουμε κλικ στο Next, έπειτα στο

επόμενο παράθυρο διαλόγου επιλέγουμε το στο I accept the agreement και

πατάμε το Next.

Εικόνα 7 Wamp Server Setup (2)

Σελίδα 28 από 87

Page 29: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Σε περίπτωση που θέλω να επιλέξω διαφορετικό φάκελο αποθήκευσης της

εγκατάστασης πατάω Browser, αλλιώς συνεχίζω κανονικά πατώντας το Next.

Εικόνα 8 Wamp Server Setup (3)

Στη συνέχεια Επιλέγουμε το πλαίσιο ελέγχου «Create a Desktop icon», για να

δημιουργηθεί και το αντίστοιχο εικονίδιο στην επιφάνεια εργασίας. Στη συνέχεια,

κάνουμε κλικ στο κουμπί Next.

Σελίδα 29 από 87

Page 30: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Εικόνα 9 Wamp Server Setup (4)

 Έπειτα εμφανίζεται το παρακάτω παράθυρο διαλόγου ζητώντας την επιβεβαίωση

εγκατάστασης. Απλά πατάμε Install και σχεδόν έχουμε ολοκληρώσει με την

διαδικασία εγκατάστασης.

Εικόνα 10 Wamp Server Setup (5)

Τέλος εμφανίζεται το παρακάτω παράθυρο διαλόγου όπου αφήνουμε επιλεγμένο

το πλαίσιο ελέγχου Launch Wampserver 2 now, για να ξεκινήσει άμεσα η

λειτουργία του Server. Στη συνέχεια, κάνουμε κλικ στο κουμπί Finish και έτσι Σελίδα 30 από 87

Page 31: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

έχουμε ολοκληρώσει με την διαδικασία εγκατάστασης του Wamp Server.

Εικόνα 11 Wamp Server Setup (6)

2.7 Εγκατάσταση της Joomla! 2.5 με το εργαλείο Wamp

Για την εγκατάσταση της Joomla θα πρέπει να επισκεφτούμε το site της

(http://www.joomla.org/download.html) και να επιλέξουμε την έκδοση που μας

ενδιαφέρει.Θα παρατηρήσουμε πως η τελευταία έκδοση που υπάρχει αυτή την

στιγμή είναι η Joomla 3.3, όμως επειδή θεωρώ ότι είναι αρκετά πρώιμη θα

προτιμήσω την εγκατάσταση μίας πιο “περπατημένης” έκδοσής, αυτής της Joomla!

2.5 . Η διαδικασία της εγκατάστασης περιγράφεται με 7 απλά βήματα.

Βήμα 1ο : Αφού κατεβεί και αποθηκευτεί το εν λόγω αρχείο σε zip μορφή, θα πάω

στον φάκελο Wamp που είχαμε δημιουργήσει νωρίτερα με την αντίστοιχη

εγκατάσταση, θα ανοίξω το φάκελο www και εκεί μέσα θα δημιουργήσω έναν δικό

μου φάκελο μέσα στον οποίο θα αποσυμπιέσω τα περιεχόμενα του φακέλου

Joomla! 2.5. Η διαδρομή που θα ακολουθήσω εν ολίγοις θα είναι

«C/Wamp/www/mysite» και σε αυτό το σημείο θα κάνω extract τον φάκελο του

Joomla που κατέβασα.

Σελίδα 31 από 87

Page 32: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Εικόνα 12 Download Joomla 2.5

Βήμα 2ο : Σε αυτό το βήμα απαιτείται η δημιουργία Βάσης Δεδομένων που θα

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

phpmyadmin, όπου απλά δημιουργούμε μία καινούρια βάση δεδομένων. Στις 3

τελευταίες εκδόσεις αυτό το βήμα δεν είναι αναγκαίο μιας και το Joomla δημιουργεί

από μόνο του την βάση που ονομάζουμε στο αντίστοιχο βήμα εγκατάστασης.

Βήμα 3ο : Εκκίνηση της Εγκατάστασης και αρχικής παραμετροποίησης του Joomla

site μας γράφοντας στον web browser μας «localhost/mysite» που δημιουργήσαμε

στο πρώτο βήμα. Αρχικά επιλέγουμε την γλώσσα που μας και προσπερνάμε με

ένα Next τον προληπτικό έλεγχο και την άδεια χρήσης.

Σελίδα 32 από 87

Page 33: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Εικόνα 13 Joomla Installation -choose language

Βήμα 4ο : Στο τέταρτο αυτό βήμα καλούμαστε να δώσουμε τα στοιχεία

επικοινωνίας του Joomla site μας με τη βάση δεδομένων που θα χρησιμοποιεί.

Εδώ το αφήνουμε localhost και δίνουμε τα στοιχεία που χρησιμοποιήσαμε για να

μπούμε στο phpmyadmin (συνήθως root και άδειο password) και δίνουμε επίσης

το όνομα της βάσης που δημιουργήσαμε στο βήμα 2, όπως φαίνετε στον

παρακάτω πίνακα.

Εικόνα 14 Joomla installation - Database Configuration

Βήμα 5ο :Αυτό το βήμα αφορά της ρυθμίσεις δημιουργίας FTP για λόγους

Σελίδα 33 από 87

Page 34: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

ασφαλείας. Προχωράμε χωρίς κάποια αλλαγή και απλά πατάμε Next.

Βήμα 6ο : Εδώ δίνουμε ένα όνομα για το site μας καθώς και τα στοιχεία εισόδου

και επικοινωνίας του λογαριασμού του διαχειριστή (admin), δηλαδή του δικού μας

λογαριασμού. Επίσης εδώ αν θέλουμε μπορούμε να εγκαταστήσουμε sample data

στο καινούριο μας site, ή εάν θέλουμε να το έχουμε εντελώς άδειο από

περιεχόμενο. Επιπλέον επιλέγουμε την εισαγώγή ενδεικτικού περιεχομένου

(“Install Sampla Data”) πριν προχωρήσουμε στο τελευταίο βήμα.

Εικόνα 15 Joomla instalation - Βασικές Ρυθμίσεις

Σελίδα 34 από 87

Page 35: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Εικόνα 16 Joomla installation - Main Configuration

Βήμα 7ο : Στο τελευταίο βήμα, μας ενημερώνει ότι πρέπει να διαγράψουμε τον

φάκελο installation από τον φάκελο του site μας και αφού το κάνουμε κ αυτό,

αποκτάμε πρόσβαση στο site που μόλις δημιουργήσαμε.

Σελίδα 35 από 87

Page 36: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Front-end Βάση Δεδομένων]ν Back-end Διαχείριση

Επισκέπτες Δεδομένα Διαχειριστές

Εικόνα 17 Joomla installation -remove installation folder

2.8 Η Δομή Και το Περιβάλλον του JOOMLA

Η δομή του Joomla έχει να κάνει με τον τρόπο με τον οποίο τα συστατικά του

στοιχεία είναι δομημένα πρίν αυτά εμφανιστούν στον χρήστη.

Η δομή του Joomla περιλαμβάνει την περιοχή διαχείρισης Frontend και Back-end,

τα περιεχόμενα (δηλαδή οποιαδήποτε μορφή πληροφορίας), τις επεκτάσεις

(extensions), τα συστατικά (components) , τα πρότυπα και τα plug-ins.

To Front- End Περιβάλλον: Στο Front-End Περιβάλλον οι χρήστες θα μπορούν να

δουν το τελικό αποτέλεσμα, δηλαδή την ιστοσελίδα που θα δημιουργήσουμε. Για

την σύνδεση στο Front-End περιβάλλον πληκτρολογούμε στον browser μας

http :// localhost / mysite .

To template που είναι ορισμένο “by default” με την εγκατάσταση του Joomla είναι

το παρακάτω. Από ‘κει και έπειτα είναι στην ευχέρεια του κάθε χρήστη να το

διαμορφώσει όπως αυτός επιθυμεί .

Σελίδα 36 από 87

Page 37: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Εικόνα 18 Front-End Joomla (by default)

To Back-End Περιβάλλον: Το Back End είναι η περιοχή διαχείρισης και

κατασκευής της ιστοσελίδας μας και αποτελεί το εργαστήριο του Joomla. Στην

περιοχή αυτή έχει πρόσβαση ο ιδιοκτήτης- διαχειριστής ο οποίος μπορεί να

αλλάξει τις ρυθμίσεις και το περιεχόμενό της.

Σελίδα 37 από 87

Page 38: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Εικόνα 19 Login - Back End Περιβάλλον

Για τη σύνδεση στο Back End περιβάλλον, πληκτρολογούμε στη γραμμή

διευθύνσεων του browser την εξής διεύθυνση «localhost / newsite / administrator » .

Για την είσοδο στο Back End σύστημα θα πρέπει να εισάγουμε Username και

Password όπως τα ορίσαμε κατά την εγκατάσταση έπειτα πατάμε Login και

εισερχόμαστε στην περιοχή διαχείρισης Back End.

Εικόνα 20 Back End Περιβάλλον Διαχείρισης

Στην περιοχή αυτή μπορούμε να προσθέσουμε άρθρα, να επεξεργαστούμε μενού,

να προσθέσουμε χρήστες και γενικά να έχουμε τον πλήρη έλεγχο κατασκευής και

διαχείρισης της ιστοσελίδας .

Τα Μενού (Menus): Αποτελούν και αυτά ένα βασικό και αναπόσπαστο κομμάτι

της δομής του Joomla. Στην παραπάνω εικόνα (εικόνα 17) στο πάνω μέρος του

περιβάλλοντος υπάρχει ένα οριζόντιο menu καθώς και ένα κατακόρυφο. Αυτά τα

μενού μπορούμε να τα διαχειριστούμε και να τα προσαρμόσουμε όπως εμείς

θέλουμε και να τα τοποθετήσουμε και να τα διατάξουμε σύμφωνα με τις απαιτήσεις

του δικού μας ιστότοπου.

Τα μενού στην Joomla! 2.5 είναι συγκεκριμένου τύπου όπως αναφέραμε και πιο

Σελίδα 38 από 87

Page 39: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

πάνω. Πέρα όμως από αυτά τα κλασσικά οριζόντια και κατακόρυφα μενού υπάρχει

η δυνατότητα παροχής δυναμικών μενού, με δεύτερο και τρίτο επίπεδο με την

βοήθεια κάποιων modules από τρίτους κατασκευαστές. Για την δημιουργία ενός

μενού θα πρέπει πρώτα να δημιουργήσουμε το μενού και στην συνέχεια να

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

πάνω τους θα μας οδηγούν στις επιθυμητές σελίδες.

Εικόνα 21 Menu Manager

Οι Εφαρμογές (Components): To component menu βοηθάει το Joomla να γίνει

πιο αποδοτικό. Σε αυτήν την περιοχή βρίσκονται οι εφαρμογές τρίτων

κατασκευαστών που πιθανώς να εγκατασταθούν στο μέλλον. Στο μενού αυτό

συμπεριλαμβάνονται τα εξής

Banners - Πρόκειται για μία εφαρμογή που επιτρέπει στον διαχειριστή να

δημιουργεί διαφημίσεις και να διαφημίζεται και ο ίδιος

Contacts - Οι επαφές χρησιμεύουν για την επικοινωνία των χρηστών με

τους υπεύθυνους της ιστοσελίδας

Messaging - Αποτελεί εφαρμογή για την διαχείριση των μηνυμάτων

Newsfeeds ή Ροές ειδήσεων - Εφαρμογή για παροχή δυνατότητας

παρακολούθησης των διαφόρων άρθρων και ειδήσεων άλλων ιστότοπων.

Redirect - Παρέχει την δυνατότητα ανακατεύθυνσης μιας ιστοσελίδας που

Σελίδα 39 από 87

Page 40: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

δεν υπάρχει πια σε μία άλλη

Search - Με αυτό δυνατότητα ενεργοποίησης στατιστικών αναζήτησης, με

ποιες λέξεις κλειδιά αναζητούν οι χρήστες

Smart Search - Δίνεται η δυνατότητα αναζήτησης στο περιεχόμενο της

ιστοσελίδας με λέξεις κλειδιά

Weblinks - Πρόκειται για συνδέσμους που οδηγούν σε άλλες ιστοσελίδες

ίδιου ή διαφορετικού περιεχομένου.

Η ύπαρξη των εφαρμογών καθιστά το Joomla περισσότερο επεκτάσιμο. Άλλες

εφαρμογές είναι εμπορικές και άλλες ελεύθερης διανομής. Μερικές από αυτές είναι

εφαρμογές για e-shop, για gallery φωτογραφιών και για e-learning. Ανάλογα με το

τι απαιτήσεις έχει ο χρήστης μπορεί να προμηθευτεί και να ενεργοποιήσει το

κατάλληλο component.

Τα Ενθέματα (Modules): Τα ενθέματα (Modules) αποτελούν μέρος των

επεκτάσεων (extensions menu) του Joomla. Τα Modules είναι τα «καλούπια» -

αντικείμενα μέσα στα οποία εμφανίζονται τα περιεχόμενα, οι πληροφορίες, οι

εφαρμογές, τα πρόσθετα και γενικά τα αντικείμενα που εμφανίζονται στο δημόσιο

τμήμα. Η θέση τους καθορίζεται από το αρχείο «index.php» και το στυλ εμφάνισής

τους καθορίζεται από το αρχείο CSS του επιλεγμένου προτύπου (template).

Τα ενθέματα μπορούν να περιέχουν μενού, διαφημίσεις , ψηφοφορίες και άλλες

εφαρμογές. Παρέχεται επίσης η δυνατότητα δημιουργίας αντιγράφων των

ενθεμάτων και η τοποθέτηση τους σε διαφορετικά σημεία στην ιστοσελίδα.

Σελίδα 40 από 87

Page 41: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Εικόνα 22 Module Manager

Τα Πρόσθετα (Plug-ins): Τα πρόσθετα είναι κάποιες εφαρμογές που είναι

ενσωματωμένες στο Joomla 2.5. Αποτελούν κομμάτια κώδικα τα οποία εκτελούν

κάποιες ειδικές λειτουργίες. Ένα τέτοιο παράδειγμα είναι η μηχανή αναζήτησης

που έχει το Joomla! για να μπορεί ο χρήστης να αναζητεί το περιεχόμενο μέσα

στην ιστοσελίδα.

Υπάρχουν έξι διαφορετικά είδη προσθέτων και δίνεται η δυνατότητα

ενεργοποίησης ή απενεργοποίησης τους αλλά με μεγάλη προσοχή ώστε να μην

υπάρξει πρόβλημα στην ομαλή λειτουργία της ιστοσελίδας. Στην ηλεκτρονική

διεύθυνση http :// extensions . joomla . org υπάρχουν δεκάδες πρόσθετα που εκτελούν

εργασίες τέτοιου τύπου.

Τα Πρότυπα (Templates): Τα πρότυπα αποτελούν ένα μεγάλο κεφάλαιο και είναι

ένα μεγάλο και ισχυρό εργαλείο της Joomla.Τα πρότυπα είναι κομμάτι των επεκτάσεων

(extensions) και χρησιμεύουν για τον διαχωρισμό του περιεχομένου από την εμφάνιση.

Στα πρότυπα ορίζονται τα χρώματα, η θέση των ενθεμάτων και γενικά όλη η διαχείριση

της ιστοσελίδας.

Τα πρότυπα είναι στην ουσία ο τρόπος με τον οποίο θα εμφανίζεται ο δικός μας

διαδικτυακός τόπος. Στο Joomla 2.5 έχει αλλάξει η λογική των προτύπων, εδώ διαθέτονται

πρότυπα πάνω στα οποία μπορούμε να εφαρμόσουμε διάφορα στυλ, κάνοντας έτσι την

ιστοσελίδα πιο μοναδική. Στην ουσία στο Πρότυπο παρουσιάζεται η δομή της ιστοσελίδας

μας και στο στυλ η μορφοποίηση της.

Σελίδα 41 από 87

Page 42: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Εικόνα 23 Templates Manager

Στην παραπάνω εικόνα φαίνονται ο πίνακας με τα διαθέσιμα templates που

υπάρχουν. Κάποια από αυτά τα έχει φορτώσει από μόνο του το Joomla κατά την

εγκατάστασή του, και κάποια άλλα φορτώθηκαν πειραματικά. Πέρα από τα

προκαθορισμένα templates ο διαχειριστής μπορεί να φορτώσει άλλα templates τα

οποία θα προμηθευτεί από τρίτους. Τέτοια templates υπάρχουν σε διάφορα sites

που μπορούμε να βρούμε χρησιμοποιώντας οποιαδήποτε μηχανή αναζήτησης.

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

που συνάδουν με την έκδοση της Joomla που εγκατέστησε, στην προκειμένη

περίπτωση εφαρμόζουμε templates για την έκδοση Joomla! 2.5. Υπάρχουν αρκετά

site που παρέχουν templates και επιτρέπουν στον χρήστη να τα κατεβάσει είτε

δωρεάν είτε με την καταβολή κάποιου ποσού ανάλογα με το πόσο επαγγελματικό

είναι το template που παρέχεται. Ο χρήστης έχει την δυνατότητα, πρίν ακόμα

κατεβάσει και εγκαταστήσει το εν λόγο template, να δοκιμάσει την demo εκδοχή

του. Ενδεικτικά αναφέρουμε ιστότοπους που διαθέτουν τέτοια templates όπως το

Joomla 24, το best of Joomla, το theme expert κλπ.

Σελίδα 42 από 87

Page 43: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

3. Τεχνολογίες και εργαλεία ανάπτυξης της Πτυχιακής

Σε αυτό το κεφάλαιο θα αναλυθούν βασικά θέματα και μηχανισμοί που βοηθούν

στην μετάδοση της πληροφορίας στο διαδίκτυο. Θα αναλύσουμε τις τεχνολογίες

και τα εργαλεία ανάπτυξης που αποτελούν αναπόσπαστο κομμάτι οποιασδήποτε

διαδικτυακής ιστοσελίδας που προορίζεται να εγκατασταθεί στο διαδίκτυο.

Μια ιστοσελίδα είναι ένα αρχείο με διαφορές πληροφορίες και περιεχόμενο

προορισμένες για δημοσίευση στον παγκόσμιο ιστό οι οποίες προβάλλονται μέσω

κάποιου φυλλομετρητή. Μία Ιστοσελίδα για να μπορεί να λειτουργεί πρέπει να είναι

αποθηκευμένη σε έναν Web server.

3.1 Η HTML

Οποιαδήποτε σελίδα είναι εγκατεστημένη στο διαδίκτυο, είναι αρχείο γραμμένο σε

γλώσσα HTML (ή XHTML). Στο αρχείο αυτό εμπεριέχονται η δομή, το κείμενο , οι

εικόνες, τα έγγραφα αλλά και σύνδεσμοι προς άλλα έγγραφα. Τα αρχικά της HTML

προέρχονται από το Hypertext Markup Language (Γλώσσα Σήμανσης

Υπερκειμένου).

Αρχικά θα πρέπει να υπογραμμίσουμε ότι η HTML δεν είναι γλώσσα

προγραμματισμού, καθώς δεν διαθέτει τα στοιχεία που χρειάζονται για να

χαρακτηρισθεί έτσι. Δεν μπορεί να παίρνει αποφάσεις, δεν μπορεί να κάνει πράξεις

και αναθέσεις, δεν μπορεί να παρεκκλίνει της ροής της και άλλα πολλά πράγματα

τα οποία δεν μπορεί να κάνει γιατί δεν είναι σχεδιασμένη για κάτι τέτοιο. Η HTML

είναι μία γλώσσα σήμανσης (όπως και η SGML). Η σήμανση κειμένων είναι μια

έννοια που δηλώνει ότι τα κείμενα “σημαίνονται” από τον συγγραφέα του εγγράφου

Σελίδα 43 από 87

Page 44: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

με κατάλληλες σημάνσεις- οδηγίες για τον τυπογράφο που αφορούσαν το layout

που θα έπρεπε να έχει το τελικό εκτυπωμένο κείμενο.

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

ορίζεται από ένα Document Type Definition (DTD) του Standard Generalized

Markup Language (SGML). Μας βοηθάει να περιγράψουμε, με τα διάφορα

δεδομένα tags (ετικέτες) που περιλαμβάνει, το πώς θέλουμε να εμφανίζεται το

κείμενό μας μέσα στο World Wide Web και τα οποία ο Web browser αναλαμβάνει

να τα μετατρέψει στην επιθυμητή μορφή. Επομένως οι web browsers

(φυλλομετρητές) , πέρα από την δυνατότητα να ανακτούν τις σελίδες από το web,

δίνουν επίσης την δυνατότητα μορφοποίησης τους.

Κάθε HTML αρχείο αποτελείται από ένα στοιχείο <html> το οποίο χωρίζεται σε δύο

μέρη, την κεφαλή <head> και το κυρίως σώμα <body>. O φυλλομετρητής διαβάζει

την σελίδα που είναι γραμμένη σε HTML και διερμηνεύει τα tags της HTML και

μορφοποιεί το κείμενο και τις εικόνες στην οθόνη. Στην HTML υπάρχουν tag αρχής

και tag τέλους. Κάθε tag που ανοίγει πρέπει να κλείνει ύστερα κάπως έτσι δηλαδή

<Όνομα Tag> κείμενο </Όνομα Tag>. Το tag αρχής ενεργοποιεί μια λειτουργία ή

ένα χαρακτηριστικό, ενώ το tag τέλους την απενεργοποιεί. Τα tags στην html δεν

κάνουν διάκριση μεταξύ πεζών και κεφαλαίων μπορούμε να γράφουμε είτε με

κεφαλαίους είτε με πεζούς χαρακτήρες. Για να περιγραφεί η συνολική δομή μίας

HTML σελίδας, χρησιμοποιούνται τρία tags. Τα tags αυτά προσδιορίζουν τη σελίδα

μας στους φυλλομετρητές και μας πληροφορούν για τον τίτλο ή τον συγγραφέα της

σελίδας που θα φορτωθεί.

H δημιουργία αρχείων HTML είναι αρκετά απλή και γίνεται με την βοήθεια

συντακτών κειμένου, τα οποία είναι προγράμματα που αποθηκεύουν τα αρχεία

κειμένου σε μορφή ASCII. Τέτοια προγράμματα κειμενογράφου είναι τα

«Notepad», «Wordpad» και «Write» για υπολογιστές που υποστηρίζουν το

λειτουργικό σύστημα των Windows, το «Edit» για το DOS και τα «vi», «emacs» και

«pico» για όσα υποστηρίζουν λειτουργικό του UNIX. Το όνομα αυτών των αρχείων

κειμενογράφων θα πρέπει να έχουν την κατάληξη .html ή htm σε συστήματα DOS

ή Windows που επιτρέπουν επεκτάσεις μόνο τριών χαρακτήρων.

Επιπλέον υπάρχουν πιο εξειδικευμένα προγράμματα στην αγορά, που

λειτουργούν σαν αυτοματοποιημένοι κειμενογράφοι και έχουν επιπλέον την Σελίδα 44 από 87

Page 45: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

δυνατότητα της άμεσης προβολής της κανονικής μορφής της σελίδας (π.χ

Expression Web) .

Τέλος υπάρχει η περίπτωση οι σελίδες που δημιουργούμε με την HTML να

παρουσιάζονται εντελώς διαφορετικές από διαφορετικούς φυλλομετρητές, που

τρέχουν σε διαφορετικούς υπολογιστές. Αυτό συμβαίνει γιατί οι διαφορετικοί αυτοί

φυλλομετρητές μπορεί να αντιστοιχίζουν διαφορετικά στυλ σε κάθε στοιχείο μιας

σελίδας.

3.2 Η ΤΕΧΝΟΛΟΓΙΑ XML

Η XML χρησιμοποιείται για την περιγραφή μίας σημειακής γλώσσας όπως της

γλώσσας HTML. Αποτελεί μία γλώσσα για την δόμηση δεδομένων και όχι μια

σημειακή γλώσσα. ‘Άρα δεν πρόκειται για μία γλώσσα αυτή κάθε αυτή, αλλά για

μία μετα- γλώσσα. Με την έννοια δομημένα δεδομένα εννοούμε μια συλλογή

στοιχείων δεδομένων όπως είναι για παράδειγμα τα λογιστικά φύλλα, οι κατάλογοι

διευθύνσεων, οι παράμετροι διαμόρφωσης, οι οικονομικές συναλλαγές και τα

τεχνικά σχέδια.

Η XML είναι ένα σύνολο κανόνων, ή αλλιώς ένα πακέτο κατευθυντήριων γραμμών,

για τον σχεδιασμό μορφών κειμένου οι οποίες διευκολύνουν την δόμηση των

δεδομένων μας. Δεν αποτελεί μια γλώσσα προγραμματισμού και για αυτό είναι

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

προγραμματισμού. Επιπλέον διευκολύνει τον υπολογιστή να παράγει δεδομένα,

να διαβάζει δεδομένα, και να εξασφαλίζει τη σαφήνεια της δομής των δεδομένων.

Η XML αποφεύγει τις συνήθεις παγίδες του σχεδιασμού γλωσσών, καθώς είναι

επεκτάσιμη, ανεξάρτητη του συστήματος υλικού. Ακόμη μπορεί να υποστηρίξει

διεθνείς και τοπικές προσαρμογές παρέχοντας έτσι την δυνατότητα σε

οποιαδήποτε γλώσσα προγραμματισμού να δημιουργεί και να επεξεργάζεται

δεδομένα στη μορφή αυτή.

Χρήση αυτής της τεχνολογίας κάνει και το World Wide Web με τις web Services

Εφαρμογές αλλά και τα RSS. Αποτελεί μία δομή ανταλλαγής περιεχομένου από

δικτυακούς τόπους βασισμένο στην γλώσσα XML.Την δυνατότητα της RSS

Σελίδα 45 από 87

Page 46: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

τεχνολογίας μας επιτρέπει να την εφαρμόσουμε και το Joomla μέσω των

επεκτάσεων (plug-ins). Πρόκειται για μία τεχνολογία που παρέχει την δυνατότητα

αποστολής πληροφοριών από μία ιστοσελίδα σε μία άλλη με αυτόματο τρόπο, με

την χρήση ειδικών API.

3.3 Η Γλώσσα Προγραμματισμού Javascript

Η JavaScript (JS) είναι μία scripting γλώσσα προγραμματισμού για ηλεκτρονικούς

υπολογιστές. Αποτελεί μία διερμηνευμένη γλώσσα όπου το script εκτελείται χωρίς

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

σεναρίων βασισμένη στα πρωτότυπα με μία σύνταξη απλή, επηρεασμένη από την

C. Παρόλο που η JavaScript αντιγράφει πολλά ονόματα από την java, δεν έχει

καμία απολύτως σχέση με αυτή τη γλώσσα προγραμματισμού, πέραν του πρώτου

συνθετικού του ονόματός της.

Με την βοήθεια της JavaScript παρέχεται η δυνατότητα να ρυθμίσουμε και να

αυτοματοποιήσουμε κατά κάποιον τρόπο την εκτέλεση κάποιων συγκεκριμένων

λειτουργιών, που εμείς έχουμε θέσει, μετά την πραγματοποίηση ορισμένων

ενεργειών. Για παράδειγμα την εμφάνιση κάποιας εικόνας όταν πατάμε ένα

συγκεκριμένο κουμπί.

Η JavaScript συντάσσεται με τις ετικέτες “ <script>………...</script> ”, οι

οποίες μας δηλώνουν που αρχίζει και που τελειώνει η JavaScript. Μέσα σε αυτές

τις ετικέτες χρησιμοποιούμε το όρισμα type για τον ορισμό της scripting γλώσσας

( δηλαδή κάπως έτσι <script type="text/javascript">) και μπορεί να τοποθετηθεί είτε

στο <head> κομμάτι είτε στο <body>. Ακόμη υπάρχει η δυνατότητα. Ο κώδικας

javascript μπορεί να γραφτεί και ξεχωριστά από το html αρχείο, ώστε ο κώδικας

να μπορεί να χρησιμοποιηθεί σε διαφορετικές σελίδες.

Η JavaScript χρησιμοποιεί (statements) εντολές – δηλώσεις οι οποίες ουσιαστικά

ενημερώνουν τον web browser τι να κάνει. Η JavaScript είναι μια απλή στη χρήση

και την λειτουργία της γλώσσα προγραμματισμού, αντικειμενοστραφούς στυλ, με

βασικές αρχές σχεδιασμού από τις Self και Scheme γλώσσες προγραμματισμού.

Σελίδα 46 από 87

Page 47: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Έχει ως κύρια λειτουργία την αύξηση των δυνατοτήτων των web σελίδων, αλλά

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

φυλλομετρητές, έγγραφα PDF κλπ.

Τέλος, η JavaScript αποτελεί μία case sensitive γλώσσα προγραμματισμού, οπότε

θα πρέπει να είμαστε πολύ προσεκτικοί με τον τρόπο που δηλώνουμε τα

statements, καλούμε τις μεταβλητές ή τις συναρτήσεις καθώς και η παραμικρή

λεπτομέρεια εδώ μετράει (π.χ πεζά ή κεφαλαία).

3.4 Η Τεχνολογία CSS

Τα διαδοχικά φύλλα CSS προέρχονται από το Cascading Style Sheets. Η CSS

αποτελεί μία γλώσσα υπολογιστή, που εισήχθηκε στην πορεία ανάπτυξης της

HTML και χρησιμοποιείται για τον έλεγχο εμφάνισης ενός εγγράφου γραμμένου σε

μία γλώσσα σήμανσης. Κάθε ιστοσελίδα που δημιουργούταν παλιότερα,

υποχρεούταν να διαμορφώσει τα στοιχεία της κάθε ιστοσελίδας ξεχωριστά, σε

κάθε μία ξεχωριστή. Η εμφάνιση του CSS ήρθε για να κάνει την ζωή μας πιο

εύκολη καθώς τώρα πλέον μπορούμε να κάνουμε τις ενδεχόμενες αλλαγές σε ένα

έγγραφο και να τις εφαρμόσουμε αυτόματα σε όλες τις υπόλοιπες σελίδες που

αυτό εμπεριέχεται.

Θα μπορούσαμε ακόμα να περιγράψουμε την CSS ως μία γλώσσα στυλ που

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

παρέχοντας περισσότερες δυνατότητες από την HTML. Η διαφορά της HTML με

την CSS έγκειται στο γεγονός ότι η πρώτη χρησιμοποιείται για να δομήσει το

περιεχόμενο, ενώ ή δεύτερη για να διαμορφώσει και να μορφοποιήσει το δομημένο

περιεχόμενο. Παρόλα αυτά πολλές από τις ιδιότητες που χρησιμοποιούνται

στα CSS είναι παρόμοιες μ’ αυτές της HTML.Η CSS λειτουργεί σε συνεργασία με

την HTML. Έτσι για να μπορέσει να διαχειριστεί και να εφαρμόσει κάποιος CSS

κώδικα στην ιστοσελίδα του θα πρέπει να διαθέτει οπωσδήποτε γνώσεις HTML.

Για την δημιουργία ενός CSS αρχείου απαιτείται ένας επεξεργαστής απλού

κειμένου ή κάποιο πρόγραμμα ειδικό για CSS. Τα αρχεία CSS που θα

δημιουργηθούν θα πρέπει να έχουν την κατάληξη « *.rss» . Η σύνταξή τους είναι

απλή αποτελούμενη από έναν επιλογέα, μία ιδιότητα και μία τιμή

Σελίδα 47 από 87

Page 48: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

«επιλογέας{ιδιότητα: τιμή}». Για παράδειγμα αν θέλουμε να εφαρμόσουμε μαύρο

χρώμα στα περιεχόμενα του «body» το εφαρμόζουμε ως εξής «body{color:black}».

H δυνατότητα εφαρμογής ενός CSS σε ένα HTML αρχείο γίνεται με πολλούς

τρόπους. Ο πιο συνηθισμένος είναι αυτός που εφαρμόζεται με την βοήθεια ενός

συνδέσμου (link) προς ένα εξωτερικό αρχείο φύλλου στυλ (external stylesheet).

Το CSS αποτέλεσε επανάσταση στον κόσμο του Web Design και φέρει μια σειρά

από πολλά πλεονεκτήματα, όπως, η ευκολότερη συντήρηση των ιστοσελίδων, πιο

ακριβή έλεγχο διάταξης ιστοσελίδων και το μικρότερο μέγεθος αρχείου. Για μια

όμορφη και καλοσχεδιασμένη ιστοσελίδα η χρήση CSS κρίνεται απαραίτητη.

4. Δημιουργία Δυναμικών ιστοσελίδων με την χρήση PHP/MYSQL

Οι πρώτες ιστοσελίδες δημιουργούνταν τοπικά στον υπολογιστή (σε γλώσσα

HTML) και ακολουθούσαν την τακτική ενός προγράμματος WYSIWYG ( What you

see is what you get) όπως το Adobe Dreamweaver. Κάθε φορά που γινόταν

οποιαδήποτε αλλαγή και ανανέωση στη σελίδα έπρεπε να ξανά φορτωθεί στο web

server. Με την πάροδο τον χρόνων και την εξέλιξη του διαδικτύου περάσαμε από

αυτές, τις στατικές ιστοσελίδες, στις δυναμικές ιστοσελίδες. Πλέον οι ιστοσελίδες

δεν δημιουργούνται τοπικά αλλά απευθείας σε έναν εξυπηρετητή web server.

4.1 Apache (Web Server)

Ένα σύστημα διακομιστή (server) λαμβάνει τις αιτήσεις των χρηστών και τις

εξυπηρετεί. Ένας από τους δημοφιλέστερους εξυπηρετητές ιστού είναι ο Apache

(ή Apache HTTP) server, καθότι λειτουργεί σε διάφορες πλατφόρμες όπως τα

Windows, το Linux , το Unix και το Mac Os X. Αναμένει διάφορες αιτήσεις από

διάφορα προγράμματα και τις εξυπηρετεί είτε  «σερβίροντας» τις σελίδες που

ζητούν είτε απευθείας μέσω μιας ηλεκτρονικής διεύθυνσης (URL) ή ενός

συνδέσμου (link). Ο Apache HTTP υποστηρίζει επίσης αρκετές διάσημες

εφαρμογές και γλώσσες προγραμματισμού όπως η MySQL, η PHP, η Python και

άλλες.

Οι περισσότεροι ιστότοποι του παγκόσμιου ιστού, χρησιμοποιούν τον Apache ως

εξυπηρετητή, υπάρχουν όμως κ άλλα αντίστοιχα προγράμματα, όπως το Microsoft

Σελίδα 48 από 87

Page 49: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Internet Information Services (IIS), ο Sun Java System Web Server, ο Zeus Web

Server κα.

4.2 PHP

Τα αρχικά της σημαίνουν Hypertext PreProcessor και αποτελεί μια πολύ

διαδεδομένη γλώσσα προγραμματισμού για τον σχεδιασμό και την δημιουργία

δυναμικών ιστοσελίδα στο διαδίκτυο. Αρχικά η ονομασία της ήταν PHP/FI και η

ύπαρξή της οφείλεται σε έναν φοιτητή τον Rasmus Lerdorf, που από την

δημιουργία ενός απλού script σε γλώσσα Perl, εμπλουτίστηκε με λειτουργίες

επεξεργασίας δεδομένων με SQL και σιγά-σιγά εξελίχθηκε στην σημερινή του

μορφή.

Επομένως η PHP Αποτελεί μια scripting γλώσσα προγραμματισμού, δηλαδή μια

γλώσσα συγγραφής σεναρίων, η οποία ενσωματώνεται μέσα στον κώδικα της

HTML και εκτελείται από τον server. H PHP σε αντίθεση με την HTML πρώτα

αναλύεται και μετά στέλνει το παραγόμενο αποτέλεσμα στον client (πελάτη). Αυτή

η γλώσσα σεναρίων μπορεί να θέσει ερωτήματα σε βάσεις, να συνδεθεί

απομακρυσμένα σε υπολογιστές , να δημιουργήσει εικόνες, να διαβάσει και να

γράψει αρχεία και γενικά παρέχει άπειρες δυνατότητες.

H σύνταξη της PΗP έχει επηρεαστεί σε μεγάλο βαθμό από την C, την Java και την

Perl. Διαθέτει όμως και δικά της μοναδικά χαρακτηριστικά. Τα αρχεία γραμμένα σε

php γλώσσα προγραμματισμού θα πρέπει να έχουν κατάληξη (*.php ή *.php4 ή

*.phtml).

Σελίδα 49 από 87

Page 50: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Εικόνα 24 PHP η Χρήση του

4.3 MySQL Database

Με την εμφάνιση των βάσεων δεδομένων, ο χρήστης πλέον μπορεί να ανανεώσει

τα δεδομένα άμεσα και εύκολα χωρίς την ανάγκη δημιουργίας τυποποιημένων

αρχείων. Με την ενσωμάτωσή τους στις ιστοσελίδες, ο χρήστης μπορεί να

διαχειρίζεται ολοένα και περισσότερα δεδομένα και του δίνεται επιπλέον και η

δυνατότητα ενσωμάτωσης εικόνων, βίντεο, αρχείων pdf κλπ στην ιστοσελίδα του.

Υπάρχουν πολλές διαφορετικές βάσεις δεδομένων, κάθε μία απ τις οποίες έχει τα

δικά της ιδιαίτερα χαρακτηριστικά και δυνατότητες. Στην προκειμένη περίπτωση θα

ασχοληθούμε με την MySQL.

H MYSQL είναι η πιο διαδεδομένη βάση δεδομένων που χρησιμοποιείται και στο

web. Αποτελεί την πιο δημοφιλή βάση δεδομένων ανοιχτού λογισμικού και

χρησιμοποιείται ακόμα και από πολλούς από τους μεγαλύτερους και πιο ραγδαία

αναπτυσσόμενους οργανισμούς για την εξοικονόμηση χρόνου και χρήματος.

Εξαιτίας της υψηλής απόδοσής της, της αξιοπιστίας της και της ευκολίας χρήσης

της μετρά πάνω από 10 εκατομμύρια εγκαταστάσεις. Η MySQL φορτώνεται σε

έναν διακομιστή (server) παρέχοντας έτσι την δυνατότητα των πολλαπλών

συνδέσεων των χρηστών.

Για να ξεκινήσει μία διαδικτυακή συναλλαγή βάσεων δεδομένων ο web browser

ενός χρήστη κάνει μια HTTP αίτηση για μια συγκεκριμένη διαδικτυακή σελίδα την

οποία λαμβάνει ο Apache Server. Ο διαδικτυακός εξυπηρετητής (Apache)

Σελίδα 50 από 87

Page 51: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

ανακαλεί το αρχείο και το περνά στη μηχανή PHP για επεξεργασία και ανάλυση

του script. Η PHP δημιουργεί μια σύνδεση με το MySQL διακομιστή (server) και

στέλνει το κατάλληλο ερώτημα. Ο διακομιστής το λαμβάνει, το επεξεργάζεται και

στέλνει τα αποτελέσματα πίσω στη μηχανή PHP. Τέλος η PHP επιστρέφει την

τελική HTML σελίδα στον web διακομιστή (Apache Server).

Εικόνα 25 WAMP Apache, MySQL, PhP

4.4 PhpMyAdmin

Το phpMyAdmin αποτελεί το πιο γνωστό και περισσότερο χρησιμοποιούμενο

σύστημα διαχείρισης βάσεων δεδομένων MySQL μέσω web browser. Είναι ένα

σύνολο αποτελούμενο από php scripts γραμμένο με τη γλώσσα προγραμματισμού

PHP, που μας βοηθά να διαχειριζόμαστε τις βάσεις δεδομένων που έχουμε στο

web. Το phpMyAdmin μπορεί να διαχειρίζεται από απλές βάσεις δεδομένων μέχρι

ένα ολόκληρο MySQL server. Το λογισμικό, το οποίο είναι διαθέσιμο σε 72

γλώσσες, συντηρείται από το phpMyAdmin έργου.

Ενδεικτικά οι δυνατότητες που προσφέρει το συγκεκριμένο σύστημα διαχείρισης

βάσεων δεδομένων είναι οι ακόλουθες.

Δυνατότητα διασύνδεσης στο Web

Διαχείριση βάσεων δεδομένων MySQL (δημιουργία, διαγραφή)

Υποστηρίζει MySQLi, μια βελτιωμένη επέκταση της MySQL

Εισαγωγή δεδομένων από CSV και SQL

Εξαγωγή των δεδομένων σε διάφορες μορφές όπως CSV, SQL, XML, PDF

και των υπολογιστικών φύλλων, το Word, το Excel, LaTeX και άλλα

Η χορήγηση πολλαπλών servers

Δημιουργία γραφικών PDF της διάταξης βάσης δεδομένων

Δυνατότητα πραγματοποίησης σύνθετων αναζητήσεων χρησιμοποιώντας

το Query-by-Example (QBE)

Σελίδα 51 από 87

Page 52: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Δυνατότητα αναζήτησης σε παγκόσμιο επίπεδο σε μια βάση δεδομένων ή

ένα υποσύνολο αυτό

Παροχή Ζωντανών διαγραμμάτων για την παρακολούθηση της

δραστηριότητας του διακομιστή MySQL, όπως για παράδειγμα τις

συνδέσεις, τις διαδικασίες, CPU / χρήση της μνήμης, κλπ

Σελίδα 52 από 87

Page 53: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

ΜΕΡΟΣ ΙΙ (Υλοποίηση Πρακτικού Μέρους)

5. Δημιουργία Της Ιστοσελίδας .

Σε όλα τα προηγούμενα κεφάλαια αναλύσαμε τι είναι ένα σύστημα διαχείρισης

περιεχομένου, ποια από αυτά τα συστήματα κυριαρχούν στην αγορά. Έπειτα

αναλύσαμε τι είναι το Joomla (ένα από τα ισχυρότερα CMS της αγοράς)και τι

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

ήρθε η στιγμή να εφαρμόσουμε το πρακτικό κομμάτι της πτυχιακής αυτής

εκμεταλλευόμενοι όλες τις δυνατότητες και τις τεχνολογίες που παρέχονται από

αυτή την εφαρμογή

5.1. Εγκατάσταση τη ελληνικής Γλώσσας

Το Joomla 2.5 έχει σαν default γλώσσα από την εγκατάστασή του την Αγγλική. Σε

αυτό το σημείο θα επιχειρήσουμε την εισαγωγή της ελληνικής γλώσσας και θα

αναλύσουμε την διαδικασία αυτής. Θα εγκαταστήσουμε και θα ενεργοποιήσουμε

την ελληνική γλώσσα ώστε τόσο το περιβάλλον της ιστοσελίδας (Front-End) όσο

και η περιοχή διαχείρισης (Back-End) να εμφανίζεται στα ελληνικά.

Κάνοντας download το συμπιεσμένο αρχείο από την σχετική ιστοσελίδα

μεταβαίνουμε στην περιοχή του «Extension Manager» ώστε να κάνουμε το αρχείο

upload πατώντας στο «Upload Package File». Μας εμφανίζεται το μήνυμα “Install

package was successful” ενημερώνοντας μας πως το αρχείο εγκαταστάθηκε με

επιτυχία.

Έπειτα μεταβαίνουμε στο Language Manager από το μενού Extensions. Στην

καρτέλα Installed-Site (αφορά το Front-End), βλέπω ότι υπάρχει στην λίστα και η

ελληνική γλώσσα πλέον. Την επιλέγω και την θέτω ως default. Πλέον η

προκαθορισμένη γλώσσα είναι η ελληνική. Το ίδιο μπορώ να εφαρμόσω και για

την περιοχή Back-End μεταβαίνοντας στην επόμενη καρτέλα και ακολουθώντας

την ίδια διαδικασία.

5.2. Επιλογή και εγκατάστασή του κατάλληλου template

Σελίδα 53 από 87

Page 54: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Θα πρέπει αρχικά να κάνουμε ένα σχεδιάγραμμα του site που θέλουμε να

υλοποιήσουμε, με την διάταξη και την μορφοποίηση του. Έτσι θα γνωρίζουμε

πάνω κάτω τι απαιτήσεις έχει η ιστοσελίδα μας πράγμα που θα μας βοηθήσει στην

ευκολότερη εύρεση του προτύπου (Template) που θα εφαρμόσουμε. Για την

εύρεση του κατάλληλου για εμάς template θα προσέξουμε να κάνουμε αναζήτηση

με βάση την πλατφόρμα Joomla 2.5 .

Η διαδικασία της εγκατάστασης και της εφαρμογής ενός template είναι πολύ απλή,

και περιγράφεται μέσα σε 3 βήματα ακολούθως.

Βήμα 1ο. Αφού επιλέξουμε και κατεβάσουμε το template που μας ενδιαφέρει

πηγαίνουμε στο φάκελο «Υπολογιστής μου» μέσα στον C:, ακολουθώντας την

διαδρομή « c/wamp/www/newsite/templates» και κάνουμε επικόλληση τον φάκελο

του template που κατεβάσαμε νωρίτερα.

Εικόνα 26 Extension Manager - Upload Template

Βήμα 2ο. Έπειτα επιστρέφουμε στο Back End περιβάλλον διαχείρισης, πηγαίνουμε

Σελίδα 54 από 87

Page 55: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

στο Extension Manager για να εισάγουμε και να φορτώσουμε το template μας

μέσω του “Upload Package file”, που βρίσκεται στον φάκελο που τοποθετήσαμε

προηγουμένως. Να σημειωθεί ότι σε κάποιες περιπτώσεις, όταν το μέγεθος του

Template ξεπερνά τα 2MB η εισαγωγή γίνεται μέσω του “Install from directory” που

βρίσκεται πιο κάτω και κάνουμε “paste” την διαδρομή που βρίσκεται ο φάκελός

μας. Σε αυτήν την περίπτωση όμως θα πρέπει προηγουμένως να έχουμε

αποσυμπιέσει τον φάκελό μας.

Βήμα 3ο. Επιστρέφοντας πάλι πίσω στο Template manager ορίζουμε ως default το

template που μόλις ανεβάσαμε. Έτσι κάνοντας μια φόρτωση του Front End

περιβάλλον μας , παρατηρούμε ότι η σελίδα μας έχει αλλάξει στο template που

ορίσαμε. Από εκεί και έπειτα μπορούμε αν θέλουμε να εφαρμόσουμε κάποιες

βελτιώσεις και τροποποιήσεις στο υπάρχον template μέσα από τα εργαλεία του

joomla ώστε να προσαρμόσουμε την ιστοσελίδα σύμφωνα με τις δικές μας

απαιτήσεις .

Επιπλέον πέρα από την δυνατότητα φόρτωσης ενός έτοιμου template υπάρχει και

η δυνατότητα δημιουργίας και διαμόρφωσης δικού μας template. Αυτό μπορεί να

επιτευχθεί με την βοήθεια ξεχωριστών προγραμμάτων αυτοματισμού (design Web)

που δημιουργούν πρότυπα (templates) που καθορίζουν την εμφάνιση και τον

τρόπο παρουσίασης της ιστοσελίδας μας. Ένα τέτοιο πρόγραμμα είναι το Artisteer

ή το Joomla creator. Στην προκειμένη περίπτωση χρησιμοποιήσαμε ένα τέτοιο

πρόγραμμα για να φτιάξουμε το πρότυπο που προσεγγίζει καλύτερα τις δικές μας

απαιτήσεις. Οι εικόνες (slider) και ή Επικεφαλίδα (Header) προσαρμόστηκαν μέσα

από αυτό το πρόγραμμα για την καλύτερη διευκόλυνση μας.

5.3. Προσαρμογή του Template

Σελίδα 55 από 87

Page 56: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Αφού εγκαταστήσουμε με επιτυχία το Template μας πηγαίνουμε στο “Template

Manager” ώστε να περάσουμε όλες της παραμέτρους του Template στο site μας

και έπειτα να επιχειρήσουμε να το μορφοποιήσουμε κατάλληλα. Αυτή η διαδικασία

ολοκληρώνεται αφού επιλέξουμε το κουμπί “ Import Content Item Templates”.

Επιλέγοντας να πατήσουμε αυτό το κουμπί περνάνε όλα τα περιεχόμενα και τα

στοιχεία του προτύπου στο site μας. Ο μόνος λόγος που το κάνουμε αυτό είναι

επειδή η επικεφαλίδα της Ιστοσελίδας μας θέλουμε να είναι έτσι όπως την

προσαρμόσαμε κατά την δημιουργία του προτύπου (μαζί με τις εικόνες και ο

κείμενο).

Εικόνα 27 Template Manager - Edit Style

Αν Θέλουμε να δούμε την προεπισκόπηση του site μας ακολουθούμε την

διαδρομή «Extensions/Template Manager» και στην στήλη Template πατάω

πάνω στο δικό μας πρότυπο. Στην παρακάτω εικόνα φαίνεται η προεπισκόπηση

του προτύπου μας.

Σελίδα 56 από 87

Page 57: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Εικόνα 28 Προεπισκόπηση του Template μας

5.4. Διαμορφώνοντας τα περιεχόμενα της ιστοσελίδας

Αρχικά επιχειρούμε να μορφοποιήσουμε κατάλληλα το Περιεχόμενο της αρχικής

μας σελίδας για να το πετύχουμε αυτό πηγαίνουμε στο Μενού “Content/Article

Manager” στην περιοχή του Back-End.

Παρατηρούμε ότι μας εμφανίζει μία λίστα με διάφορα articles, ψάχνω να βρω το

article «HOME» με την βοήθεια της επιλογής «Select Category» όπου επιλέγω να

μου εμφανίσει μόνο τα άρθρα “Articles”. Έπειτα εισέρχομαι στο Article “Home”

όπου το μορφοποιώ με την βοήθεια του επεξεργαστή κειμένου και το τροποποιώ

όπως φαίνεται παρακάτω. Ο επεξεργαστής κειμένου μας βοηθά να

δημιουργήσουμε κείμενο, να το διαμορφώσουμε, να εισάγουμε εικόνες ακόμα και

νέα άρθρα μέσα σε ένα άρθρο. ‘Έτσι με την βοήθεια αυτού του επεξεργαστή

διαμορφώσαμε το περιεχόμενο μας όπως φαίνεται παρακάτω.

2.2

Εικόνα 29 Διαμόρφωση Περιεχομένου Αρχικής Σελίδας

Σελίδα 57 από 87

Page 58: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Να σημειωθεί επιπλέον ότι τα “widgets” twitter, facebook κλπ περάστηκαν

αυτόματα από το Template μας. Παρόλα αυτά λειτούργησαν σαν απλές εικόνες

αφού όταν πατούσε κανείς πάνω τους δεν εκτελούσαν καμία λειτουργία. Έτσι

δημιουργήσαμε μια υπερσύνδεση για αυτά τα widgets επιλέγοντάς τα και

πατώντας στο κουμπί της υπερσύνδεσης στον επεξεργαστή κειμένου και

τοποθετώντας τα κατάλληλα links.

5.5. Διαμόρφωση του “Top Horizontal Menu”

Για να εισάγω ένα καινούριο μενού ή αλλιώς μία καινούρια καρτέλα στο “Top

Menu” του site μου ακολουθώ την διαδρομή “Menus/Content Horizontal Menu” και

πατάω στο εικονίδιο +NEW. Θα μου εμφανιστεί μία καινούρια καρτέλα όπου θα

μπορέσουμε να διαμορφώσουμε κατάλληλα το καινούριο μας μενού.

Κάπου εδώ θα πρέπει να σημειωθεί ότι η σωστή τακτική είναι να δημιουργούμε

πρώτα το Category Article έπειτα το Article δηλαδή το περιεχόμενο με το οποίο θα

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

ώρα να δημιουργήσουμε το νέο μας μενού (νέα καρτέλα στο Horizontal menu) θα

παρατηρήσουμε ότι θα πρέπει να συμπληρώσουμε την επιλογή Alias. Αυτή η

επιλογή συνδέει το όνομα του άρθρου με το αντίστοιχο μενού. Οπότε πρώτα

προχωράω με την δημιουργία του άρθρου μου.

Αφού έχουμε ολοκληρώσει την δημιουργία του σχετιζόμενου άρθρου ακολουθούμε

την παρακάτω διαδικασία για την δημιουργία του νέου μας μενού που θα σχετίζεται

Σελίδα 58 από 87

Page 59: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

με το άρθρο μας. Αρχικά θα πρέπει να επιλέξουμε τι τύπου αρχεία θα φιλοξενεί

στην προκειμένη περίπτωση επιλέγω “Single Articles”.

Εικόνα 30 Menu Manager –Type Menu

Στο από κάτω πλαίσιο συμπληρώνω το όνομα που θα έχει το νέο μου μενού και

έπειτα συμπληρώνω το πλαίσιο Alias. Το πλαίσιο Alias είναι το όνομα που θα

χρησιμοποιήσει το Joomla εάν έχουμε επιλέξει να ενεργοποιήσουμε τις ρυθμίσεις

SEO.

Σελίδα 59 από 87

Page 60: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Εικόνα 31 Menu Manager - Edit Menu

Στο πλαίσιο Link βλέπουμε όλη την διαδρομή του συνδέσμου. Από την επιλογή

του Status δηλώνουμε την κατάσταση του στοιχείου του κειμένου, δηλαδή αν θα

είναι δημοσιευμένα (Published), μη δημοσιευμένα (unpublished) ή διαγραμμένα

(Trashed). Επιπλέον από την επιλογή Access μπορώ να καθορίσω σε ποιο

επίπεδο χρηστών θα είναι ορατό. Παρακάτω μου δίνεται η δυνατότητα να επιλέξω

από που θα ξεκινάει το νέο μου μενού , αν θα ξεκινάει από το “root” δηλαδή θα

είναι στο βασικό Horizontal Menu, ή θα είναι κάποια υποκατηγορία ενός μενού .

Έπειτα από τα required Settings επιλέγουμε το άρθρο με το οποίο θα συνδεθεί.

Γενικά η δημιουργία και η διαχείριση του μενού είναι κάτι απλό.

5.6. Δημιουργία άρθρων

Για την δημιουργία ενός νέου άρθρου, πηγαίνω στο Article Manager από το μενού

Content . Έπειτα πατάω στην επιλογή +New και μου ανοίγει το παρακάτω

παράθυρο όπου θα διαμορφώσω κατάλληλα το νέο μου άρθρο.

Αρχικά δίνω ένα όνομα για το άρθρο μου στο πλαίσιο Title και έπειτα Σελίδα 60 από 87

Page 61: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

συμπληρώνω αν θέλω το alias στην περίπτωση που έχω ενεργοποιήσει τις

ρυθμίσεις SEO.Από την αναδιπλούμενη λίστα Category επιλέγουμε σε ποια

κατηγορία θα ανήκει το άρθρο. Στην προκειμένη περίπτωση επιλέγουμε το

Articles.Έπειτα το Status το θέτουμε ως published εφόσον θέλουμε να δημοσιευτεί

το περιεχόμενο του άρθρου. Έπειτα μορφοποιούμε με την βοήθεια του

επεξεργαστή κειμένου το περιεχόμενο μας.

Εικόνα 32 Article Manager-Δημιουργία νέου άρθρου

6. Extensions που Εγκαταστάθηκαν

Όπως αναφέραμε σε προηγούμενα κεφάλαια τα extensions είναι από τα

βασικότερα στοιχεία που διαθέτει το Joomla. Με την βοήθειά τους μπορούμε να

επεκτείνουμε το site μας με εφαρμογές και επιπρόσθετες λειτουργίες. Στην αγορά

υπάρχουν πάρα πολλά extensions που μπορούμε να κατεβάσουμε είτε δωρεάν

είτε επί πληρωμή. Extensions για editors (επεξεργαστές κειμένου),extension

modules για διαχείριση φωτογραφιών, module slidershow, extensions Header Σελίδα 61 από 87

Page 62: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

editors είναι μερικά από τα αμέτρητα extensions που υπάρχουν στην αγορά.Τέτοια

extensions μπορούμε να βρούμε στο ακόλουθο site. (

Εικόνα 33 Extensions Site for Joomla

Όλες οι επεκτάσεις είναι σε συμπιεσμένη μορφή και η διαδικασία εγκατάστασής

τους είναι η ίδια ανεξάρτητα από το τι θέλουμε να εγκαταστήσουμε. Βασική

προϋπόθεση είναι ότι οι φάκελοι στους οποίους προορίζονται οι επεκτάσεις μας

πρέπει να είναι εγγράψιμοι. Οι φάκελοι αυτοί είναι /modules, /plugins,

/languages, /components, /templates.

6.1. JCE Content Editor - Επεξεργαστής Κειμένου

Σελίδα 62 από 87

Page 63: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Ο επεξεργαστής κειμένου (ή editor) είναι ένα γραφικό εργαλείο που είναι

ενσωματωμένο στο Back-End περιβάλλον διαχείρισης της ιστοσελίδας. Οι

επεξεργαστές κειμένου βοηθούν τον διαχειριστή να εισάγει ηλεκτρονικό υλικό

(κείμενο, φωτογραφίες, βίντεο κλπ) με απλό και γρήγορο τρόπο. Οπτικά, μοιάζει

πολύ με προγράμματα επεξεργασίας κειμένου (όπως το Word) και τα εικονίδια του

είναι γνώριμα έτσι ώστε η εισαγωγή και η επεξεργασία κειμένου να είναι εύκολη και

απλή. Γενικά ο επεξεργαστής κειμένου περιέχει τις βασικότερες και συνήθεις

ενέργειες που μπορούν να πραγματοποιηθούν κατά την κατασκευή μιας

ιστοσελίδας.

Εικόνα 34 Tiny MCE basic (Default) Editor

Ο προκαθορισμένος επεξεργαστής κειμένου για το Joomla 2.5 είναι ο “Tiny MCE”.

Αποτελεί τον κλασσικό επεξεργαστή κειμένου με πολύ βασικές δυνατότητες

επεξεργασίας διαμόρφωσης, όπως είναι η διαμόρφωση της γραμματοσειράς

(bold/italic/underline) , παραγράφου (στοίχιση, λίστα, στυλ), αλλά και δυνατότητα

μορφοποίησης μέσω κώδικα HTML και άλλα.

Μια καλή εναλλακτική επιλογή αποτελεί το plug-in (πρόσθετα) JCE editor που

παρέχει ακόμα περισσότερα εργαλεία επεξεργασίας κειμένου. Το συγκεκριμένο

plug-in το κατεβάσαμε από το site ( www. joomlacontenteditor.com.net ) .Κάποια

βασικά Χαρακτηριστικά που διαθέτει ο JCE και τον κάνει τόσο δημοφιλή Σελίδα 63 από 87

Page 64: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

επεξεργαστή κειμένου είναι τα παρακάτω.

Είναι δωρεάν! Μας παρέχει ορθογραφικό έλεγχο. Μας επιτρέπει να μεταφέρουμε αρχεία απευθείας στο συντάκτη κειμένου χωρίς να τα φορτώσουμε με το χέρι (Drag & Drop). Μας δίνει ακόμα την δυνατότητα να φορτώσουμε και βίντεο στο περιεχόμενο μας.

Εικόνα 35 JCE Text Editor

Αφού το κατεβάσουμε πάμε από το περιβάλλον διαχείρισης στο μενού Extensions

και πατάμε Extensions Manager όπου από εκεί το κάνουμε upload.Στη συνέχεια

πάμε στo μενού plug-ins που βρίσκεται πάλι στην περιοχή extensions και

ενεργοποιούμε το JCE editor αν δεν είναι ήδη enable. Έπειτα για να δούμε το

panel του JCE editor και να κάνουμε οποιαδήποτε επιπλέον ρύθμιση θέλουμε

πάμε από τα Components στο JCE editor.

Για να εφαρμόσουμε και να θέσουμε τον συγκεκριμένο editor ως τον επεξεργαστή

κειμένου που θα χρησιμοποιείται στο περιβάλλον διαχείρισης πάω από το μενού

site στο Global Configuration και στην καρτέλα site θέτω ως default editor τον JCE

Σελίδα 64 από 87

Page 65: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

editor.

Εικόνα 36 Global Configuration-Set Default Editor

Υπάρχουν και άλλοι editors στην αγορά που διατίθενται είτε δωρεάν είτε επί

πληρωμή και βοηθούν στην καλύτερη επεξεργασία κειμένου παρέχοντας μια

ενισχυμένη βιβλιοθήκη εργαλείων παρέχοντας ακόμη περισσότερες δυνατότητες

στον διαχειριστή. Μια εξίσου καλή εναλλακτική επιλογή είναι και ο editor JCE editor

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

έναν καινούριο επεξεργαστή κειμένου μπορεί να επεκτείνει την λειτουργία του ήδη

υπάρχον (tiny MCE) πηγαίνοντας στο Plug-in Manager από το μενού Extensions,

πατάμε στο tinyMCE και στο πλαίσιο Basic options θέτουμε το Functionality ως

Extended.

6.2. Simple Image Gallery- Γκαλερί εικόνων

To simple image gallery αποτελεί ένα δωρεάν plug-in για την διαχείριση και την

Σελίδα 65 από 87

Page 66: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

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

εργαλείο που μας βοηθάει να εκθέσουμε τις εικόνες μας. Αφού κατεβάσουμε το

αρχείο και το φορτώσουμε από το Extension Manager, πηγαίνουμε στην περιοχή

των plug-ins Manager και εισέρχομαι μέσα στο συγκεκριμένο plug-in για να το

ενεργοποιήσω.

Έπειτα πηγαίνω στο μενού Content και επιλέγω το Media Manager. Εκεί

βρίσκονται οι φάκελοι που θα δημιουργήσω με τις αντίστοιχες εικόνες

Εικόνα 37 Media Manager - Δημιουργία φακέλων και Εισαγωγή εικόνων

Για την δημιουργία του καινούριου μου φακέλου γράφω το όνομα του φακέλου μου

στο πλαίσιο και πατάω New Folder. Έπειτα από την “Επιλογή Αρχείων” εισάγω τις

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

εικόνων στο φάκελό μου πάω στο αντίστοιχο άρθρο απ’ οπού θα προβάλλονται.

Εκεί καθορίζω σε ποίο ακριβώς σημείο μες στο άρθρο θέλω να προβληθούν οι

εικόνες μου, γράφοντας την εξής σημείωση {gallery}myphotos{/gallery}.

Σελίδα 66 από 87

Page 67: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Εικόνα 38 Article Manager- Insert Image Gallery

Επιστρέφοντας στο Front-End περιβάλλον μπορώ να δω τo αποτέλεσμα των

εικόνων και πώς αυτές φαίνονται στην ιστοσελίδα μου. Μια προεπισκόπηση της

γκαλερί των εικόνων μου φαίνεται παρακάτω.

6.3. SlideShow CK- Διαφάνειες Εικόνων

Σελίδα 67 από 87

Page 68: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Το Slideshow CK είναι ένα module extension. Τα modules είναι αντικείμενα μέσα

στα οποία μπορούμε να εμφανίσουμε πληροφορίες. Η θέση τους καθορίζεται από

το αρχείο index ενώ το στυλ της εμφάνισής τους από το CSS αρχείο του

προτύπου. Έτσι και εδώ μέσα σε αυτό το module- αντικείμενο θα επιχειρήσουμε να

προσθέσουμε εικόνες, να τις διαμορφώσουμε κατάλληλα με τις δυνατότητες που

μας παρέχει το συγκεκριμένο εργαλείο ώστε να δημιουργήσουμε μία σειρά από

διαφάνειες εικόνων.

Αφού κατεβάσουμε το σχετικό αρχείο και το φορτώσουμε μέσα από το Media

Manager, πηγαίνουμε στο Module Manager.

Εικόνα 39 Module Manager-Edit Slideshow CK

Αρχικά πηγαίνω στην καρτέλα Slide Manager απ’ όπου θα περάσω τις εικόνες που

με ενδιαφέρουν μία-μία από τον φάκελο ή αν θέλω μπορώ να δώσω την url

διεύθυνση μίας εικόνας που βρίσκεται στο διαδίκτυο. Επιπλέον μπορώ να δώσω

Σελίδα 68 από 87

Page 69: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

την περιγραφή και τον τίτλο κάθε εικόνας, καθώς θα εμφανιστούν και αυτά στην

προβολή των διαφανειών.

Ακόμα μου δίνεται η δυνατότητα αν θέλω να εισάγω και κάποιο βίντεο από το

κουμπί Video options. Η επιλογή “Article options” μου δίνει την δυνατότητα να

επιλέξω το όνομα του σχετιζόμενου άρθρου που θέλω να εμφανίζεται και αυτό

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

εμφανίζεται η κάθε εικόνα, στην προκειμένη περίπτωση δεν το συμπληρώνουμε.

Εικόνα 40 SlideShow Ck- Edit Slide Manager

Στη συνέχεια μεταβαίνουμε στην καρτέλα “Styles options” απ όπου θα

καθορίσουμε το μέγεθος, και την διάταξη των εικόνων και γενικότερα του slider,

εμείς το καθορίσαμε όπως φαίνεται παρακάτω. Επιπλέον καθορίζουμε τον τύπο

Σελίδα 69 από 87

Page 70: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

πλοήγησης , αν θα επιτρέπεται το “Loader icon” και σε τι μορφή κλπ.

Εικόνα 41 Module Manager-Slideshow Editor -Styles Options

Έπειτα μεταβαίνουμε στην καρτέλα “Effects options” και την διαμορφώνουμε όπως

παρακάτω.

Εικόνα 42 Module Manager-Slideshow Editor- Styles Options

Τώρα ήρθε η ώρα να δώσουμε ένα όνομα στο module μας. Θα πρέπει να

δώσουμε ένα όνομα που να μην υπάρχει ήδη καθώς κάθε ένθεμα (module) θα

πρέπει να έχει ένα μοναδικό όνομα για να μην μπερδεύεται με τα άλλα. Μπορούμε

να επιλέξουμε από την επιλογή “Show Title” αν θέλουμε να εμφανίζεται ο τίτλος

Σελίδα 70 από 87

Page 71: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

μας. Στην θέση position γράφω « position-13» οπού προσδιορίζεται έτσι το σημείο

στο οποίο θα τοποθετηθεί το slideshow μας. Έπειτα θέτω το Status μου ως

“Published” και στο ordering επιλέγω το ίδιο module μου.

Εικόνα 43 Module Manager- Edit Slideshow ck-Details

Τέλος μεταβαίνω στην καρτέλα «Menu Assignment» και θέτω το module

Assignment σε “Only to selected pages” και έπειτα επιλέγω το άρθρο στο οποίο

θέλω να εμφανίζεται. Έτσι το slideshow που δημιουργήσαμε θα εμφανίζεται μόνο

στο συγκεκριμένο μενού στην θέση που του ορίσαμε. Βέβαια αυτή η θέση

«position – 13 δεν υπάρχει έτοιμη από το template, δεν έχει καθοριστεί ακόμα. Το

επόμενο και τελευταίο βήμα είναι να πάμε να την καθορίσουμε εμείς.

Στη συνέχεια μεταβαίνουμε στο άρθρο που μας ενδιαφέρει και στο οποίο θα

εισάγουμε την θέση του “Slideshow” μας. Πηγαίνουμε ακριβώς στο σημείο που

θέλουμε να εμφανιστεί και θέτουμε αυτό το σημείο ως position -13 γράφοντας το

Σελίδα 71 από 87

Page 72: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

εξής {loadposition position-13}

Εικόνα 44 Article Manager – Insert/set position of slideshow

Έπειτα μεταβαίνοντας στο Front-End μπορούμε να δούμε πώς θα εμφανιστεί η

διαφάνεια εικόνων που δημιουργήσαμε.

Εικόνα 45 Front-End Σιροπιαστά

6.4. CSS gallery

Το CSS gallery αποτελεί και αυτό ένα plug-in. Κάνει περίπου την ίδια δουλειά που

κάνει και το “Simple Image gallery” μόνο που διαφέρει λιγάκι στην τελική μορφή

Σελίδα 72 από 87

Page 73: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

του και στην διάταξη των εικόνων. Η βασική του φιλοσοφία όμως είναι η ίδια.

Κατεβάζουμε το αρχείο, το οποίο διατίθεται δωρεάν και το φορτώνουμε μέσα από

το Extension Manager. Έπειτα μεταβαίνουμε στο plug-in Manager και επιλέγουμε

το CSS gallery. Στην καρτέλα που θα εμφανιστεί διαμορφώνουμε της ρυθμίσεις

όπως παρακάτω αφού θέσουμε το Status ως “Enable”.

Εικόνα 46 Module Manager -CSS Gallery

Στη συνέχεια μεταφερόμαστε στο Media Manager από το μενού content όπου θα

δημιουργήσουμε τον φάκελο και θα εισάγουμε τις εικόνες που θα περιέχονται στο

CSS gallery.

Αφού δημιουργήσουμε τον φάκελο και εισάγουμε τις εικόνες πάμε στο article οπού Σελίδα 73 από 87

Page 74: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

θα εμφανιστεί αυτή η γκαλερί των εικόνων. Πηγαίνουμε ακριβώς στο σημείο που

θέλουμε να εμφανιστεί το “CSS gallery” και γράφουμε {becssg}myfolder{/becssg}.

Εικόνα 47 Article Manager - Show CSS gallery tags

Εικόνα 48 Front-End - CSS gallery

6.5. Embed Google Map

Το Embed Google Map είναι ένα plug-in ου μας βοηθά να εισάγουμε το γνωστό

Google map στην σελίδα μας. Με αυτό το plug-in έχουμε την δυνατότητα να

Σελίδα 74 από 87

Page 75: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

ενσωματώσουμε και παραπάνω από ένα “google maps” στο άρθρο μας. Η

ενσωμάτωση και η εισαγωγή του χάρτη είναι πολύ απλή, προσθέτουμε απλά την

διεύθυνση ή τις συντεταγμένες από την τοποθεσία μας μέσα σε tags. Μπορούμε

επίσης να προσδιορίσουμε τη έκδοση του Google Maps( Google Maps, Google

Maps Classic, Google Maps Embed API), το είδος του χάρτη (κανονικός,

δορυφορικός, υβριδικός κλπ), το μέγεθος του χάρτη, τη γλώσσα του Google Map

interface αλλά και το επίπεδο του ζουμ που θέλουμε να έχει.

Αφού ολοκληρώσουμε με τις ρυθμίσεις, μεταβαίνουμε στο άρθρο όπου θα

εμφανίζεται το plug-in μας και γράφουμε {google_map}address{/google_map}. Για

την ακρίβεια εμείς συμπληρώσαμε  

{google_map}40.257693, 23.213791{/google_map}                

{google_map} 40.250779, 23.249015{/google_map}

Σελίδα 75 από 87

Page 76: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Εικόνα 49 Article Manager- Insert Google Maps

Με αυτόν τον κώδικα επιδιώξαμε την εισαγωγή διπλού χάρτη έναν για κάθε

κατάστημα. Τις συντεταγμένες τις βρήκαμε από το Google maps πληκτρολογώντας

την διεύθυνση πχ. Παραλία Φλογητών.

Εικόνα 50 Google Maps

Σελίδα 76 από 87

Page 77: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

7. Θέματα Ασφάλειας.

Αδιαμφισβήτητα το Joomla αποτελεί μια από της πιο δημοφιλής πλατφόρμες

διαχείρισης περιεχομένου (CMS). Είναι όμως και ο αγαπημένος στόχος των

Hackers καθώς είναι πολύ ευάλωτη και παρουσιάζει πολλά κενά ασφαλείας. Οι

αδυναμίες αυτές οφείλονται στα αμέτρητα plug-ins που δεν δίνουν ιδιαίτερη

έμφαση στην ασφάλεια, αλλά και σε επιθέσεις στο διαχειριστικό κομμάτι της

εφαρμογής. Παρόλα αυτά όμως ας μην ξεχνάμε ότι το Joomla αποτελεί μία «open

source» πλατφόρμα διαχείρισης περιεχομένου. Σε ένα ανοιχτό λογισμικό οι

δοκιμές στην ασφάλεια γίνονται από πολλούς αφού όλοι έχουν πρόσβασή στον

κώδικα, και άρα είναι πιο ασφαλές από άλλα εμπορικά cms. Παρακάτω

παραθέτονται κάποιες συμβουλές για την καλύτερη ασφάλεια του site μας.

7.1. Χρησιμοποιήστε Ασφαλή Κωδικό και όνομα χρήστη

Οι περισσότεροι χρήστες συχνά χρησιμοποιούν το προκαθορισμένο admin-admin

για όνομα χρήστη και κωδικό πρόσβασης αντίστοιχα, κάτι που η πλειοψηφία των

crackers θα το περιμένει. Έτσι θα πρέπει να δημιουργήσουμε έναν ασφαλή κωδικό

αποτελούμενο τουλάχιστον από 8 χαρακτήρες που θα συμπεριλαμβάνει γράμματα,

αριθμούς και ειδικούς χαρακτήρες-σύμβολα.

Εικόνα 51 User Manager

Αν εξαρχής δεν το προβλέψαμε ποτέ δεν είναι αργά για αλλαγή. Μεταβαίνοντας

στο διαχειριστικό κομμάτι της εφαρμογής μας πηγαίνουμε στο μενού “User

Σελίδα 77 από 87

Page 78: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Manager” , όπου στην καρτέλα users μας εμφανίζεται o “Super User”. Μέσα σε

αυτήν θα ξανά θέσουμε τόσο το όνομα χρήστη όσο και τον κωδικό πρόσβασης.

Εικόνα 52 Control Panel - User Manager

Εικόνα 53 User Manager-Edit Profile

7.2. Τακτικό Backup του Joomla site μας!

Πριν κάνουμε οιαδήποτε ενέργεια αναβάθμισης, θα πρέπει οπωσδήποτε να

Σελίδα 78 από 87

Page 79: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

κάνουμε ένα back-up της ιστοσελίδας μας. Έπειτα θα πρέπει να κάνουμε τακτικά

back-up , κρατώντας ένα ασφαλές αντίγραφο για την δυνατότητα επαναφοράς της

ιστοσελίδα μας σε περίπτωση κινδύνου.

Για την δημιουργία αντιγράφου ασφαλείας στο site μας θα πρέπει να

δημιουργηθούν αντίγραφα για 2 βασικά κομμάτια, την βάση δεδομένων και τα

αρχεία. Η διαδικασία αυτή μπορεί να γίνει χειροκίνητα μέσω του CPanel αν το

υποστηρίζει ο server ειδάλλως θα πρέπει να χρησιμοποιήσουμε έναν FTP client

όπως ο Filezilla.

Επίσης μια κατάλληλη εφαρμογή για αυτή την περίπτωση είναι το “Akeeba

backup”. Η εφαρμογή αυτή μας επιτρέπει την επαναφορά του αντιγράφου σε

οποιονδήποτε server υποστηρίζει το Joomla και το οποίο περιέχει όλα τα αρχεία

της ιστοσελίδας, τα περιεχόμενα της βάσης δεδομένων καθώς και όλη την δομή

της ιστοσελίδας. Το extension αυτό διατίθεται δωρεάν όμως υπάρχει και μία

εμπορική έκδοση με περισσότερες δυνατότητες. Να σημειωθεί επίσης ότι το

Akeeba backup έχει δημιουργηθεί από έναν Έλληνα προγραμματιστή, τον Νικόλα

Διονυσόπουλο.

Αφού φροντίσουμε να κατεβάσουμε την σωστή έκδοση του “Akeeba backup” που

είναι συμβατή με την έκδοση του Joomla μεταβαίνουμε στο “Extension Manager”

για την φόρτωση του συμπιεσμένου αυτού αρχείου. Μετά την εγκατάστασή του

τρέχουμε το Configuration wizard, ένα πρόγραμμα που θα προσπαθήσει να

εντοπίσει τις καταλληλότερες ρυθμίσεις για αυτό το extension. Η διαδρομή που

ακολουθούμε είναι Components/Akeeba backup/Configuration wizard. Είναι

σημαντικό να ελέγξουμε από τις ρυθμίσεις στο Basic Configuration ότι θα τραβήξει

και τα αρχεία του (Filesystem) και την βάση δεδομένων, και έπειτα επιλέγουμε σε τι

μορφή θα αποθηκευτεί το backup (JPA ή ZIP)

Στην συνέχεια μεταβαίνουμε από μενού Components στο Akeeba backup και

πατάμε backup now. Αφού ολοκληρωθεί η διαδικασία του Backup πηγαίνουμε στο

Administer backup files και το κατεβάζουμε στον υπολογιστή μας.

7.3. Συχνά Update της Εφαρμογής Joomla αλλά και των Extension.

Σελίδα 79 από 87

Page 80: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Θα πρέπει να ενημερώνουμε συχνά με Update την εφαρμογή μας και να την

αναβαθμίζουμε στην τελευταία έκδοση που υπάρχει. Αυτό επιβάλλεται διότι κάθε

νέα έκδοση διορθώνει τα κενά ασφαλείας της προηγούμενης παρέχοντας μας

μεγαλύτερη ασφάλεια και αποτρέποντας πιθανές παραβιάσεις. Συνήθως ανα δύο

μήνες κυκλοφορεί μια νέα έκδοση του Joomla, οπότε θα πρέπει να

επισκεπτόμαστε συχνά την σχετική ιστοσελίδα ώστε να κατεβάσουμε την νεότερη

έκδοση. Καλό θα είναι βέβαια να μην ενημερώνουμε την καινούρια έκδοση αμέσως

αλλα αφότου περάσει μία βδομάδα από την ημέρα της κυκλοφορίας της. Αυτό γιατι

θα πρέπει να δείτε τα σχόλια των ανθρώπων που την δοκίμασαν για να

ενημερωθούμε για το κατά πόσο αποδοτική είναι και αν προέκυψαν κάποια

προβλήματα. Θα πρέπει πάντα όμως πριν υλοποιήσουμε οποιοδήποτε Update να

κρατήσουμε backup της σελίδας μας.

7.4. Αφαίρεση μη χρησιμοποιούμενων επεκτάσεων

Συχνά για να δοκιμάσουμε και να συγκρίνουμε τα διάφορα Extension που

κυκλοφορούν στην αγορά τα εγκαθιστούμε στην εφαρμογή μας. Όμως υπάρχει

κίνδυνος κάποια παλιά έκδοση ενός extension που κάποτε εγκαταστήσαμε και

τώρα δεν χρησιμοποιούμε πια, να δημιουργήσει προβλήματα στο site μας. Αυτό

γιατί πολλοί περνούν την ώρα τους προσπαθώντας να ανακαλύψουν τρύπες-

αδυναμίες στο λογισμικό, που όσο παλιότερο είναι τόσο πιο ευάλωτο θα είναι. Αν

αφαιρέσουμε τις άχρηστες και αχρησιμοποίητες επεκτάσεις μειώνουμε σημαντικά

τον κίνδυνο να παραβιαστεί η ιστοσελίδα μας από κάποιο επιτήδειο χάκερ.

Η διαδικασία απεγκατάστασης μίας επέκτασης είναι πολύ εύκολη υπόθεση.

Μεταβαίνοντας στο Extension Manager επιλέγουμε την καρτέλα “Manage”.

Επιλέγουμε τότε τον τύπο της επέκτασης που θέλουμε να απεγκαταστήσουμε (οι

επιλογές είναι μεταξύ των (Components, Files, Modules, Plugins, Languages και

Templates). Αφού επιλέξουμε αυτό που θέλουμε να απεγκαταστήσουμε

τσεκάροντας το checkbox στα αριστερά, πατάμε το κουμπί Uninstall που βρίσκεται

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

εφαρμογή μας δεν μπορεί να εκτελέσει την διαδικασία της απεγκαταστασης θα

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

σε κάποιο πρόβλημα της εφαρμογής, και αν συμβαίνει κάτι τέτοιο θα πρέπει να

Σελίδα 80 από 87

Page 81: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

επικοινωνήσουμε με τους διαχειριστές της extension εφαρμογής.

7.5. Αλλαγή προθέματος της βάσης δεδομένων

Θα πρέπει να αλλάξουμε το default prefix της Βάσης Δεδομένων αποτρέποντας

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

για εκδόσεις προηγούμενες της (1.7). Στις επόμενες εκδόσεις απ αυτήν

αποθηκεύεται ένα τυχαίο random πρόθεμα. Η αλλαγή του prefix (jos_) σε κάτι άλλο

είναι πολύ εύκολο να πραγματοποιηθεί μέσα από το Back-end περιβάλλον

διαχείρισης της Joomla εφαρμογής μας. Από το “Global Configuration” του μενού

site επιλέγουμε την καρτέλα “Server” και από το “DataBase Settings” αλλάζουμε το

πρόθεμα στο “Database Table”. Στην προκειμένη περίπτωση το prefix μας είναι

ήδη αλλαγμένο αφού πρόκειται για έκδοσή νεότερη του (1.7). Η αλλαγή στο prefix

μπορεί να γίνει και μέσω από το FTP στον κεντρικό φάκελο root με την

τροποποίηση του αρχείου “configuration.php”

Εικόνα 54 Global Configuration-Server-Database Settings

7.6. Προστασία Αρχείων

Η προστασία του φακέλου administrator κρίνεται απαραίτητη, διότι μέσω κάποιον

κακόβουλων προγραμμάτων μπορεί να παραβιαστεί το διαχειριστικό μας

περιβάλλον. Θα πρέπει να υπάρχει ελεγχόμενη και περιορισμένη πρόσβαση στον

φάκελο administrator, και να προφυλάσσεται με κάποιον κωδικό. Αυτό μπορεί να Σελίδα 81 από 87

Page 82: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

γίνει μέσω του “Control Panel” του hosting του site μας. Στη συνέχεια για να

αποκλείσουμε την πρόσβαση σε όλους σε αυτόν τον φάκελο, εξουδετερώνοντας

οποιαδήποτε επίθεση, επιλέγουμε «Password Protected Directories» και «Find a

Directory to Password Protect». Μετά από αυτήν την διαδικασία ενδέχεται κάποια

plugins και components να μην λειτουργούν σωστά. Αυτό συμβαίνει επειδή αυτά τα

extension είχαν πρόσβαση στον φάκελοadministrator και πιθανός

χρησιμοποιούσαν αρχεία από αυτόν τον φάκελο. Όποτε η επόμενη κίνηση θα είναι

είτε να τα απεγκαταστησουμε είτα να μην χρησιμοποιήσουμε το password protect

στο Joomla site μας.

7.7. Χρήση .htaccess αρχείου

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

χρήστες την μεταφόρτωση εκτελέσιμων αρχείων, στους φακέλους temp και

images, και την χρήση αυτών με τέτοιο τρόπο ώστε να βλάψουν την ιστοσελίδα

μας θα πρέπει να προβούμε σε κατάλληλες ενέργειες. Θα πρέπει να

δημιουργήσουμε ένα αρχείο κειμένου με τη ονομασία “ .htacces”, ένα όνομα

αρχείου που αρχίζει με τελεία. Και να προσθέσουμε τον παρακάτω κώδικα.

«AddHandler cgi-script .php .php4 .php5 .php6 .pl .py .htm .html .shtml .sh .cgi

Options –ExecCGI»

Ουσιαστικά μετονομάζουμε το αρχείο htaccess.txt σε .htaccess. Περά του mod

rewrite για sef url υπάρχει μέσα και κώδικας που ασφαλίζει την σελίδα μας. Στη

συνέχεια μεταφορτώνουμε αυτό το αρχείο στους φακέλους temp και images, έτσι

ώστε τα αρχεία αυτά να καθίστανται μη εκτελέσιμα πλέον.

7.8. Απόκρυψη της διαχειριστικής σελίδας

Η περιοχή σύνδεσης του διαχειριστή είναι ευάλωτη και μπορεί εύκολα να πέσει σε

κίνδυνο. Για αυτόν τον λόγο θα πρέπει να αλλάξουμε το url του administrator.

Μπορούμε να αλλάξουμε το link ης μορφής domain/administrator/kati, όπου στο

“kati” μπορούμε να τοποθετήσουμε μία δικιά μας λέξη. Υπάρχουν διάφορα

extensions που μπορούν να βοηθήσουν όπως το JLSecure My Site , Admin tools

Σελίδα 82 από 87

Page 83: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

pro, Secure Authentication κ.λ.π.

7.9. Χρήση σωστού CHMOD (δικαιώματα) για κάθε φάκελο και αρχείο

Θα πρέπει να αποδοθούν τα σωστά δικαιώματα σε κάθε φάκελο και αρχεία

φακέλων. Δεν θα πρέπει σε καμία περίπτωση τα αρχεία και οι φάκελοι να έχουν

δικαιώματα 777. Τα δικαιώματα που αφορούν τα αρχεία .php θα πρέπει να είναι

644 και των φακέλων 755. Για το αρχείο configuration.php τα δικαιώματα καλό θα

είναι να είναι 444, και όταν θα θέλουμε να πραγματοποιήσουμε οποιεσδήποτε

αλλαγές σε αυτό το αρχείο μπορούμε να το ξανά αλλάξουμε σε 644 μέχρι να

ολοκληρωθούν οι αλλαγές μας και τα επαναφέρουμε ξανά σε chmod 444.

Μπορούμε να δούμε τα “permissions” που υπάρχουν στο site μας από το μενού

Site/System information. Αν θέλουμε να αλλάξουμε τα δικαιώματα για κάποιο

αρχείο τότε θα το κάνουμε μέσα από το cPanel μεταβαίνοντας στο File Manager,

του FTP.

7.10. Επιλογή αξιόπιστου hosting provider.

Σελίδα 83 από 87

Page 84: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Η επιλογή του κατάλληλου “Hosting” εξαρτάται από κάποια κριτήρια που ανάλογα

με τις απαιτήσεις του καθενός αλλάζουν ιεραρχία. Αρχικά θα πρέπει να

τσεκάρουμε πως τα χαρακτηριστικά που μας παρέχει η εταιρία καλύπτουν τις

απαιτήσεις της ιστοσελίδας μας. Tο εύχρηστο περιβάλλον διαχείρισης με όλες τις

δυνατότητες και η δυνατότητα για άμεσο back-up είναι καποια από τα απαραίτητα

χαρακτηριστικά που θα πρέπει να διαθέτει

Έπειτα θα πρέπει να βεβαιωθούμε ότι η εταιρία που θα υποστηρίζει το hosting

είναι αξιόπιστη σε ότι αφορά το web server και το uptime χρόνο. Θα είναι άσχημο

για τους επισκέπτες να μην λειτουργεί η σελίδα, ελαττώνοντας έτσι την

επισκεψιμότητα της σελίδας μας. Επιπλέον πολύ σημαντικό κομμάτι αποτελεί η

υποστήριξη που θα μας παρέχεται, το πόσο γρήγορα και αποτελεσματικά θα

αποκρίνονται σε τυχόν πρόβλημα.

Βέβαια σημαντικό κριτήριο στην επιλογή κάποιου host παίζει και το κόστος.

Συνήθως αυτό είναι που κοιτάζουν πρωτίστως όσοι κάνουν έρευνα αγοράς, το

οποίο θα πρέπει να εξετάζεται σε συνδυασμό με τις δυνατότητες και τα

χαρακτηριστικά που προσφέρουν τα πακέτα.

8. Εγκατάσταση σε Web Server

Για την εγκατάσταση του Joomla site μας σε πραγματικό Web server θα πρέπει να

διαθέτουμε ένα «Domain Name» και έναν «Web server». Τα πιο διαδεδομένα

Σελίδα 84 από 87

Page 85: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

συστήματα διαχείρισης Web server είναι το Plesk και το CPanel. Αφού βρούμε τον

κατάλληλο παροχέα και αποκτήσουμε την δική μας σελίδα και τους σχετικούς

κωδικούς συνδεόμαστε είτε στο σύστημα Plesk είτε στο Cpanel με τους κωδικούς

αυτούς πληκτρολογώντας συνήθως «https://mydomain.gr:8443». Εκεί μέσα

δημιουργώ μιας νέας βάσης δεδομένων (MySQL), καθώς και έναν νέο χρήστη

ολοκληρώνοντας την διαδικασία σε ότι αφορά την δημιουργία της διαδικτυακής

μας βάσης.

Στη συνέχεια θα πρέπει να κάνουμε χρήση ενός προγράμματος FTP client όπως

το FileZilla. Μέσα από εκεί θα περάσουμε τα αρχεία της Joomla εφαρμογής μας

καθώς και το εξαγόμενο κομμάτι της βάσης δεδομένων. Αφού ανοίξουμε το FTP

πρόγραμμα μεταβαίνουμε στον «Διαχειριστή τοποθεσιών» και εισάγουμε μια νεα

τοποθεσία καθώς και τους σχετικούς κωδικούς του παροχέα. Μετά την σύνδεση

μεταφέρω τα σχετικά αρχεία από τον τοπικό υπολογιστή μου στον διαδικτυακό

server. Επιπλέον δημιουργώ ένα αρχείο configuration.php μέσω ενός text pad και

το μεταφέρω και αυτό στην διαδικτυακή βάση, το οποίο θα περιέχει τις

πληροφορίες της βάσης δεδομένων.

Εικόνα 55 FTP Client (FileZilla)- Add new location

9. Συμπεράσματα

Σελίδα 85 από 87

Page 86: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

Το εργαλείο Joomla είναι ένα open-source λογισμικό διαχείρισης περιεχομένου και

ένα ισχυρό μέσον για την ανάπτυξη εφαρμογών διαδικτύου. Ως ανοιχτού

λογισμικού εφαρμογή είναι ανεξάρτητη από τον εκάστοτε κατασκευαστή , και ο

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

πράγμα που δεν συμβαίνει με τα εμπορικά cms.

Είναι ένα εργαλείο αρκετά εύκολο στην διαχείριση του με πολλές δυνατότητες και

αξιόλογα και αμέτρητα extensions που κάνουν την ιστοσελίδα μας ακόμα πιο

εμφανίσιμη και επαγγελματική. Διαθέτει επίσης μια μεγάλη και συνεχώς

αναπτυσσόμενη κοινότητα που φροντίζει για την ασφάλεια και την λειτουργικότητά

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

CMS στον κόσμο και μπορεί να υπερηφανεύεται για πάνω από 30 εκατομμύρια

downloads μέχρι σήμερα . Δεν είναι τυχαίο που μεγάλοι οργανισμοί και

εκπαιδευτικά ιδρύματα στηρίχτηκαν σε αυτό το εργαλείο για την ανάπτυξη της

ιστοσελίδας του

Σε μια περίοδο όπου η οικονομική κρίση επηρεάζει τις μικρομεσαίες επιχειρήσεις ,

η επέκτασή τους στο διαδίκτυο μέσω του ηλεκτρονικού εμπορίου, μπορεί να

αποτελέσει μια ένεση βοήθειας, και άνοιγμα για νέες αγορές. Με την βοήθεια

εξειδικευμένων προγραμμάτων web development εφαρμογών γίνεται εύκολη η

παρουσία και η προβολή τους στο διαδίκτυο. Εν κατακλείδι κερδισμένες είναι οι

επιχειρήσεις που θα αξιοποιήσουν το διαδίκτυο.

ΒΙΒΛΙΟΓΡΑΦΙΑ

http://www.apache.org

http://www.bretteleben.de/lang-en/joomla/

Σελίδα 86 από 87

Page 87: Ανάπτυξη Διαδικτυακής Εφαρμογής με την πλατφόρμα Joomla

http://blogs.sch.gr/nikmichailidis/archives/2459

http://el.wikipedia.org

http://docs.joomla.org/

http://forum.joomla.gr/

http://www.joomplus.gr/

http://www.kagialaris.me/en/tutorials/item/13-security-tips-joomla

http://www.mysql.com

http://www.observatory.gr

http://www.onscreen.gr/

http://www.opensoft.gr/category/baseis-dedomenon-databases

http://pacific.jour.auth.gr/content_management_systems/joomla.htm

http://www.php.net

http://www.papaki.gr/blog/

http://www.w3schools.com

http://zagis.net/apache-web-server/

Σελίδα 87 από 87