Let me explain SharePoint...

5 ways to enable Custom Scripts for a SharePoint site collection

This article explains how to enable custom scripting for any SharePoint site collection. This is functionally equivalent with setting setting “-DenyAddAndCustomizePages 0” or disabling the NoScript feature. Different instructions and solutions apply to SharePoint Online, and on-premises scenarios (SharePoint Server 2013, 2016 and probably 2019) – so see below for all of them. Different solutions are required to resolve the issue for different target sites: Modern SharePoint Team Sites (attached to Office Groups if on SharePoint Online, and without one if On-Premises) Modern SharePoint Communication […]

SharePoint doesn't work as intended

How to show more than 30 categories in SharePoint blog/news sites?

Imagine this: you’re using a good old SharePoint blog site, and have a bunch of categories in use. That’s nice and easy – SharePoint offers the categorization functionality natively, and it works decently. Problems arise when you have a lot of categories, though – not all of them will be shown. Even if you tweak the web part to show more items on a page, this isn’t reflected on the whole blog site! This post article explains how to fix this. Problem For background info […]

MFW another API just stops working without returning any errors

How to fix Twitter embed in SharePoint

Twitter embed has a stupid, built-in failure condition: if the User Agent contains IE10 or older, the embed script will not load. This causes SharePoint embeds to fail. This post describes how to fix that.

How to show a pop-up in SharePoint

This ages old trick deserves to be published – since it makes it easy to quickly show info from pretty much any another page on pretty much any Classic SharePoint page (in a SharePoint-compatible pop-up). So, here goes: Using SharePoint’s JavaScript library to open an arbitrary pop-up Yes – SharePoint contains all the functionality out-of-the-box, and you almost don’t have to do anything yourself! Let’s see how this works. Okay – long story short. On all Classic SharePoint pages, you can call this function: SP.UI.ModalDialog.ShowPopupDialog(). Like […]

SharePoint doesn't work as intended

Opening a web part page in maintenance mode

Can’t access a web part page because of a broken web part? Yeah, that’s a classic issue – and it’s nicely ported into Modern world, too! In these cases, web part page maintenance mode comes in handy! There’s a query parameter available for accessing it. For whatever reasons, it’s different for Classic and Modern mode, though. Why make things easy if you can make them dificult, right? :)  Posts Related to “Opening a web part page in maintenance mode”:SharePoint-Teams -integration using a tabThe Scary Anatomy […]

Won my first hackathon!

Hackathon win: Resolving Managed Metadata Madness

I won a hackathon! They had fun topics, it was a cool challenge, a well organized event, and had cool prizes. Since this is the first hackathon I ever took part in, I thought I’d post something about my experience and the solution(s) I figured out. Posts Related to “Hackathon win: Resolving Managed Metadata Madness”:SharePoint-Teams -integration using a tabThe Scary Anatomy of a Microsoft License FraudA cautionary tale of relying on the automatic backups in SharePoint Online

Let me explain SharePoint...

How to show a Classic SharePoint page in dialog mode (without SharePoint’s full-blown chrome)

Classic SharePoint actually has a very handy piece of functionality, using which you can hide most of the SharePoint chrome (like header and navigation), and hence make the page a lot more sleek. This is especially useful for showing the contents in a dialog window – which SharePoint also supports natively through JavaScript! This post describes how. How to show any (classic) SharePoint page in dialog mode? Pretty easy – it’s handled via a url parameter!  Posts Related to “How to show a Classic SharePoint […]

Let me explain SharePoint...

Don’t remove the root web of your classic SharePoint Site Collection!

A quick heads-up – if you remove the root site (or RootWeb, like it’s called in the code) of your classic SharePoint Site Collection, that’s going to cause you some grey hairs. It might even, in some rare cases, be unrecoverable! Why? Whereas you can always restore a normal site from the site collection recycle bin, the root site you can’t. You actually can’t access the recycle bin after removing the root site, nor can you make magic happen with PowerShell commandlets anymore. The Recycle […]

SharePoint is not broken - it just does't work

How to fix “The web site does not support SharePoint Online credentials. The response status code is ‘Unauthorized'”

While running some SharePoint Online -PowerShell commandlets, or connecting to a SharePoint Online site from your app, you get a following (or similar) error about your SharePoint Online credentials being unauthorized for something you should definitely be authorized to do: Cannot contact web site ‘https://[tenant]-admin.sharepoint.com/’ or the web site does not support SharePoint Online credentials. The response status code is ‘Unauthorized’. And that’s not all – by digging into the full error message, you find the underlying internal error: MSDAVEXT_Error=917656; Access+denied.+Before+opening+files+in+this+location%2c+you+must+first+browse+to+the+web+site+and+select+the+option+to+login+automatically. What awakens my curiosity, […]

How to SharePoint?

Using “DetectedLanguage” to return only localized results from SharePoint Search index

