SharePoint biedt een schat aan out-of-the-box mogelijkheden om informatie vast te leggen en te presenteren. In de praktijk blijven veel van deze mogelijkheden echter netjes ingepakt. Dat heeft in het ergste geval tot gevolg dat het SharePoint platform als een soort sub-optimale harde schijf dient, met als doekje voor het bloeden dat toegang wat gemakkelijker in te regelen valt. Dit artikel beschrijft inrichtingshandelingen waarmee informatie geclassificeerd en gepresenteerd kan worden, zonder extra handelingen voor degenen die SharePoint gebruiken om hun informatie in op te slaan.
Het centrale idee is, voordat mensen met SharePoint gaan samenwerken, eerst gezorgd wordt dat functionaliteiten binnen SharePoint met elkaar samenwerken. Dit kan bereikt worden met vier groepen handelingen:
[listdot]
- Zorg dat SharePoint pagina’s en documenten voorzien zijn van categorie- en presentatie velden (roll-up image en rating velden).
- Zorg dat deze velden voorzien worden van standaardwaarden, zodat in het dagelijks gebruik nieuw materiaal automatisch van de juiste catagorisering wordt voorzien.
- Regel de zoekmachine zo in, dat deze velden geïndexeerd worden.
- Toon op de portal pagina’s zoekresultaten, zodat wat gemaakt is ook zichtbaar wordt.
[/listdot]
Een voorbeeld van wat hiermee bereikt wordt, wordt in de onderstaande afbeelding getoond. Het zijn zoekresultaten van nieuwspagina’s en startpagina’s van siteverzamelingen.
De vorm waarin dit idee, is dat van een walkthrough waarmee in SharePoint een concept omgeving gecreëerd wordt die geen impact mag hebben op bestaande site verzamelingen.
Boodschappenlijst
Om de stappenplan uit te kunnen voeren, zijn de volgende zaken nodig.
[listdot]
- SharePoint Server: SharePoint Foundation biedt niet de functionaliteiten die gebruikt gaan worden.
- Farm admin rechten
Het stappenplan zelf ziet er als volgt uit.
Configuratie
Na deze handelingen zijn de volgende zaken ingeregeld:
[listdot]
- Alle siteverzamelingen die aangemaakt worden, bevatten direct content typen voor documenten, pagina’s en artikel pagina’s met taxonomy en rating velden.
- Alles wat wordt gemaakt, is met drie handelingen weer te verwijderen:
- Delete de aangemaakte Metadata Service Application (“Delete data associated with the Service Applications” aanvinken).
- Delete de aangemaakte Search Service Application (“Delete data associated with the Service Applications” aanvinken).
- Delete de aangemaakte web applicatie (zowel de database als de IIS web site meeverwijderen).
[/listdot]
Verbeteringen
Bovenstaande stappen zijn de meest basale. Het voert te ver om dit in dit artikel in detail te beschrijven, maar aanvullende stappen maken het helemaal af:
[listdot]
- Gebruik een eigen proxygroup in plaats van “custom”. Deze is (alleen) aan te maken met powershell commando New-SPServiceApplicationProxyGroup
- Plaats service site collecties in een eigen managed path (/general/search, /general/cthub, /general/rms, /general/bcs).
- In plaats van een teamsite template gebruik ik liever een blank site als startpunt. Daarbij moet echter met PowerShell de TaxonomyFieldAdded feature worden geactiveerd.
- In de walkthrough wordt één item category veld aangemaakt. Een splitsing in site category voor startpagina’s, news category voor artikelpagina’s en document category werkt in de praktijk beter.
- Alle handelingen worden beschreven vanuit de beheerschermen. Deze handelingen zijn, indien de toegang dat toestaat, met PowerShell geautomatiseerd uit te voeren.
*) De reden om naast het ingebouwde Rollup Image nog een eigen site kolom toe te voegen, is dat dit veld niet door de zoekmachine wordt geindexeerd, waardoor deze informatie niet beschikbaar is in de zoekresultaat webparts.
Demo content
Na deze handelingen zijn de volgende zaken ingeregeld:
[listdot]
- Een samenwerkings siteverzameling waarin alle content automatisch van de juiste meta data wordt voorzien.
- Een portal voorbeeld waarin startpagina’s, artikelen en documenten op basis van vaste queries gepresenteerd worden. Deze items kunnen in andere sitecollecties en in andere webapplicaties staan. De zoekresultaten zijn security trimmed, dus iedereen ziet alleen de items waartoe zij geautoriseerd zijn.
In praktijksituaties waarbij een document of pagina meerdere “dimensies” heeft, kan over elke as een presentatiescherm worden gemaakt. Bijvoorbeeld als een organisatie afdelingen heeft verdeeld over meerdere landen, kunnen items getoond worden van een land (over afdelingen heen) of van een afdeling (over landen heen) of van een specifieke afdeling in een specifiek land.
1. Maak een samenwerkingsite
[listdot]
- Start SharePoint 2010 Central Administration
- Kies “Create Site collections” link
- Kies als url “/sites/publicaties”
- Kies als template “teamsite”
- Na creatie, open de site
- Stel standaardwaarden van de site kolommen Item Rollup Image en Item Category in (de waarde maakt niet uit, maar daarmee zie je dat alle nieuwe content correct getagd wordt)
- Activeer onder Site Collection Administration de publicatie infrastrucuur (site actions, site collection features)
- Activeer onder Site Actions de publicatie infrastrucuur (site actions, site features)
- Voeg Showcase Page en Showcase Article toe aan de contenttypen van de Pages bibliotheek, maak Showcase Article het standaard inhoudstype.
- Voeg Showcase Document toe als standaard content type in Documents en Shared Documents. Hiervoor moet je eerst onder Advanced Settings de optie Allow management of content types op “Yes” zetten.
- Stel onder “Site actions, Master pages and page layouts” in dat ArticleLeft.aspx de associated content type Showcase Article gebruikt en BlankWebPartPage de associated content type Showcase Page gebruikt. Deze wijziging moet zowel ingecheckt als approved worden.
- Stel onder “Site actions, Page layouts and site templates” in dat (Showcase Article) Image on left de standaard page layout wordt.
- Maak in bibliotheek Pages een nieuwe pagina aan op basis van Showcase Page. Noem de url “default”.
- Met edit properties, check dat de categorie automatisch gevuld is en geef de pagina een rating.
- Check de pagina in als versie 1.0, open de pagina en stel deze met behulp van het lint in als home page.
[/listdot]
2. Configureren Search
[listdot]
- Ga naar SharePoint 2010 Central Administration start pagina
- Kies “Manage service applications” link
- Selecteer de regel van de Search service application en kies “Manage”.
- Check in de content sources dat de service application de juiste webapplicatie doorzoekt.
- Start een full crawl
- Zodra deze crawl gereed is, kunnen we de managed properties instellen met de link “Metadata Properties”. Maak een nieuwe managed properties:
- ItemCategory (tekst) en map deze naar de crawled property ows_ItemCategory
- ItemRollupImage (tekst) en map deze naar de crawled property ows_ItemRollupImage
- ItemContentType (tekst) en map deze naar de crawled properties Basic:5(Tekst) en ows_ContentType
- ItemPublishingPageContent (tekst) en map deze naar de crawled property ows_PublishingPageContent
- ItemPublishingPageLayout (tekst) en map deze naar de crawled property ows_PublishingPageLayout
- ItemRating (decimal) en map deze naar ows_AverageRating **)
- ItemRatingCount (integer) en map deze naar ows_RatingCount **)
- Start een full crawl.
[/listdot]
3. Aanmaken Portal Site
[listdot]
- Start SharePoint 2010 Central Administration
- Kies “Create Site collections” link
- Kies als url “/”
- Kies als template “teamsite”
- Na creatie, open de site
- Activeer onder Site Collection Administration de SharePoint Server Standard Site Collection features (site actions, site collection features)
- Upload bijgesloten xsl file naar /Style Library/XSL Style Sheets/ItemSearchResults.xsl
- Vervang de tekst op de startpagina door een Core Search Results webpart.
- In de Core Results in de sectie Display Properties, voeg de properties uit de vorige sectie toe:
<Column Name=”ItemContentType”/><Column Name=”ItemCategory”/><Column Name=”ItemRollupImage”/><Column Name=”ItemPublishingPageContent”/><Column Name=”ItemPublishingPageLayout”/><Column Name=”ItemRating”/><Column Name=”ItemRatingCount”/> - In de sectie Results Query Options bepaal je wat gezocht moet worden. Op basis van de taxonomy kunnen hier alle documenten, (start-)pagina’s en artikelen getoond worden. Voorbeelden die je kunt gebruiken voor “Append tekst to Query” zijn:
- ItemContentType=”showcase document”
- ItemContentType=”showcase page”
- En om de boel er aardig uit te laten zien, stel je onder Miscellaneous een link in naar het XSL bestand /Style Library/XSL Style Sheets/ItemSearchResults.xsl die de zoekresultaten vormgeven.
[/listdot]
Verbeteringen
1. In plaats van een teamsite template gebruik ik ook hier liever een blank site als startpunt. Daarbij moet echter met PowerShell de TaxonomyFieldAdded feature worden geactiveerd.
2. Alle handelingen worden beschreven vanuit de beheerschermen. Deze handelingen zijn, indien de toegang dat toestaat, met PowerShell geautomatiseerd uit te voeren.
**)De ows_Rating velden zijn mogelijk niet direct beschikbaar omdat een timer job bepaalt wanneeer de statistieken worden bijgewerkt. In dat geval kunnen deze handelingen later alsnog worden uitgevoerd. Daarna moet ook de full crawl opnieuw worden uitgevoerd.