在SharePoint 2010中需要更改哪些MasterPage / CSS以进行自定义设计?

时间:2010-12-09 12:12:33

标签: sharepoint sharepoint-2010 sharepoint-designer sharepoint-api

我在v4.master中创建了一个副本(在SharePoint Designer中),我称之为“NEW.master”.....来自顶级网站。

我已保存并将“NEW.master”设置为该网站的默认主页。

然后我到这里http://MySiteName/_Layouts/ChangeSiteMasterPage.aspx并确保它在两个下拉列表中都显示“NEW.master”并且我将两者的复选框设置为“重置所有子站点以继承此站点母版页设置”

一切都很好,一切都很好。

但是当我回到SharePoint Designer时,我会转到“〜/ _styles / corev4.css”并对其进行一些更改。

所有工作都适用于主页,但CSS更改并未反映到我的其他网站和子网站上! MasterPage更改确实反映了.....

知道如何/在哪里进行CSS更改以使用我的“NEW.master”反映我的所有网站?

我做错了什么???

2 个答案:

答案 0 :(得分:0)

您是以管理员身份登录的吗?可能需要签入CSS以反映更改。

答案 1 :(得分:0)

保持简单!

枚举当前网站集中的所有网站;

$collection = Get-SPSite http://localhost/
     foreach ($web in $collection.AllWebs) {
        $web | Select-Object -Property Title, Url, WebTemplate
     $web.Dispose()
     }
$collection.Dispose()

与每个站点/子站点关联的标题,URL和模板。 A full list of template are available here

我写了一个脚本来显示您网站和网络中的所有可用模板;

$site = Get-SPSite http://localhost/
  $web = $site.OpenWeb("")
    Write-Host "Site: " + $site.id
    Write-Host "Web: " + $web.id
 $web.WebTemplate | Format-Table title, id -AutoSize
 $template = $web.GetAvailableWebTemplates(1033)
    Write-Host "Template: " + $template
  $web.Dispose()
$site.Dispose()

模板存储在12/14 hive下; C:\ Program Files \ Common Files \ Microsoft Shared \ Web Server Extensions \ 14 \ Template \ Features \

布局样式表; C:\ Program Files \ Common Files \ Microsoft Shared \ Web Server Extensions \ 14 \ TEMPLATE \ LAYOUTS \ 1033 \ STYLES

可以使用Power Shell修改CSS关联;

$web = Get-SPWeb http://localhost/
$web.AlternateCssUrl = "http://localhost/_layouts/styles/yourstyles.css"
$web.AllProperties["__InheritsAlternateCssUrl"] = $True
$web.Update()

另一种方法是将声明性标签添加到母版页中;

<SharePoint:CssRegistration Name="/_styles/yourstyles.css" runat="server" EnableCssTheming="true" After="true"/>