Localization and targeting of content in multilingual SharePoint installations is always an issue. SharePoint offers a multitude of ways profile content based on user language (or other properties), but none of the solutions are fool proof. This post describes how to fetch only localized results from SharePoint Search index, which solves at least some of the issues. Description  SharePoint Search index can be used in quite a few different ways. Probably the most typical way is by searching on SharePoint, or using webparts like Content […]

SharePoint Search No Results

Alternative Languages in SharePoint forcing the (cumbersome) use of localized Managed Properties

Localization and multilingual environments in SharePoint are an endless source of interesting issues and blog post topics. In one case, we had a tenant created originally in English, and a site collection created in Finnish. In this particular case, SharePoint somehow messed up the language settings, and ended up requiring the use of localized managed properties on the search center of that site collection. That ended up being unexpected, unituitive and unusable for the end-users. Description of the issue Typically, when you use SharePoint Search, […]

SharePoint is not broken - it just does't work

Web part title changes not reflected to some users in multilingual SharePoint environment

I encountered another, interesting issue – this time in a SharePoint environment, where multiple display languages were in use. When changing the web part title on a web part on a classic SharePoint page, it seems like SharePoint saves the changes for you. In reality, only some users see the changes. So, in short: Some other users, on some devices, see the old title, whereas some see the new one. It’s a confusing situation and difficult to debug. Why do web part titles get changed […]

Azure Active Directory (Azure AD)

How to use the Azure AD associated with your SharePoint Online

With the usual configuration of Office 365 and Azure, there might be multiple Azure AD (AAD) instances associated with your subscription. When creating registrations to whatever SharePoint-related apps that you might be using, if you create the registration to the wrong Azure AD, it can’t access the data in your SharePoint. Or at least without further configurations, it probably won’t get any data from your Office Graph API or whatever else you might want to use.  How to find the instance of Azure AD associated […]

If you could just fix SharePoint... That would be great.

The effect of using Managed Navigation instead of Structural on SharePoint Online

Have you ever noticed that your SharePoint site just gets slower and slower? That’s probably because the performance of Structural Navigation is absolutely horrible, especially vs. Managed Navigation. This blog post includes our findings about the issue, and I also include some explanation of the reasons behind the difference and a simple comparison to Search-based navigation. Posts Related to “The effect of using Managed Navigation instead of Structural on SharePoint Online”:SharePoint Localization – a (somewhat) comprehensive how-to!The Scary Anatomy of a Microsoft License Fraud4 ways […]

SharePoint PnP logo

How to solve errors about missing PnP Cmdlets on PowerShell

This blog posts briefly describes how to solve some of the most typical errors about missing PnP Cmdlets when using Windows Powershell (or SharePoint Online Management Shell). Symptoms When trying to run some PnP-related cmdlet, you get an error similar to ones below: Connect-PnPOnline : The term ‘Connect-PnPOnline’ is not recognized as the name of a cmdlet, function, script file, or o perable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try aga […]

"For security reasons DTD is prohibited in this XML document. To enable DTD processing set the ProhibitDtd property on XmlReaderSettings to false and pass the settings into XmlReader.Create method."

Fixing the “For security reasons DTD is prohibited in this XML document.” issue

This post describes a couple of ways to fix the issue “For security reasons DTD is prohibited in this XML document”. At least for me, it appeared when trying to access SharePoint Online using Powershell or a console program using OfficeDev.PnP (which in turn uses CSOM). Error When running any piece of code, whether in PowerShell, .exe console or anything else than in the code behind relies on .NET Framework, you get an error like this: For security reasons DTD is prohibited in this XML document. […]

SharePoint Search Query Tool

Using SharePoint Search Query Tool

If you’re working on SharePoint deployments, and aren’t familiar with SharePoint Search Query Tool, you’re probably doing something wrong. Or you’ve gotten a really troublefree tenant and simple requirements.. :) At least for technical issues, it’s the #1 tool for debugging what’s in the index and what isn’t. This blog post describes how to use it to investigate SharePoint Online Search index issues. This blog post is about using SharePoint Search Query Tool to investigate search index issues in SharePoint Online. First of all, you […]

Office Group

Site Mailboxes deprecated on SharePoint Online – use Office Groups instead

Microsoft is deprecating, or even removing one of the widely used features in SharePoint sites – Site Mailboxes. For the end-user this might no mean much, but still requires some additional work from the administration side. In this post, I’m trying to give a rough outline, on what you (as an administrator/content producer) should do. So, what exactly is happening? Posts Related to “Site Mailboxes deprecated on SharePoint Online – use Office Groups instead”:SharePoint-Teams -integration using a tab4 ways to enable Custom Scripts for a […]

Too long deployment path

Fixing error: “The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the directory name must be less than 248 characters.”

This post describes a few different ways of fixing the error “The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the directory name must be less than 248 characters.” one can get encounter this issue at least when trying to package/publish a SharePoint solution, web site or an Azure Webjob. Symptoms Visual Studio throws the following error when packaging a SharePoint solution to a .wsp file, OR when deploying or publishing your […]