SharePoint 2010 用户自定义编辑Meta标签的OOB方法
今天遇到一个小问题,客户想要动态定制页面的<Head>标签里Meta, 而且需要使用OOB.
考虑了一下,Meta 标签肯定是用来让Server Crawl的, 那JS的方法首先排除,那就只能用服务器控件了, 在做了一些测试后,Field Control 可以帮我实现这个功能.
1. 首先在Master page 的 Head 标签里加入一个 ContentPlaceHolder.
2. 在Page Layout 里添加下面的代码,
<asp:Content ContentPlaceHolderID="PlaceHolderHead" runat="server">
<meta name='lang' content='<SharePoint:TextField FieldName="fa564e0f-0c70-4ab9-b863-0177e6ddd247" runat="server"></SharePoint:TextField>'/>
</asp:Content>
注: <SharePoint:TextField FieldName="fa564e0f-0c70-4ab9-b863-0177e6ddd247" runat="server"></SharePoint:TextField> 就是Page的一个单行文本字段。
测试一下,是不是在页面多了一个这样的标签 <meta name='lang' content='xxxx' />.
用户现在就可以Edit 这个page, 动态去修改这个值了。