Domanda

Sto lavorando con SharePoint 2013 e ho modificato il mio codice html della pagina master in SharePoint Designer per mostrare un breadcrumb, come abbiamo avuto in SharePoint 2010.Il codice viene inserito dopo la ID "DeltaPlaceHolderPageTitleInTitlearea" nella pagina master, ed è come segue:

<!--SPM:<asp:sitemappath 
    runat="server" 
    sitemapprovider="SPContentMapProvider" 
    rendercurrentnodeaslink="true" 
    nodestyle-cssclass="breadcrumbNode" 
    currentnodestyle-cssclass="breadcrumbCurrentNode" 
    rootnodestyle-cssclass="breadcrumbRootNode" 
    SkipLinkText=""/>--> 

Mentre questa mostra in effetti un breadcrumb trail, che non è il modo in cui ho sperato di essere.Diciamo che ho un sito di raccolta denominato "Intranet" e io sono su un sito secondario denominato "Generale".Nel sito secondario "Generale", io sono su una pagina denominata "Introduzione".Questa pagina (e tutte le altre pagine di questo sito secondario) sono gestiti dal set di termini.

Sarebbe mostrare una traccia, come questo:Intranet > Generale > Introduzione

Ma ora, diciamo che nel mio set di termini, ho 2 in altri termini, che sono elementi figlio del termine "Introduzione", questi gli elementi del bambino(bambino termini) sono denominati "Storia" e "Posizioni".Se fossi nella pagina "Storia", sarebbe solo un'altra pagina direttamente sotto il sito secondario "Generale".

Sarebbe mostrare un percorso come questo:Intranet > Generale > Storia
Mentre io vorrei mostrare come questo:Intranet > Generale > Introduzione > La Storia

Sono un pò perplesso su questo, dal momento che io non riesco a capire cosa devo fare in ordine per il breadcrumb per rilevare che non è un termine figlio e quale è il termine padre e così via.

Grazie in anticipo per il vostro aiuto!

EDIT:Fondamentalmente quello che cerco è qualcosa, come ad esempio in questo blog.Solo che vorrei evitare di usare una web part.Vorrei apportare delle modifiche in JavaScript o direttamente nella pagina master.

È stato utile?

Soluzione

Ho trovato un modo per ottenere un pangrattato gerarchico usando i valori della navigazione subsitante a termine! :)

