设为首页 收藏本站
查看: 949|回复: 0

[经验分享] 使用Visual Studio工作流发布SharePoint网页

[复制链接]

尚未签到

发表于 2015-9-26 11:22:07 | 显示全部楼层 |阅读模式
  本文将介绍SharePoint发布网页的一种设计思路。
  在最近的一个项目里,我们遇到这样一个需求。我们需要控制和自动化在一个面向互联网的SharePoint网站中就业岗位相关信息的发布体验。要将这一过程自动化的目的是为了确保统一的格式,并控制导航的设计,以及方便使用预先定义好格式的WebPart模板。
  为此,我们开始设计用一个SharePoint列表来捕捉和组织那些创建网站中每个Web页面时所需的内容。该列表包括多个单行文本、富文本字段,以及用于从库中选择合适的自定义WebPart所需的元数据字段。一旦列表项被保存,Visual Studio 2008工作流将自动完成其余部分的工作。
  
  Visual Studio工作流操作的简要内容如下:
  1. 检查网页是否重名。
  2. 重名的网页会被签出,并删除其上的所有WebPart。
  3. 新建页面,使用某个自定义页面布局并为其命名。
  4. 构建好页面的页眉信息并插入到页面中的一个Web部件里。
  5. 由用户填写的内容通过Visual Studio模板插入到页面中。
  6. 基于列表项的元数据自动选择预先格式化好的WebPart模板和并定制部分属性。
  7.将新建/编辑页面发布为主版本。
  8.将导航中链接指向正确的文件夹并设置为隐藏。
  

  工作流第一步是检查页面库中现有的网页,看看是否有相同的名称。如果发现,该网页会被签出,页面上的所有Web部件都会被删除。 如果没有找到同名的,工作流会选择一个“就业岗位”对应的自定义布局,并新建一个页,页面的名称为工作编号加职位。
  

  下一步,通过把工作的职位/代码和预先格式化并插入到内容编辑器WebPart的HTML部分连接起来,构建出页眉。 该WebPart会顺序插入到页眉区域。其中的HTML部分包含一个动态生成的按钮,绑定了一个更新的查询字符串,可以自动传递职位和数量信息到职位申请表单。主体内容通过使用内置的富文本字段,由用户填写完成。此内容使用在Visual Studio 2008工作流中规定的模板来布局,然后会插入到另一个内容编辑器WebPart中,最后添加到其对应的页面区域中。
DSC0000.png
点击查看大图
  通过为列表项指定元数据,工作流可以从WebPart库中的48个预先格式化好的自定义WebPart模板中挑选2个,将其插入到页面右侧区域。做完这一步后,工作流的检查工作就完成了,接下来该页面会自动迁入并发布为主版本。
  

  最后,SharePoint网站是用非常具体的导航要求,包括为所有的页面在顶部导航条中高亮显示标签,或者据页面的类型控制左侧导航的显示和隐藏。当用户导航到一个招聘广告页上时,在顶部导航中的“职业”和左侧导航中的“当前开放”将以高亮的方式突出显示,但该网页本身的链接不应该显示在当前的导航中。为了解决这个问题,工作流会选择左侧导航中新的一页,并将其移动到当前开放栏目标题下。然后,它会修改新的一页的状态为隐藏。
  

  此外,当网页发布者从就业岗位列表中将列表项的状态修改为非活动时,工作流会自动删除相应的招聘页面。在其他地方,该网站使用数据视图按照功能需求驱动和对应列表项的元数据来控制职位信息的上层展现。
  

  通过Visual Studio 2008自动处理SharePoint页面的发布可以大大减少发布网页所需的时间,并改进设计的一致性,因为用户再也不需要手动选择内容编辑器WebPart并创建内容了。


  参考资料
  PublishingSharePoint Web Pages Using Visual Studio Workflows

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-119033-1-1.html 上篇帖子: sharepoint列表EventHandle的开发 下篇帖子: SharePoint 门户网站的图片轮播-页面定制
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表