I'm not doing anything terrible complicated here. The solution is exactly the same as the one you'll see reproduced on a thousand blogs (even here, on stackexchange).
My code looks like this:
<?xml version="1.0" encoding="utf-8"?> <Elements xmlns="http://schemas.microsoft.com/sharepoint/"> <CustomAction Id="MyCustomAction" Description="This is my custom action." Title="Open The Page" GroupId="PersonalActions" Location="Microsoft.SharePoint.StandardMenu" Sequence="1000"> <UrlAction Url="~site/_layouts/CustomStuff.aspx"/> </CustomAction> </Elements>
Basic stuff. Scoped for the web application (I've also tried every other scope, FYI). But, for some reason, it's only showing up on sites that have gone through the visual upgrade. It's not showing on 2010 mode SharePoint 2013 sites.
Anyone know why? Or a solution that will allow me to do this on 2010 mode SP2013 sites?
Edit: Something I wanted to add, I've already tried using the UIVersion attribute of the CustomAction element, to no avail.