【问题标题】:Placing Share Documents subfolder as a webpart in SharePoint在 SharePoint 中将共享文档子文件夹作为 Web 部件放置
【发布时间】:2010-09-10 02:01:06
【问题描述】:

我想在包含 SharePoint 中文档库子文件夹的页面上放置一个 Webpart,但不知何故,我唯一得到的是文档库的根文件夹。

是否有满足此需求的 Webpart?

【问题讨论】:

    标签: sharepoint


    【解决方案1】:

    默认情况下我认为这是不可能的。

    将显示共享文档的列表 Web 部件了解如何呈现库,但不了解如何过滤以仅显示一个子文件夹的内容。

    最好创建一个过滤器 Web 部件并将该过滤器提供给列表 Web 部件,以便它根据文档库的 fileref 字段中定义的子文件夹进行过滤。然而,它似乎能够使用的过滤器是类型、修改和修改者。因此,您可以将其过滤到您触摸的文档,而不是给定位置的文档。

    最终结果:滚动您自己的 Web 部件。

    【讨论】:

    • 您还可以使用内容搜索 Web 部件 (CSWP) 并显示特定文件夹路径下的元素(并且仅显示该文件夹中的元素,而不是其子项或子项)。请参阅下面的答案
    【解决方案2】:

    原因是webpart选择的文件夹不是由webpart本身控制的,而是由一个querystring参数控制的。

    例如

    "?RootFolder=%2fDocuments%2fMyFolder1&FolderCTID="
    

    因此,尽管 webdav 界面存在“谎言”,但文件夹本身并不是“真正的”文件夹 例如\\sharepointsite\documents

    应该有一种方法可以包含所需的 RootFolder 参数,例如链接到包含查询字符串的页面(远非理想)。

    我不知道有任何网络部件可以做到这一点。

    【讨论】:

      【解决方案3】:

      我使用的另一种方法是将页面查看器 Web 部件放在页面上,然后选择“文件夹”作为要查看的内容类型。然后将 webdav UNC 指定到“\some_sharepoint-site\some_site\shared documents\some_folder\”等文件夹中

      【讨论】:

      • 匿名用户评论(拒绝编辑): UNC 文件夹路径是使用 view-folder-in-explorer 功能获取的,然后将其粘贴到字段字段中。请注意,空格很重要,因此从所需子文件夹的资源管理器视图中复制和粘贴将确保路径有效。此方法已在共享库子文件夹和从自定义库创建的子文件夹上进行了测试。
      • 不错的解决方法,请注意它仅在 Internet Explorer 中有效,大概是因为 iframe 中的 unc 文件夹视图是使用 IE activeX 部件实现的。
      【解决方案4】:

      这是在 Sharepoint 2010 中仅使用 Javascript 而不需要 SharePoint Designer 的方法。

      1. 在您的 Web 部件页面上创建文档库 Web 部件
      2. 更改视图以显示所有不带文件夹的项目,并将项目限制设置为足够大的数量,以便没有批次
      3. 添加内容编辑器 web 部件下面文档库 web 部件
      4. 添加以下 javascript 并更改第一个变量以满足您的需要

      注意:如果您有多个文档库 Web 部件,则需要添加到此代码中。

      <script type="text/javascript" language="javascript">
      
          //change this to meet your needs
          var patt = /FOLDER%20TO%20SEARCH/gi; 
          var x = document.getElementsByTagName("TD"); // find all of the TDs
          var i=0; 
      
          for (i=0;i<x.length;i++)
          {
              if (x[i].className =="ms-vb-title") //find the TDs styled for documents
              {
                  var y = x[i].getElementsByTagName("A");  //this gets the URL linked to the name field
                  //conveniently the URL is the first variable in the array. YMMV.
                  var title = y[0];  
      
                  //search for pattern
                  var result = patt.test(title);
      
                  //If the pattern isn't in that row, do not display the row
                  if ( !result )
                  {
                      x[i].parentNode.style.display = "none"; //and hide the row            
                  }
              }
          }   
      </script> 
      

      【讨论】:

        【解决方案5】:

        我可以通过创建一个新列并为整个共享文档列表指定一个关键字来做到这一点。

        然后我必须添加元数据。 将 WebPart 再次添加到页面。 创建一个视图,将文件显示为平面列表,并过滤新列(即关键字是/包含----)。 然后我在带有 Web 部件的页面上得到我想要的列表。

        【讨论】:

          【解决方案6】:

          将文档库列表视图 Web 部件放置在任何页面上。 编辑 Web 部件。 从过滤器中选择列“内容类型”和值“文件夹” 保存,你就完成了。

          这样做只会显示根文件夹文件。

          【讨论】:

            【解决方案7】:

            我有一个不需要 Designer 的解决方法。没有那么优雅,但任何高级用户都可以实现。

            添加库 Web 部件后,转到页面并向下单击要设为默认文件夹的文件夹。看到页面链接现在显示如下内容: www.mysite.com/sharepoint/default.aspx?RootFolder=%2Fsubfoldername&amp;FolderCTID=...

            复制该链接。删除&amp;FolderCTID 和后面的所有内容。在这种情况下,剩下的是:
            www.mysite.com/sharepoint/default.aspx?RootFolder=%2Fsubfoldername

            使用此链接导航到页面,库将在该页面中按您的需要显示。请注意,它不会替换该页面的默认视图。

            【讨论】:

              【解决方案8】:

              解决此问题的另一种方法是仅使用内容搜索 WebPart (CSWP) 并根据以下条件过滤结果:

              • 文件夹路径
              • 网址深度

              您需要一个符合您要求的 UrlDepth 值。最好的办法是使用一个较高的值,例如 10,然后减少,直到它只显示您需要的文件。 关于文件夹路径,删除(引号)“,这样查询将执行“包含”查找,而不是“等于”:

              结果会是这样的:

              path:[your site]/Docs/our_team  UrlDepth:7 
              

              如果文件夹名称包含空格,您可能需要用引号将其括起来。类似:

              path:[your site]/Docs/"our team"
              

              【讨论】:

                猜你喜欢
                • 2016-06-25
                • 2013-08-29
                • 2017-03-05
                • 1970-01-01
                • 2021-03-26
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2013-10-04
                相关资源
                最近更新 更多