存档在 2014年5月

pagelayout页面布局的一些笔记

2014年5月24日

在sharepoint里面“页面布局”是用来规定页面的内容布局,以前刚学的时候理解为只是控制页面的“布局”,现在sharepoint 2013里面,再进一步理解它的概念觉得以前理解太少

在sharepoint 2013里面,masterpage和layout page都有2个相同名称的文件,例如oslo.master就会有一个oslo.html,archive.aspx这个页面布局就会有archive.html文件

我们普通使用的时候,只要编辑html这个文件,系统会自动同步到aspx或master(单向同步),如果你要控制更多,可以去掉这种关联,编辑html的页面属性“Associated File”,将这个修改为FALSE即可,这个时候直接编辑.master或.aspx文件即可

说回page layout,它其实是关联到content type的,用于表示一种content type,我们在content type里面定义各种各样的字段,然后通过page layout显示出来,例如定义标题,图标,标签等,然后用page layout展示出来。所以它不但是页面布局,还是content type的一种展示方式!

content type

对Bootstrap的一点理解

2014年5月22日

Bootstrap是一套css/html的框架,让你的网页支持移动设备(iphone, ipad, android等手机或设备),再也不用担心网页到了手机变成浆糊形状,但它里面的概念还是需要点时间去理解

流式栅格系统对每一列的宽度使用百分比而不是像素数量。它和固定栅格系统一样拥有响应式布局的能力,这就保证它能对不同的分辨率和设备做出适当的调整。

它将页面 固定为940px,然后每一行最多有12个列,可以将多列组合为1列,例如下面的第二行就将12列组合为3列,第4行将12列组合为2列

bootstrap 1

  1. <div class="row-fluid">
  2. <div class="span4">…</div>
  3. <div class="span8">…</div>
  4. </div>

一开始看的时候没有搞明白列是什么东西,现在才算知道了

下面说的偏移是以上面的列为单位

bootstrap 2

  1. <div class="row-fluid">
  2. <div class="span4">…</div>
  3. <div class="span4 offset2">…</div>
  4. </div>

mastrepage模板页的一个技巧

2014年5月22日

我们在制作模板页的时候,需要按当前用户身份隐藏或显示一些按钮,例如未登录的用户显示“登录按钮”,登录后不显示,已登录的用户显示公司通告,像这样的需要有很多的

在sharepoint 里面已经提供这样的解决办法,那就是使用一个叫“SPSecurityTrimmedControl“的控件

使用的例子像下面这样:

<SharePoint:SPSecurityTrimmedControl runat="server" AuthenticationRestrictions="AnonymousUsersOnly">
    <li>
    <a href="#"><img src="/_catalogs/masterpage/login.png" alt="登录" /></a>
    </li>
</SharePoint:SPSecurityTrimmedControl>

这里面设置为”如果是匿名用户 “那么显示”登录“这个链接,让用户登录 ,

这个控件的AuthenticationRestrictions就是控制显示条件的,它有下面的这些值可供选择

Member name Description
  AllUsers Access is available to all users.(所有用户 可以看到)
  AuthenticatedUsersOnly Access is available only to authenticated users.(已经登录的用户 看到)
  AnonymousUsersOnly Access is available only to anonymous users.(匿名用户 看到)

masterpage

office365公共网站菜单的数据源

2014年5月10日

在研究office 365 MUI多语言的时候发现office 365 全局导航栏是不支持mui滴,所以想看看怎么处理它,它只在masterpage 里面出现过,所以就将master page的菜单数据源和datagrid绑定,然后就可以看出它的数据结构了,但下一步是写代码对菜单进行翻译映射?

Office 365 public site MUI

代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<%@ Page Language="C#" %>
<%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=16.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c"%>
<html dir="ltr" xmlns="http://www.w3.org/1999/xhtml">

<head runat="server">
<meta name="WebPartPageExpansion" content="full" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled 1</title>
<meta http-equiv="X-UA-Compatible" content="IE=10" />
<SharePoint:CssRegistration Name="default" runat="server"/>
</head>

<body>

<form id="form1" runat="server">

<SharePoint:DelegateControl runat="server" Id="topNavigationDelegate" ControlId="TopNavigationDataSource"><Template_Controls>
<asp:SiteMapDataSource ShowStartingNode="True" SiteMapProvider="SPNavigationProvider" ID="topSiteMap" runat="server" ></asp:SiteMapDataSource>

</Template_Controls>
</SharePoint:DelegateControl>

<asp:GridView runat="server" id="GridView1" AutoGenerateColumns="true" DataSourceID="topSiteMap">
</asp:GridView>

<SharePoint:AspMenu runat="server" UseSeparateCss="false" AdjustForShowStartingNode="False" StaticDisplayLevels="2" AccessKey="1" SkipLinkText="" EnableViewState="False" MaximumDynamicDisplayLevels="0" UseSimpleRendering="True" DataSourceID="topSiteMap" Orientation="Horizontal" ID="TopNavigationMenu">
</SharePoint:AspMenu>
 
 
</form>

</body>

</html>

将Office 365博客的外观重复应用到其它站

2014年5月6日

前段时间将一个office 365 small biz站里面的博客页面删除,后来新建一个  blog site,但效果与默认的有区别,主要是没有了顶部的网站菜单。

因为默认的blog是放在public site下面,不是一个子网站,所以菜单可以继承public site的。

如果在public site 新建一个subsite blog,那么这个blog目前找不到办法继承父网站的菜单(通过代码方式应该是可以实现的)

后来研究初始状态的网站的区别,发现只要将正常的blog页面显示的那个webpart导出(webpart后缀)

然后修改一下里面的listid为新站的listid,再导入新站,那么就可以拥有相同的博客显示外观。

 

这个在以前做blog定制的时候也用过类似的方法。

