Pregunta

Cuando se usa metadatos administrados, ¿cómo puedo averiguarlo, si se usa un término (y si es posible, con qué frecuencia se usa), sin iterar todos los sitios y listas / bibliotecas en los sitios?

¿Fue útil?

Solución

Entonces, este es mi propio enfoque, está iterando las colecciones de sitios, pero no sus contenidos.Simplemente revisa el TaxonomyHiddenlist para los términos que contiene.

Pero si alguien tiene una mejor idea, lo aceptaría felizmente :)

$usedTerms = @{}
Get-SPSite -Limit All | foreach {
    $web = $_.OpenWeb()
    $list = $web.Lists | where { $_.Title -eq "TaxonomyHiddenList" }
    $list.Items | foreach {
        if ($_ -ne $null)
        {
            $key = ($_["Path"] + " (" + $_["IdForTerm"] + ")")
            if ($usedTerms.ContainsKey($key))
            {
                $usedTerms[$key] = ($usedTerms[$key] + ", " + $web.Url)
            }
            else
            {
                $usedTerms.Add($key, $web.Url)
            }
        }
    }
}

$usedTerms

Licenciado bajo: CC-BY-SA con atribución
scroll top