Frage

Wir verwenden MOSS 2007 (SharePoint) für unser intranet.Vor kurzem wurden wir damit beauftragt, mit Unterstützung des branding für mehrere Unternehmen auf unserem Hof.Wir merkten schnell, dass die Seiten der Anwendung (hergestellt durch eine modifizierte Anwendung.master) kann nicht dazu dienen, mehrere Marken-Vorlagen (außer themes).

Ich denke, die richtige Lösung ist, behalten Sie die Standard-Microsoft-branding auf Antrag Seiten (wir waren schon die Entwicklung im dev - keine änderungen an Dateien auf dem server gehostet).

Als eine schnelle Lösung, aber ich dachte, dass ich vielleicht in der Lage sein zu verwenden von jQuery zu ersetzen, ein logo, eine Handvoll nav Bilder und ein paar Farben auf die Seiten der Anwendung.Grundsätzlich gehen von Marke A zu Marke B, bevor die Seite vollständig gerendert.

Meine Frage ist...wie schlecht ist diese Idee?Was sind die Fallstricke im Zusammenhang mit, dies zu tun?Da ist es nur eine vorübergehende Lösung, sollte ich es versuchen?

War es hilfreich?

Lösung

Ich denke, die meisten Ihrer Probleme können gelöst werden, mit einem guten CSS-Datei.Dies ist besser als javascript, meiner Erfahrung nach, da es sich lädt viel schneller.Beachten Sie, dass SharePoint erzeugt starke Seiten-DOM (wise), so dass jQuery dauert eine lange Zeit zu erhalten $(document).ready, und noch mehr Zeit zu manipulieren, dass over-sized DOM - auf IE6 dies kann mehrere Sekunden in Anspruch nehmen, geben Sie den gleichen Eindruck wie eine langsame Website oder server.
Ich habe viele Anpassung von SharePoint mithilfe von CSS:Es kann ein paar stinkende !importants, aber das Ergebnis ist besser als javascript.
Denken Sie auch daran, dass Sie können setzen eine pro-Website CSS-Datei (auf der gleichen Seite legen Sie die sub-Seite master Seite) - dies kann verwendet werden, statt der tatsächlich anlegen einer master-Seite für alle Marken.

Andere Tipps

Hinzufügen Kobi Antwort, Sie können einer Stellvertretung control-Funktion für die Bereitstellung.

Platzieren Sie eine Benutzer-Steuerung unter _controltemplates, wie:

<%@ Control Language="C#" %>
<%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Register Tagprefix="Utilities" Namespace="Microsoft.SharePoint.Utilities" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Import Namespace="Microsoft.SharePoint" %>
<SharePoint:CssRegistration name="/_layouts/custom/app.css" runat="server"/>

Schreiben Sie die Kontrolle delegieren-Funktion (hier ist elements.xml):

<?xml version="1.0" encoding="utf-8" ?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
 <Control ControlSrc="~/_ControlTemplates/CustomBranding.ascx"
                 Id="AdditionalPageHead" Sequence="1" />
</Elements>

Benutzerdefinierte CSS in _layouts/custom/app.css.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top