Office 365公共网站多语言的问题

2014年5月6日

1. 在Office 365的public site如何实现内容的多种语言支持?以前是使用variants实现的,但在public site没有这个feature

微软support回复:目前public site不支持多语言这个feature。

可以使用多个o365帐号购买不同的public site实现吗?

不可以,它们不能共享,至于代码方向要自己考虑。

 

另外它们提供了2个有用的链接:

多语言功能简介

http://office.microsoft.com/zh-cn/office365-sharepoint-online-small-business-help/introduction-to-multilingual-features-ha102771975.aspx

创建多语言网站

http://office.microsoft.com/zh-cn/office365-sharepoint-online-enterprise-help/create-a-multi-language-website-HA102886546.aspx

 

2. Intranet site可以绑定到域名吗?绑定后是否整个站的内容都会公开?

support:不可以

 

3. 我可以增加一些clients的帐号供他们登录,是否需要license?

其它client使用windows account(msn,hotmail,outlook等帐号)就可以登录。(即share给他们)

windows account在wiki上的解释:

Microsoft Account(前称为Windows Live IDMicrosoft Passport Network.NET Passport)是一个由微软开发与提供的“统一登入”服务,允许使用者使用一个帐号登入许多网站。原来的定位为所有网络商贸的单一登入服务。

很多包括微软服务的网站如Outlook.comMSNBC、所有MSN的服务、Xbox 360的Xbox LiveSkype.NET Messenger ServiceMSDN订阅以及数家其他与微软关系密切的公司如ExpediaHoyts使用这个服务。MSN的用户会自动拥有一个他们帐户的Live ID。最近的用户登入数据开始允许广告客户使用Microsoft adCenter来用作人口统计的目标。

Office365支持对Office 365的其它域用户授权

2014年5月6日

Office 365有个Share,但只能是Share给已经使用Office 365的用户,目前测试过是可以的,例如我有一个Small biz的帐号,然后另一个公司有一个E3,它可以授权我访问E3里面的内容,就像普通用户一样,输入完整帐号就可以了。

如果要实现像供应商和客户的管理,要供应商和客户都使用365似乎不太现实,所以这里是不是要做二次开发,搞个验证?

Office 365授权

Office365公共网站(public site)不支持内容级别的多语言

2014年5月5日

office 365 的公共网站目前还未完全摸透,它若隐若现,若即若离,时而出错,时而正常。很多理解应该有的功能,它没有。应该没有的问题它却有。

例如多语言这个功能,以前只要设置好variants,搞几个多语言标签就搞定。

现在公共网站就没有这个功能了,为什么呢?

反正就是限制多多,但它的功能级别是支持多语言的,即界面可以根据浏览器或客户语言进行切换,但内容是不支持的,难道它暗视我们要自己实现内容级别的多语言?

如果客户不是要求在公共网站实现多语言,还是放在intranet的那个站比较方便。

另一种方法是在公共网站做一个子网站,使用不同的语言。(但你在网页是找不到创建子网站按钮的,support 人员也说不支持的。但是,我们可以在sharepoint designer创建,不要告诉微软support哦)

Office 365多语言

Office365由小型企业版本切换企业版E3的问题

2014年5月5日

 

最近要测试一些功能,但小型企业版本不支持,要切换为企业版本的E3!

1.在切换的时候小型企业版本就会停止

2.切换后小型企业剩下的费用会在账单出的时候原路退回

3.小型企业的内容会自动切换到E3吗?还没确定。。。

下面是切换时候的警告:

IMPORTANT: Any customized license assignments that you have made for specific users will not be preserved when you switch plans. You may want to make note of these customizations before you switch plans so that you can recreate them afterwards.

网站样式需要备份哦!

When you finish checking out, we will start switching your plan. Switching plans can take up to an hour. 等一个钟
While your plan is being switched:
Admins will not be able to use the Office 365 portal.
There will be no interruption to your service.
Users on your existing subscription will be automatically moved to the new subscription.
Billing:
The billing on your existing subscription will be turned off once you submit your order and the billing on your new subscription will not start until the switch is complete.
You will get a prorated credit for any unused service on your current subscription. You will see the credit on the next billing cycle of your current subscription.
Your plan will not be switched until your invoice credit is verified. While your credit is being verified, admins can’t add new subscriptions. Credit verification can take up to two weeks.
IMPORTANT: If you switch from an Office 365 Small Business plan to any Office 365 Midsize or Office 365 Enterprise plan, you can’t switch back to your previous subscription.
If you want to use another one of your custom domains for your Office 365 public website address, change the address before you switch from a Small Business plan to an Enterprise plan. If you want to change it to another domain later, you might need to some extra steps.

切换后就回来不了,回来不了,回来不了

Office365使用Infopath开发表单和工作流

2014年5月4日

Office365使用Infopath写表单,做个简单的工作流,本以为像在sharepoint 2010那样简简单单,一天的工作量,但结果搞了3天!

为什么呢?

一、运行环境问题

我们使用的是Office 365 small biz版本,这个版本默认不开启”审批工作流“的feature,打工打开可以解决

但它不支持Infopath定制表单这个就解决不了了!

然后升级到E3才能使用Infopath

而Sharepoint online是支持使用infopath和“审批工作流(自己打开)“的,但里面没有发送邮件功能,按道理应该在管理中心可以配置邮件的,找个时间再试吧。

InfoPath

 

二、开发限制

本来想在手机上面执行一个流程,但手机打开定制过的视图是看不到内容的

 

三、debug

什么?debug是没有的,你只能看表面的提示,即使出一个cid给你,也没有日志给你查!

所以放在云上的东西就这样,看不着摸不到。不过,按发展应该会增加一些管理工具来查询日志什么的。

粤ICP备10090854号-1