Rag*_*czy 2 sharepoint web-config sharepoint-2007 appsettings
我们正在创建几个(19)网站,以便在Sharepoint 2007中托管,并希望使用Google Analytics.第一点很容易,只需将Google Analytics javascript放在Sharepoint母版页中,所有内容都按预期工作.
但是,我们希望19个站点中的每个站点都生成单独的统计信息,这是通过为每个站点设置不同的ID来完成的.我的第一个想法是将id存储在每个站点的web.config中,并更改母版页以便为javascript读取此内容:
<%= ConfigurationManager.AppSettings["google.analytics.key"]%>
Run Code Online (Sandbox Code Playgroud)
不幸的是,Sharepoint不喜欢这样说并且说:此文件中不允许使用代码块.
我的问题是:
有没有办法在Sharepoint母版页中从web.config读取appSettings?要么
是否有更好的Sharepoint方式将特定于站点的信息导入母版页?要么
我是否坚持为每个网站使用单独的母版页?
你提出的是非常不安全的,因为它允许使用sharepoint设计器的任何贡献者将任何代码添加到母版页,这绝不是一个好主意.我建议在任何情况下都使用服务器控件,这只需要几分钟的时间来开发,但之后会为你节省很多麻烦
小智 5
默认情况下,SharePoint不允许母版页中的代码,因此您需要将主页标记为对代码安全.在您的web.config中,您将具有以下设置:
<SharePoint>
<SafeMode MaxControls="200" CallStack="false" DirectFileDependencies="10" totalFileDependencies="50" AllowPageLevelTrace="false">
<PageParserPaths>
</PageParserPaths>
</SafeMode>
Run Code Online (Sandbox Code Playgroud)
您需要将其更改为包括:
<PageParserPaths>
<PageParserPath VirtualPath="/_layouts/masterpage/*" CompilationMode="Always" AllowServerSideScript="true" IncludeSubFolders="true"/>
</PageParserPaths>
Run Code Online (Sandbox Code Playgroud)
这将告诉SharePoint允许母版页中的代码.您可以使用相同的想法来允许其他SharePoint位置中的代码.
另一个选择是使用代码隐藏,但我假设您根据自己的问题不想这样做.
| 归档时间: |
|
| 查看次数: |
1603 次 |
| 最近记录: |