2015-02-25 21 views
6

Chúng tôi đã có một trang web Sitecore nơi một số mục đã bị hỏng liên kết đến trạng thái luồng công việc cũ không còn với chúng tôi nữa. Tôi biết rằng bạn có thể xóa liên kết khi bạn xóa một mục, nhưng tôi không thấy giao diện đơn giản xóa liên kết bị hỏng trên một mục, khi mục bị thiếu đã biến mất.Làm thế nào để loại bỏ các liên kết bị hỏng trong Sitecore

Cách tốt nhất để xóa liên kết bị hỏng trong trường hợp này là gì? Cảm ơn.

+0

Cố gắng xây dựng lại cơ sở dữ liệu liên kết bằng cách sử dụng tùy chọn trong bảng điều khiển –

Trả lời

8

Có trang quản trị Sitecore cho phép xóa liên kết bị hỏng. Bạn có thể tìm thấy nó ở đây:

http://localhost/sitecore/admin/RemoveBrokenLinks.aspx

Bạn chỉ cần chọn các cơ sở dữ liệu và thực hiện thao tác. Bạn cũng có thể tuần tự hóa tất cả các mục đã thay đổi trong quá trình này.

Bạn có thể cần phải thay đổi cài đặt thời gian chờ trong web.config:

<setting name="DefaultSQLTimeout" value="10:00:00" /> 
<setting name="DataProviderTimeout" value="00:00:00" /> 
+0

Cảm ơn! Tôi mới vào sitecore, tại sao tôi muốn serialize các mục đã được thay đổi? – Scott

+1

Nếu bạn nhận ra điều gì đó quan trọng bị thiếu sau hành động của mình, bạn có thể deserialize phiên bản cũ của mục từ tệp được tuần tự hóa. –

2

Sitecore duy trì một bảng tên Liên kết trong cơ sở dữ liệu quy định trong phần LinkDatabase của web.config. Bạn có thể nhận được tất cả các liên kết bị phá vỡ theo cách sau:

Sitecore.Data.Database db = Sitecore.Context.Database; 
Sitecore.Links.LinkDatabase linkDb = Sitecore.Globals.LinkDatabase; 
Sitecore.Links.ItemLink[] brokenLinks = linkDb.GetBrokenLinks(db); 
Các vấn đề liên quan