-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
There seem to be three popular ways:
- $IP/skins/SkinName.php for the main file plus $IP/skins/skinname/
for
...
- $IP/skins/SkinName/ for both assets and PHP files
($IP/skins/skinname/SkinName.php etc.), using require_once in
...
- $IP/extensions/SkinName/ for everything, the rest as above. This
makes
I'd go for a mixture of option 2 and 3: $IP/skins/SkinName/SkinName.php I agree that skins and extensions should be installed in the same way as much as possible. But I do not agree that this should go so far as to install them in the same directory. They are fundamentally different things - one concerns (ideally) the functionality of the wiki, the other (ideally) its presentation. "But it can both be pulled in using require_once, let's put it in the same place." does not sound right to me. Using that reasoning you could just put all of MW in one directory (or in one file, even) and be done with it. At the same time I do not agree that the skin absolutely has be called the same in all contexts so admins do not get too confused. That's what installation instructions are for. "Plop it into yaddayadda. Done. Activate it using blahdiblah. Done." And, incidentally, what's wrong with &useskin=MonoBook?
Btw: "What stops a new user from plopping the folder into the extensions directory by accident out of habit?"
Three answers - 1 serious, 1 half-serious, 1 not helpful at all (you can pick which is which): 1. "New user", "out of habit"? Umm... 2. Nothing. And any decently written skin should not care. 3. Composer. :P And a decent extension/skin manager built on top of that. (But that's a completely different discussion, agreed.)
Cheers, Stephan