[英]ASP.NET MVC: Create Crawlable link tags from rendered pager
我想從ASP.NET MVC應用程序中獲取正在使用的鏈接,並使用使用PagedListPager幫助器的呈現的尋呼機中的上一頁和下一頁URL創建<link>
標記。 最初,我計划使用JavaScript和jQuery在頁面呈現后獲取這些鏈接的URL。 但是,在進行了一些研究之后,此方法將不允許這些<link>
標記可抓取 。
因此,現在我想知道是否存在一種巧妙的客戶端/ JavaScript方法來獲取這些URL並使這些<link>
標簽可抓取。
PagedListPager代碼:
@Html.PagedListPager(Model.Catalogs, page => Url.Action("Books", new {BookName = Model.Book.DisplayAs, bookId = Model.BookId, page}), new PagedListRenderOptions { FunctionToTransformEachPageLink = (liTag, aTag) => { aTag.Attributes.Remove("rel"); liTag.InnerHtml = aTag.ToString(); return liTag; }})
上面的代碼將使尋呼機正常運行。 現在,我想知道是否有一種使用Javascript和jQuery的方法 (如下所示)使鏈接可抓取:
if ($('.PagedList-skipToPrevious')[0]){
$('.PagedList-skipToPrevious').children('a').removeAttr('rel');
var prev_link = $('.PagedList-skipToPrevious').children('a').attr('href');
var prev = document.createElement('link');
prev.rel = 'prev';
prev.href = prev_link;
document.head.appendChild(prev);
}
任何幫助是極大的贊賞!
您是否考慮過提供“查看全部”頁面並將分頁版本設置為noindex
?
https://www.sitepoint.com/pagination-and-seo-best-practices-common-issues/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.