Forum Discussion
Detect broken links in documents - Sharepoint online migration
Let's start by ruling out the obvious. How are you migrating? It's possible that your current tool may have something that can do this for you.
- SayannaraNov 11, 2020Copper Contributor
Hello,
I need to regularly check my sites for dead links within SharePoint Online. I created my tool and decided to share it. https://blog.p-difm.com/sharepoint-online-check-for-broken-links/
Glad if it helps
Yann
- Lewis-HAug 20, 2020Iron Contributor
Inspired by the code found here, here and here, I created this file in C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\TEMPLATE\CONTROLTEMPLATES\WikiMiniConsole.ascx
<%@ Control Language="C#" AutoEventWireup="false" %>
<%@Assembly Name="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@Register TagPrefix="SharePoint" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" namespace="Microsoft.SharePoint.WebControls"%>
<%@Register TagPrefix="SPHttpUtility" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" namespace="Microsoft.SharePoint.Utilities"%>
<%@ Register TagPrefix="wssuc" TagName="ToolBar" src="~/_controltemplates/ToolBar.ascx" %>
<%@ Register TagPrefix="wssuc" TagName="ToolBarButton" src="~/_controltemplates/ToolBarButton.ascx" %><SharePoint:RenderingTemplate ID="WikiMiniConsole" runat="server">
<Template>
<div style="position:relative;top:0;left:0;">
<div class="ms-wikieditouter">
<table id="miniconsole" cellspacing="0" cellpadding="0" border="0" width="100%"><tr><td>
<table class="ms-wikieditsecond" cellspacing="0" cellpadding="0" border="0" width="100%"><tr><td>
<table class="ms-wikieditthird" cellspacing="0" cellpadding="0" border="0" width="100%"><tr><td>
<!-- this is for the orange cast inside the menu -->
<table class="ms-wikieditorange" cellspacing="0" cellpadding="0" border="0" width="100%">
<tr>
<td class="ms-wikieditorangeinnera" style=";width:100%;"> </td>
</tr>
<tr><td>
<wssuc:ToolBar CssClass="ms-wikitoolbar" runat="server">
<Template_Buttons>
<SharePoint:WikiEditItemButton Text= "<%$Resources:wss,siteactions_wikieditpage%>" runat="server"/>
<SharePoint:WikiPageHistoryButton Text= "<%$Resources:wss,siteactions_viewpagehistory%>" ButtonID="WikiPageHistory" runat="server"/>
<SharePoint:WikiIncomingLinksButton Text= "Incoming Links" ButtonID="WikiIncomingLinks" runat="server"/>
</Template_Buttons>
</wssuc:ToolBar>
</td></tr></table>
</td></tr></table>
</td></tr></table>
</td></tr></table><script src="http://ajax.googleapis.com/ajax/libs/jquery/1.2.6/jquery.min.js" type="text/javascript"> </script>
<script type="text/javascript">
$(function() {var toc = "<div id='toc' style='background:#EBF3FF;"
+"border:1px solid #6F9DD9;display:none;"
+"position:absolute;top:127;right:11;width:250px;"
+"text-align:left;'></div>";$("td.ms-bodyareaframe:first").append(toc);
//get the url for the incoming links page
u = $("a[id$=WikiIncomingLinks_LinkText]")[0].href;//get the target container and load it with the incoming links
//filtered to show the links list only
$("#toc").load(u + " .ms-propertysheet");$("#toc").wrapInner("<ul style='padding:2px;margin:0;list-style-type:none;'></ul>");
$("#toc a").wrap("<li style='padding:0;margin:0;'></li>");
$("#toc li").prepend("<img style='margin-right:5px;' alt='' src='/_layouts/images/square.gif'/>");
$("#incominglinks").click(function(){
$("#toc").toggle();
});// override the target of our hyperlink to bring up the menu
$("#ctl00_PlaceHolderMiniConsole_ctl00_ctl00_ctl00_RptControls_WikiIncomingLinks_LinkText").attr("href", "#")
$("#ctl00_PlaceHolderMiniConsole_ctl00_ctl00_ctl00_RptControls_WikiIncomingLinks_LinkText").click(function(){
$("#toc").toggle();
});
});
</script></div></div>
</Template>
</SharePoint:RenderingTemplate>I hope this helps you with broken links on https://www.o365cloudexperts.com/blog/migrate-sharepoint-to-office-365.
- Andre_SilvaAug 20, 2020Copper Contributor
Steven Andrews unfortunately not. I am using Sharegate and at this moment doesn't have this feature. I checked it.