Από το screenshot υποψιάζομαι ότι μιλάς για SharePoint 2007. Η έκδοση έχει μεγάλη σημασία για το πως θα κάνεις το customization, τα προβλήματα όμως παραμένουν τα ίδια.
Παρότι το sharepoint τρέχει σε ASP.NET δεν είναι ένα τυπικό ASP.NET application. Το "web template" δεν υπάρχει με την έννοια που νομίζεις. Είναι ένα σετ από xml που καθορίζουν τί θα μπει μέσα στο site. Ακόμα και αν το αλλάξεις, δεν αλλάζουν τα sites που έχουν ήδη φτιαχτεί.
Έτσι κι αλλιώς όμως, τα περισσότερα πράγματα μπορείς να τα κάνεις μέσω administration και δεν υπάρχει λόγος να πειράζεις τα templates. Για την ακρίβεια, το 80% όσων θέλεις να κάνεις γίνονται από το administration και κώδικας ASP.NET χρειάζεται σε ελάχιστες εξαιρέσεις.
Για την ακρίβεια,
Επιπλέον, ΔΕΝ μπορείς ΟΥΤΕ πρέπει να γράψεις ASP.NET κώδικα μέσα σε μία σελίδα SharePoint. Ο σημαντικότερος λόγος είναι η ασφάλεια. Κατά κανόνα, στην σελίδα επιτρέπεται να βάλεις controls, javascript, xslt και γενικά πράγματα που δεν θα δημιουργήσουν πρόβλημα στην εκτέλεση του site.
Αν θέλεις να προσθέσεις κάποιο καινούριο menu item θα πρέπει να το κάνεις μέσω των administration pages. Αν θέλεις να προσθέσεις κάτι άλλο, θα πρέπει να αλλάξεις το master page του site και, είτε να προσθέσεις τον κώδικα που θέλεις (controls ή javascript δηλαδή, όχι χύμα κώδικα) σε ένα ήδη υπάρχον placeholder, ή θα γεμίσεις κάποιο Placeholder που δεν έχει ακόμα χρησιμοποιηθεί. Το SharePoint χρησιμοποιεί συγκεκριμένους placeholders για να δείξει τα διάφορα κομμάτια μίας σελίδας αλλά τα διάφορα master pages που περιέχει δεν χρησιμοποιούν απαραίτητα όλα τα placeholders.
Αν τα παραπάνω ακούγονται "κινέζικα", c'est le SharePoint. Χρειάζεται να διαβάσεις αρκετά πριν αρχίσεις να δουλεύεις με αυτό, καθώς χρησιμοποιεί τεχνολογίες που συνήθως δεν χρησιμοποιούνται σε one-off web sites. Δεν μπορείς όμως να τα παρακάμψεις χωρίς να καταστρέψεις το site ή να προκαλέσεις μία τόσο τραγική κατάσταση που θα πρέπει να ξαναφτιαχτεί από την αρχή.
Θα βρεις μία καλή σειρά από blog posts που περιγράφουν τα Master Pages του Sharepoint
εδώ. Ειδικά το
Major functional areas of SharePoint interface περιγράφει τα διάφορα τμήματα της οθόνης, τα Placeholders στα οποία αντιστοιχούν και πως να τα τροποποιήσεις.
Παναγιώτης Καναβός, Freelancer
Twitter: http://www.twitter.com/pkanavos