簡體   English   中英

使用Javascript CSOM在SharePoint 2013中設置搜索中心URL

[英]Setting Search Center URL in SharePoint 2013 using Javascript CSOM

在SharePoint 2013中,我嘗試通過JavaScript CSOM訪問搜索對象。

我想知道可以讓我訪問“網站設置”下的“搜索設置”的對象。 我嘗試在SP對象下查找,但我沒有在那里找到任何與搜索相關的對象。

我的目標是通過JavaScript CSOM更改搜索中心網址。

提前致謝!!!

如何通過CSOM在SharePoint 2013中設置搜索設置

 function updateSearchSettings(searchSenterUrl,resultsPageUrl,Success,Error) {
   var context = SP.ClientContext.get_current();
   var web = context.get_site().get_rootWeb();
   var props =  web.get_allProperties();

   props.set_item("SRCH_ENH_FTR_URL_SITE",searchSenterUrl);
   props.set_item("SRCH_SB_SET_SITE",JSON.stringify({"Inherit":false,"ResultsPageAddress":resultsPageUrl,"ShowNavigation":false}));
   web.update();

   context.load(props);
   context.executeQueryAsync(
     function () {
        var searchCenterUrl = props.get_item("SRCH_ENH_FTR_URL_SITE");
        var searchPageProps = JSON.parse(props.get_item("SRCH_SB_SET_SITE"));
        Success(searchCenterUrl,searchPageProps);
     },
     Error
   );
}


//Usage
updateSearchSettings("/sites/search/pages2","/sites/search/pages/default.aspx",function(searchCenterUrl,searchPageProps){
         console.log('Search Center Url:' + searchCenterUrl);
         console.log('Results Page Url:' + searchPageProps.ResultsPageAddress);
   },
   function (sender, args) {
        console.log("Error: " + args.get_message());
   });

給定Web的搜索中心URL存儲在該Web的Property包中,在RootWeb上,您還可以設置該站點的搜索中心URL。

2013年,密鑰從2010年開始發生變化,現在分別為SRCH_ENH_FTR_URL_WEB和SRCH_ENH_FTR_URL_SITE。 設置它們的代碼是這樣的:

var ctx = new SP.ClientContext.get_current();
var web = ctx.get_site().get_rootWeb();
var props =  web.get_allProperties();
props.set_item("SRCH_ENH_FTR_URL_SITE","/sites/search/pages");
web.update();     
ctx.load(web);     
ctx.executeQueryAsync(function () {
    alert("Search Settings Modified");
 },
 function() {
  alert("failed");
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM