PowerShell kullanarak İçerik Türünü SharePoint'te yayımlama
İçerik türünün Yönetilen Meta Veri Hizmeti uygulamasını kullanan diğer tüm site koleksiyonlarında kullanılabilmesini sağlamak için, bir SharePoint site koleksiyonunda oluşturduğumuz içerik türleri, Yönetilen meta veri içerik türü merkezinden yayınlanmalıdır.
SharePoint'teki içerik türü merkezinden nasıl yayınlanır?
SharePoint'teki içerik türü hub sitesinden bir içerik türü yayınlamak için içerik türü hub site koleksiyonunuza göz atın ve şuraya gidin:
- Site Ayarları >> Site İçerik Türleri
Yayınlamak istediğiniz içerik türünü seçin.
- İçerik türü ayarları sayfasında "Bu içerik türü için yayınlamayı yönet" bağlantısını tıklayın.
Bu sayfadan “Yayınla”yı seçip “Tamam”a tıklayarak bir içerik türünü yayınlayabilirsiniz.
Ayrıca içerik türü merkezi sitesinde yayınlanmış mevcut bir içerik türünde herhangi bir değişiklik yaparsanız, değişikliklerin etkili olması için içerik türünü yeniden yayınlamanız gerekir. Benzer şekilde içerik türünüzün artık kullanılabilir olmasını istemiyorsanız içerik türünü yayından kaldırabilirsiniz. (yayından kaldırmak, kullanılan içerik türünün abone sitelerinden kaldırılmasına neden olmaz). Yayınlanan tüm içerik türleri, içerik türü merkezinden sonra tüketilen web uygulamalarının site koleksiyonlarında kullanılabilir hale gelir ve içerik türü abone zamanlayıcı işleri çalıştırılır.
Değişiklikler İçerik Türü Merkezi'nden Site Koleksiyonlarına anında nasıl aktarılır?
İçerik türü yayınlandıktan sonra abone olan Site Koleksiyonlarının bunu alması bir saat kadar sürebilir. Bu, dahili olarak saatte bir çalışacak şekilde programlanan “İçerik Türü Abonesi” adı verilen bir zamanlayıcı işi tarafından yapılır. Bir içerik türü yayınlamak ve bunları isteğe bağlı olarak site koleksiyonlarınızda hemen görmek istiyorsanız şu adrese gidin:
- Merkezi Yönetim >> İzleme > İş Tanımlarını İnceleyin
- Hedef web uygulamanızın “İçerik Türü Abonesi” işini seçin ve Şimdi Çalıştır'a tıklayın.
Artık içerik türünüz abone olunan sitelerde kullanıma uygun olmalıdır.
PowerShell kullanarak SharePoint içerik türünü yayımlama
İçerik türü yayınlama etkinliği çok sık ve tekrarlanıyorsa PowerShell ile otomatikleştirebiliyoruz. PowerShell kullanarak içerik türünü SharePoint'te yayınlayalım.
Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue
# Function to publish the content types
Function Publish-ContentType($HubSiteURL, $ContentTypeName)
{
#Get the objects from Parameters
$HubSite = Get-SPSite $HubSiteURL
$ContentType = $HubSite.RootWeb.ContentTypes | Where {$_.Name -eq $ContentTypeName}
#Check if the content type exists
if($ContentType -ne $null)
{
#Create a new content type publisher
$Publisher = New-Object Microsoft.SharePoint.Taxonomy.ContentTypeSync.ContentTypePublisher($HubSite)
#Publish-Unpublish
$Publisher.Publish($ContentType)
Write-Host "Published Content Type $ContentTypeName" -foregroundcolor Green
}
else
{
Write-Host "Content Type $ContentTypeName Not Found!" -ForegroundColor Red
}
}
#Configuration Parameters
$HubSiteURL="https://intranet.crescent.com/CTypeHub"
$ContentTypeName="Sales Proposal v.1"
#call the function to publish content type
Publish-ContentType $HubSiteURL $ContentTypeName
Bir İçerik Türü Grubundaki Tüm İçerik Türlerini Yayınlamaya ne dersiniz?
İçerik türünü yayınlamak için SharePoint PowerShell'i burada bulabilirsiniz.
#Configuration Parameters
$HubSiteURL="https://intranet.crescent.com/CTypeHub"
$ContentTypeGroup="Crescent Templates"
#Get the content type hub
$HubSite = Get-SPSite $HubSiteURL
#Publish each content type from the group
$HubSite.RootWeb.ContentTypes | where { $_.Group -match $ContentTypeGroup } | ForEach-Object {
Publish-ContentType $HubSiteURL $_.Name
}
PowerShell kullanarak Zamanlayıcı işini tetiklemek için:
$SubscriberWebAppURL="https://intranet.crescent.com/"
#Run the Content Type Subscriber timer job for a specific Web Application
$CTypeSubscriberTimerJob = Get-SPTimerJob "MetadataSubscriberTimerJob" -WebApplication $SubscriberWebAppURL
$CTypeSubscriberTimerJob.RunNow()


