Attualmente sto lavorando a un progetto che richiede l'impostazione di un flusso di lavoro sitecore molto semplice. Sto incontrando alcune difficoltà durante la modifica degli articoli esistenti per utilizzare il mio nuovo flusso di lavoro. Questo è quello che ho fatto:Impossibile impostare il flusso di lavoro e le proprietà dello stato del flusso di lavoro sugli articoli del sitecore
Il flusso di lavoro crea una nuova versione quando un gestore di contenuti inizia a modificare un elemento e pubblica l'elemento quando si fa clic sul pulsante di invio.
ho aggiunto questi elementi del flusso di lavoro ai valori standard dei miei modelli:
Il passo successivo sarebbe quello di impostare le impostazioni del flusso di lavoro sulle voci già esistenti. Fortunatamente possiamo usare sitecore-powershell per fare questo per noi.
function SetWorkflow($item)
{
$item.__Workflow = "{DE29E564-3157-4CAB-81B1-87DF2E983517}";
$item."__Workflow state" = "{27633BF0-B76A-4450-A139-BA53F6943778}";
}
get-childitem . -recurse -Language * | foreach-object { SetWorkFlow($_) }
Questo script viene eseguito senza errori.
Ora inizia il divertimento: quando ho aperto gli elementi, ho eseguito questo script sul flusso di lavoro e le proprietà dello stato del flusso di lavoro non sono cambiate. Stranamente, l'editor dice che i valori vuoti vengono ereditati dai valori standard, anche se i valori standard non sono vuoti, li ho impostati!
che l'avresti detto lo script forse ha fallito e che non sono stati fissati valori. Tranne quando guardo i valori in sitecore-powershell, posso vedere che i valori ci sono.
get-childitem . -recurse -Language * | Format-Table Id, Language, __Workflow, "__Workflow state"
ID Language __Workflow __Workflow state
-- -------- ---------- ----------------
{208D79B1-5B42-4713-A7F9-F2109588F639} en {DE29E564-3157-4CAB-81B1-87DF2E983517} {27633BF0-B76A-4450-A139-BA53F6943778}
{208D79B1-5B42-4713-A7F9-F2109588F639} nl-NL {DE29E564-3157-4CAB-81B1-87DF2E983517} {27633BF0-B76A-4450-A139-BA53F6943778}
{3F3B1132-02DA-4E75-928F-BDB8AED5C3CD} nl-NL {DE29E564-3157-4CAB-81B1-87DF2E983517} {27633BF0-B76A-4450-A139-BA53F6943778}
{8AF23DC5-E7FE-47E3-AC65-AA3D41D81F97} en {DE29E564-3157-4CAB-81B1-87DF2E983517} {27633BF0-B76A-4450-A139-BA53F6943778}
{8AF23DC5-E7FE-47E3-AC65-AA3D41D81F97} nl-NL {DE29E564-3157-4CAB-81B1-87DF2E983517} {27633BF0-B76A-4450-A139-BA53F6943778}
etc.etc.
Ho provato a impostare manualmente il flusso di lavoro e le proprietà dello stato del flusso di lavoro sugli articoli. Funziona un po ', posso passare attraverso il flusso di lavoro una volta. Quando viene aggiunta una nuova versione, le proprietà dello stato del flusso di lavoro e dello stato del flusso di lavoro ritornano ai valori standard "vuoti" che interrompono il flusso di lavoro per quell'elemento.
Qualcuno sa cosa sta succedendo qui? Come posso impostare il flusso di lavoro e le proprietà dello stato del flusso di lavoro una volta per tutte?
Felice di vedere che hai utilizzato le estensioni di PowerShell per questo e il fatto che sembra che stia verificando i suoi risultati.Ciò che mi preoccupa è il fatto che non li vedresti nell'editor dei contenuti. La mia domanda è se questo è ancora il caso. Un errore che faccio di solito quando controllo questo è che controllo l'elemento che chiamavo Get-ChildItem -Recurse on mentre lo script avrebbe funzionato solo sui suoi figli. :) Non sto dicendo che sia il caso, ma ho eseguito questi script e Content Editor Shown ha mostrato i risultati che ti aspettavi, chiedendoti semplicemente perché sarebbe diverso nel tuo caso. –
Oops ... Penso di aver modificato la risposta piuttosto che aggiungere il mio commento ... Sono davvero molto dispiaciuto per quello :( –
Ciao Adam, l'editor di contenuto del sitecore potrebbe non visualizzare i valori impostati dallo script di PowerShell a causa del campo dello stato __workflow e __workflow che sono i campi "stato attuale" come descritto da jammykam. PowerShell di Sitecore ha sempre funzionato come un incantesimo per i miei altri script di PowerShell.Grazie per aver creato questo fantastico strumento! –