Manual talk:Skinning Part 1/Archive 1

Awesome tutorial. Thank you!

why an extension
Hi, I'm just seeking some clarity about why we should treat it like an extension now, instead of how it used to be and simply auto included by placing the php file in the skin directory. (I'm also wondering who came up with these conventions, and why they aren't documented anywhere) Dkpat (talk) 17:39, 14 August 2013 (UTC)


 * I started these conventions while doing other things to improve the skins system. There are several reasons I want to ditch the old auto-includes:
 * Auto included skins have no way to add resource loader modules.
 * Auto included skins have no way to add i18n messages.
 * Auto included skins cannot declare anything for Special:Version to give their authors credit like in extensions.
 * Auto included skins have to have their PHP file outside of their skin folder resulting in a directory structure that cannot easily be packaged up and distributed in a way that is easy for users to install.
 * The auto-inclusion code has in the past lead to some bugs like the class name SkinMonoBook (two upper case letters) working for core but breaking when used in a skin in an extension and I'd like to eventually put core skins and 3rd party skins on the same level.
 * Daniel Friesen (Dantman) (talk) 20:05, 14 August 2013 (UTC)
 * Thank you for the response :) I'm certainly not opposed to making the skins this way, I just wish that the various pages here documenting skins had been updated to reflect this. Dkpat (talk) 20:24, 14 August 2013 (UTC)