Sharepoint farmınızın
Shared Services Provider yönetim konsolu aracılığı ile
Active Directory'de yer alan profil bilgilerini sistemimize import edebileceğimizi ve aynı yönetim konsolundaki
"Search Settings" menüsü aracılığı ile de import ettiğimiz profil bilgilerinin daha sonra yapılacak aramalarda kullanıcıların karşısına çıkabilmesi için indexlenebileceğini biliyoruz.
Import ettiğimiz ve indexlediğimiz bu profil bilgileri ne yazıkki
Sharepoint'in kişi arama (people search) ekranlarında sadece belirlenmiş kolonlar itibariyle görüntülenir. Örneğin AD'de yer alan IP Phone, Manager gibi bilgileri import etmişsinizdir ancak bu bilgileri search sonuçlarında görüntüleyemezsiniz. Daha doğru bir ifadeyle görüntüleyebilirsiniz ama sadece bu bilgileri aradığınızda.
Mesela bir kullanıcının yöneticisi olan "Serdar Kılıç" bilgisini aradığınızda arama hizmeti karşınıza bununla ilgili sonucu çıkarır, ama siz kullanıcıyı aradığınızda özel bir property olarak "Serdar Kılıç" bilgisi karşınıza gelmez.
İşte bu aşamada search sonuçlarına istediğiniz bu özel bilgiyi de ekleyebilmek için search result page'in XSLT'sine müdehale etmeniz gerekmektedir.
İş adımlarını şöyle sıralayabiliriz :
- Sharepoint'te people search için yaratılmış olan sonuç sayfasına (peopleresultpage.aspx yada siz hangi ismi verdiyseniz) gidin.
- Burada "search box" webpartının yanındaki dropdown menüyü açarak "Modify Shared Web Part" linkini tıklayın.
- Burada "Properties" seçeneğini açın ve içerisine şu satırı ekleyin.
<Property Name="NewProp" ManagedName="NewProp" ProfileURI="urn:schemas-microsoft-com:sharepoint:portal:profile:NewProp"/>
- Şimdi "Core Result" webpartı için aynı düzenleme işlemini yapın ve burada yer alan "Selected Columns" özelliğinde yer alan herhangi bir property'i kopyalayıp kendi yarattığınız property i de bunlar gibi bir kolon olarak ekleyin.
- Son olarak "Data View Properties" butonunu tıklayın ve burada yer alan XSL'in en altındaki görüntülenecek kolonlar listesine aşağıdaki satırı ekleyin
<xsl:value-of select="newprop"/>
- OK butonunu tıkladığınızda webpartın hata verdiğini göreceksiniz, önemsemeyin ve sayfayı publish edin.
- Şimdi yaptığınız aramayı tekrarlayın, sonucun içerisinde eklediğiniz kolon bilgisinin de görüntülendiğini göreceksiniz.
Önemli Not 1 : Bu işlemi gerçekleştirmeden önce lütfen düzenleme yaptığınız XSL'lerin yedeğini aldığınızdan emin olun.
Önemli Not 2 : Genellikle sistem adminleri tarafından yapılan custom property mapping işlemi esnasında admin tarafından "I", "ı", "İ", "i" gibi problem çıkarabilecek harfler kullanılmış olabilir. Bu durumda doğru alan adını çağırdığınızdan emin olun.
Önemli Not 3 : Yeni profil property nin eklenmesinin ardından yeni bir profile import ve search indexing işlemi yapın.
Önemli Not 4 : Şayet işlem esnasında bir problem yaşıyorsanız ve eklediğiniz property görünmüyorsa 2. maddeyi hatırlayın :)