Scoprendo il quale elenco la voce nella navigazione è selezionata (il che significa che ha l'URL alla pagina su cui sei acceso), posso loop attraverso l'elenco e raccogliere tutti gli elementi genitore.
. Sulla base di quegli elementi dei genitori, ora conosco la gerarchia e posso utilizzare i valori di tali elementi per creare un pangrattato.

Ecco uno screenshot del pangrattato come lo conosciamo: vecchio panecrumb
. Ed ecco uno screenshot del breadcrumb che ho attualmente, con l'aiuto di JavaScript: Inserisci la descrizione dell'immagine qui
. Come puoi vedere, ora mostra il percorso completo verso una pagina. Ho scritto un nuovo Post sul mio blog sulla mia risposta con tutto il codice necessario, inclusi i pezzi di codice che dovresti aggiungere e sostituire nella tua Pagina Master.

Sentiti libero di chiedere se stai avendo problemi con il codice o se hai bisogno di aiuto.

Altri suggerimenti

Come Robert dice che posso facilmente implementare che utilizzando Sptitlebreadcrumbross in modo simile.Ecco il mio codice HTML nella pagina Layout:

<div id="modern-breadcrumb">
                <!--MS:<SharePoint:SPTitleBreadcrumb
                                 runat="server"
                                 RenderCurrentNodeAsLink="false"
                                 SiteMapProvider="CurrentNavigationTaxonomyProvider"
                                 ParentLevelsDisplayed="2"
                                 DefaultParentLevelsDisplayed="2" 
                                 RootNodeStyle-CssClass="home" 
                                 NodeStyle-CssClass="bc-node" 
                                 CurrentNodeStyle-CssClass="current" 
                                 PathSeparator="" 
                                 PathDirection="RootToCurrent">-->      
                <!--ME:</SharePoint:SPTitleBreadcrumb>-->
            </div>
.

Il Termine Proprietà indica la pagina corrente Metadati Gestiti navigazione tassonomia, ma non fornisce collegamenti ipertestuali.

 <!--CS: Start Term Property Snippet--><!--SPM:<%@Register Tagprefix="spsswc"  Namespace="Microsoft.Office.Server.Search.WebControls" Assembly="Microsoft.Office.Server.Search, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>--><!--SPM:<%@Register Tagprefix="ac679b743"  Namespace="Microsoft.SharePoint.Taxonomy" Assembly="Microsoft.SharePoint.Taxonomy, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>--><!--MS:<ac679b743:TermProperty runat="server" TermStoreID="00000000-0000-0000-0000-000000000000" TermSetID="00000000-0000-0000-0000-000000000000" TermID="00000000-0000-0000-0000-000000000000" Property="Path" Title="&#60;%$Resources:osrvcore,TermProperty_Title%&#62;" FrameType="None" SuppressWebPartChrome="True" Description="&#60;%$Resources:osrvcore,TermProperty_Description%&#62;" IsIncluded="True" ZoneID="ImportedPartZone" PartOrder="0" FrameState="Normal" AllowRemove="True" AllowZoneChange="True" AllowMinimize="True" AllowConnect="True" AllowEdit="True" AllowHide="True" IsVisible="True" DetailLink="" HelpLink="" HelpMode="Modeless" Dir="Default" PartImageSmall="" MissingAssembly="&#60;%$Resources:osrvcore,WebPartImportError%&#62;" ImportErrorMessage="&#60;%$Resources:osrvcore,WebPartImportError%&#62;" PartImageLarge="" IsIncludedFilter="" ExportControlledProperties="True" ConnectionID="00000000-0000-0000-0000-000000000000" ID="g_9e235508_1981_4af3_afca_f5a52d0e66cf" ChromeType="None" ExportMode="All" Preview="&#60;div class=&#34;ms-webpart-chrome ms-webpart-chrome-vertical ms-webpart-chrome-fullWidth &#34;&#62;  &#60;div WebPartID=&#34;00000000-0000-0000-0000-000000000000&#34; HasPers=&#34;true&#34; id=&#34;WebPartwpz2_g_9e235508_1981_4af3_afca_f5a52d0e66cf&#34; width=&#34;100%&#34; class=&#34;ms-WPBody noindex &#34; OnlyForMePart=&#34;true&#34; allowDelete=&#34;false&#34; style=&#34;&#34; &#62;&#60;div id=&#34;WebPartContent&#34;&#62;   [ TermProperty &#34;g_9e235508_1981_4af3_afca_f5a52d0e66cf&#34; ]  &#60;/div&#62;&#60;div class=&#34;ms-clear&#34;&#62;&#60;/div&#62;&#60;/div&#62; &#60;/div&#62;" __MarkupType="vsattributemarkup" __WebPartId="{9e235508-1981-4af3-afca-f5a52d0e66cf}" WebPart="true" Height="" Width="">--><!--PS: Start of READ-ONLY PREVIEW (do not modify)-->[ TermProperty "Unnamed4" ]<!--PE: End of READ-ONLY PREVIEW--><!--ME:</ac679b743:TermProperty>--><!--CE: End Term Property Snippet-->

O uso di JavaScript come questo (ha bisogno di un sacco di lavoro in più, completamente funzionale)

<SCRIPT LANGUAGE="JavaScript">
 <!--
var path = "";
 var href = document.location.href;
 var s = href.split("/");
 for (var i=2;i<(s.length-1);i++) {
 path+="<A HREF=\""+href.substring(0,href.indexOf("/"+s[i])+s[i].length+1)+"/\">"+s[i]+"</A> / ";
 }
 i=s.length-1;
 path+="<A HREF=\""+href.substring(0,href.indexOf(s[i])+s[i].length)+"\">"+s[i]+"</A>";
 document.writeln(path);
 //-->
 </script>

Sono stato in grado di ottenere un pane a lavorare con la navigazione gestita utilizzando il seguente controllo in una pagina master

<SharePointWebControls:ListSiteMapPath runat="server"
    SiteMapProviders="GlobalNavigationTaxonomyProvider"
    RenderCurrentNodeAsLink="true" CssClass="s4-breadcrumb"
    NodeStyle-CssClass="s4-breadcrumbNode"
    CurrentNodeStyle-CssClass="s4-breadcrumbCurrentNode"
    RootNodeStyle-CssClass="s4-breadcrumbRootNode"
    HideInteriorRootNodes="true"
    SkipLinkText=""
    PathSeparator="">
</SharePointWebControls:ListSiteMapPath>
.

Un'altra opzione è utilizzare il controllo SPTITLEBRURBCRUMS come mostrato di seguito:

<SharePoint:AjaxDelta id="DeltaPlaceHolderPageTitleInTitleArea" runat="server">

    <asp:ContentPlaceHolder id="PlaceHolderPageTitleInTitleArea" runat="server">
                                        <SharePoint:SPTitleBreadcrumb
                                 runat="server"
                                 RenderCurrentNodeAsLink="false"
                                 SiteMapProvider="CurrentNavigationTaxonomyProvider"
                                 ParentLevelsDisplayed="4"
                                 DefaultParentLevelsDisplayed="4" PathDirection="RootToCurrent">
                                    <PATHSEPARATORTEMPLATE>
                                        <SharePoint:ClusteredDirectionalSeparatorArrow runat="server" />

           </PATHSEPARATORTEMPLATE>

      </SharePoint:SPTitleBreadcrumb>

 </asp:ContentPlaceHolder>

 </SharePoint:AjaxDelta>
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a sharepoint.stackexchange
scroll top