--
NOTICE: These guidelines are now outdated. Please refer to our updated guidelines (http://www.simplemachines.org/community/index.php?topic=343138.0). Thanks!
--
There have been some questions recently regarding the approval of themes submitted to the Theme Site (http://custom.simplemachines.org/themes), but many of them have a few issues within them and I though we should share.
Here are a few guidelines that themes must follow before we can approve them.
- No Hard coded strings in the templates, and English strings/buttons must be provided by default
All text must be in the language files. If your theme uses new strings not provided by default in SMF then, create a ./languages/ThemeStrings.language.php (http://www.simplemachines.org/community/index.php?topic=261550.0) file (or create your own ./languages/ThemeStrings.language.php. (http://www.simplemachines.org/community/index.php?topic=261550.0)) An English version of any new strings must be provided, but you can include other languages as well if you wish.
- Themes must not violate copyrights
Authors of themes that make use of resources created by others need to make sure they are respecting the license of those items. If a license for an item you want to use is not posted, you must contact the creator and obtain permission. If a copyright violation is reported about a theme you have posted, the theme will be removed until you fix the infringement. Repeated instances may result in a permanent ban from posting themes.
-Use of Simple Machines default artwork
You have permission to use the artwork that is bundled with SMF for use in custom themes for the system. Use of the artwork in other software must be approved by Simple Machines LLC.
- Templates must contain valid HTML 4.01 or XHTML 1.0 Transitional
Template files must be valid to HTML 4.01 or XHTML 1.0 Transitional. Tags must be in lowercase, and line breaks (<br>) must be closed (<br />), for more information this should help (http://www.w3.org/TR/xhtml1/) for XHTML 1.0 Transitional.
- Only include the edited files
There is no need to include all the template and language files if they have not been edited, SMF will automatically call for the default template if the template is not present in your theme. The same for language files, the only language file that is required is Settings.language.php
- Easy Readability For Quick Editing
Themes must have readable code and conform to SMF coding guidelines as much as possible. For example you shouldn't have a whole stylesheet class on one line.
- Theme descriptions must be in English:
For a vast majority of users, English is the first language spoken and in most cases the only language spoken. For this reason, the English description must be listed first. However, other languages may be provided below, and must be labeled to which language it is.
- Valid Version Tag
The version tag in the theme_info.xml MUST be represent the version of SMF that the theme is for.
- Variations
For themes with multiple colour variations, they should all be within the same theme entry. Multiple packages are okay, though all variants in one package using a multi-colour dropdown or click boxes is preferred.
- If you're contacted about any of the above points:
If you get contacted about any of the above points from the Customize Team, then your response must be in English. If it is NOT in English, you may be contacted again for an English translation. Contact the local moderator of your language for a translation if you need help. Also please be aware that all non-English replies will place your theme at the end of the approval list.
NOTE: It has also come to attention that some members have been contacting team members to get their theme approved quicker. When you do this, we will move your theme to the end of the list of themes awaiting approval. If the theme hasn't been approved for two weeks, you are welcome to make a post about it without any consequences.
Thanks
Tema Kabul Şartları (Turkish) (http://www.simplemachines.org/community/index.php?topic=205738.0)
Vodic za odobrenje Teme (Serbian) (http://www.simplemachines.org/community/index.php?topic=207714.0)
Pedoman Persetujuan Tema (Indonesian) (http://www.simplemachines.org/community/index.php?topic=207858.0)
Auteurs de Thèmes: Directives d'approbation des Thèmes (French) (http://www.simplemachines.org/community/index.php?topic=207913.0)
Linee guida per l' approvazione dei temi (Italian) (http://www.simplemachines.org/community/index.php?topic=208038.0)
Autores de Temas: Regras para Aprovação pelo SMF (Portuguese) (http://www.simplemachines.org/community/index.php?topic=208760.0)
Temadesigners: Riktlinjer för godkänning av teman (Swedish/Danish/Norwegian) (http://www.simplemachines.org/community/index.php?topic=212334)
Theme Autoren: Richtlinien für Theme Freigaben (German) (http://www.simplemachines.org/community/index.php?topic=212335)
If people are including custom language files, can they please get those files to require() the default theme's language files too?
Also, why not just say that the themes must validate against a current HTML or XHTML spec? I'd hope that we can move towards Strict themes, rather than encouraging Tradionational ones!
Quote from: eldʌkaː on September 27, 2007, 10:21:38 PM
If people are including custom language files, can they please get those files to require() the default theme's language files too?
Would this be a viable way to not force users to edit the default Modifications.english.php file? Does the language file utilize SMF variables (e.g. $themeurl)?
QuoteWould this be a viable way to not force users to edit the default Modifications.english.php file? Does the language file utilize SMF variables (e.g. $themeurl)?
When are users being forced to edit it?
Quote from: eldʌkaː on September 27, 2007, 10:21:38 PMAlso, why not just say that the themes must validate against a current HTML or XHTML spec? I'd hope that we can move towards Strict themes, rather than encouraging Tradionational ones!
I'm all for Strict themes, but until all browsers render Strict consistently then I feel a requirement for strict is a little way off. I know I've got content that render WC3 strict correctly in IE, but doesn't in Firefox/Opera, and/or the other way around.
Strict vs transitional won't make a difference with IE, it uses the same rendering engine for both.
If they install a mod, and your theme has a Modifications.english.php language file for some of its features, they are forced to copy the information from the SMF core theme to the custom theme.
Well yep that's when it would be better to include/require the default language files.
graxxx
Question, I'm making a theme that references a particular OS. It will use a lot of the images that are found in the OS and other public areas. Is that allowable for public release? I don't think I'll be able to contact whoever to get 'permission' to use their images. Would it be in the common domain enough for public use?
Also what would be the best way to call the default Modifications.english.php file from inside a theme specific file?
The Default Modifications.english.php file is called anyway. But if you plan on using custom strings then we recommend using ThemeStrings.language.php and call that instead.
Bloc does it by adding
// load custom language strings
loadLanguage('ThemeStrings');
to the template_init() function.
As for references to the OS, personally, I'm cool as long as there's a disclaimer.
Ah, so ThemeStrings.{language}.php is called as well, so no need real need to include a Modifications.{language}.php file in a custom theme. Just put any custom theme $txt[] entries in there. That is certainly easier. Thx.
How would I go about putting a disclaimer? and where abouts would I put it? As I've done most customization to icons and images myself, but when dealing with a specific product you can't really use anything other than their actual logo for bases, etc.
Quote from: Rumbaar on November 25, 2007, 07:15:56 PM
How would I go about putting a disclaimer? and where abouts would I put it? As I've done most customization to icons and images myself, but when dealing with a specific product you can't really use anything other than their actual logo for bases, etc.
For a disclaimer just add it near the copyright in index.template.php something like.
Quote
Product X is a copyrighted trademark of Company Y. This site is not affiliated with Company Y, and any content relating to Product X is not authorised by Company Y.
Thats what I use for my sites where Product X is The Simpsons and Company Y is FOX. :P
Fantastic, that sounds perfect. Thank you.
If you're using the actual images, that's almost certainly not allowed (unless certain parts of the OS's graphics have been released freely). If you're making new graphics yourself that look like an OS, then that's fine.
I'm not sure, as there are 'icon' packs released by third parts where I've gotten the base images for some of the content. But it's hard to make say a windows logo any different to the official windows logo. Even if you made it from scratch.
We've had to add a couple new guidelines regarding the usage of other languages, but mostly not effecting the theme itself. Just how you communicate with the Customise team, and the description of your theme on the theme site.
Quote from: Gazmanafc on September 27, 2007, 10:15:40 PM
There have been some questions recently regarding the approval of themes submitted to the Theme Site (http://custom.simplemachines.org/themes), but many of them have a few issues within them and I though we should share.
Here are a few guidelines that themes must follow before we can approve them.
- No Hard coded strings in the templates, and English strings/buttons must be provided by default
All text must be in the language files. If your theme uses new strings not provided by default in SMF then, create a Modifications.language.php file (or create your own ThemeStrings.language.php) in the /languages folder. An English version of any new strings must be provided, but you can include other languages as well if you wish.
- Themes must not violate copyrights
Themes must not be rips of other peoples work, unless copyright authorization is provided. Also themes can not contain javascript and images from other sources. You are allowed to create your own images, or use those in the SMF packaged themes, but you cant use images from other SMF themes or even other software without permission from their authors.
- Templates must contain valid HTML 4.01 or XHTML 1.0 Transitional
Template files must be valid to HTML 4.01 or XHTML 1.0 Transitional. Tags must be in lowercase, and line breaks (<br>) must be closed (<br />), for more information this should help (http://www.w3.org/TR/xhtml1/) for XHTML 1.0 Transitional.
- Only include the edited files
There is no need to include all the template and language files if they have not been edited, SMF will automatically call for the default template if the template is not present in your theme. The same for language files, the only language file that is required is Settings.language.php
- Easy Readability For Quick Editing
Themes must have readable code and conform to SMF coding guidelines as much as possible. For example you shouldn't have a whole stylesheet class on one line.
- Theme descriptions must be in English:
For a vast majority of users, English is the first language spoken and in most cases the only language spoken. For this reason, the English description must be listed first. However, other languages may be provided below, and must be labeled to which language it is.
- If you're contacted about any of the above points:
If you get contacted about any of the above points from the Customize Team, then your response must be in English. If it is NOT in English, you may be contacted again for an English translation. Contact the local moderator of your language for a translation if you need help. Also please be aware that all non-English replies will place your theme at the end of the approval list.
Thanks
Tema Kabul Şartları (Turkish) (http://www.simplemachines.org/community/index.php?topic=205738.0)
Vodic za odobrenje Teme (Serbian) (http://www.simplemachines.org/community/index.php?topic=207714.0)
Pedoman Persetujuan Tema (Indonesian) (http://www.simplemachines.org/community/index.php?topic=207858.0)
Auteurs de Thèmes: Directives d'approbation des Thèmes (French) (http://www.simplemachines.org/community/index.php?topic=207913.0)
Linee guida per l' approvazione dei temi (Italian) (http://www.simplemachines.org/community/index.php?topic=208038.0)
Autores de Temas: Regras para Aprovação pelo SMF(Portuguese) (http://www.simplemachines.org/community/index.php?topic=208760.0)
ok I think the topic got de-railed.. i want to know, when you go to the little link to get it "validated" and it shows the errors, how, how do you figure out where the errors are?
i am not understanding this, not one bit. i am trying, but when i search this site on it, i am not pulling up any answers either, at least for a newbie theme dropper offer can understand, or find.
I would love to have my theme up on here, but if i cant understand how this works, then how can i? I am bi polar with adhd, and when i look at the "error page" lol nothing is looking right, and i am totally unhappy. Please, someone make a tut, or something on this, that i can understand, if not for me, for others like me that would like to contribute. i am not a rocket scientist, just me, lol..
thanks for reading this, and hope that the next person to post can have some simple answers.
The validator tells you where they are!
Smoky, its a set of rules the XHTML transitional requires. The validator tells you where the errors are, and usually gives a good explanation of what you missed or need to add. If you need help on this, you can send me the theme ichbin [at] simplemachines [dot] org.
When you validator online, click the 'Show Source' button and Revalidate. It will then give you links to the shown source code so you can see exactly where it is in your source. If it's a local hosted copy, you can use such things like FireFox and Web Developer tool to validate local hosted copies.
lol ICH, i sure will, hold on, they are comming, and thank you very much.. you can expect a tut out of me on this, i can promise.. ;)
Quote from: Rumbaar on December 08, 2007, 02:06:34 AM
When you validator online, click the 'Show Source' button and Revalidate. It will then give you links to the shown source code so you can see exactly where it is in your source. If it's a local hosted copy, you can use such things like FireFox and Web Developer tool to validate local hosted copies.
i dont have it set up like that, Rumbaar.. if i knew how to set up local, i'd love that too.. will try what you are saying too.. i thought bout the tidy clean up thing, but was too nervous as it is on line lol..
Yeah on my test server, the localhost validator is a godsent. Which I only found in the last week :) The good thing with that is that it even does content that would normal be hidden on a normal validation, like things that only show up when logged in.
where did you get the localhost validation?? i think i had a copy somewhere, but i have searched and cant find mine.. of and i have the xamp up now woohoo!! ;)
Well with the Web Developer toolbar for FireFox. Under the Tools options you'll see Validate Local HTML (Ctrl+Shift+A). The benefit of this method, even for live sites, it that it validates the pages current source. So if you are accessing content that is normally hidden to guest (which a normal web validation views as) it will all be validated.
i have that Rumbaar lol.. the dom thing?? ok will check there thanks.. ;)
This is what I'm talking about Web Developer (http://chrispederick.com/work/web-developer/)
yep Rumbaar, i have that.. it shows on the top of my firefox ;) thanks a bunch.. you have really helped me on this.. :D
Quote from: Gazmanafc on September 27, 2007, 10:15:40 PM
- Templates must contain valid HTML 4.01 or XHTML 1.0 Transitional
Template files must be valid to HTML 4.01 or XHTML 1.0 Transitional. Tags must be in lowercase, and line breaks (<br>) must be closed (<br />), for more information this should help (http://www.w3.org/TR/xhtml1/) for XHTML 1.0 Transitional.
You say that themes can be valid HTML 4.01 but also say that tags should be in lower case. I don't think this makes sense Gary, as you know the HTML 4.01 specification allows the use of capital letter tags. I think that either HTML 4.01 shouldn't be allowed or the lower-case rule should be removed.
Take care,
Eren
Also I think if you use self closing tags like <br /> it will no longer be valid HTML 4.01.
Let's just use HTML5.
Why not just create our own HTML standard? :P
Oh we are already. And everyone hates it. Which is why we should shift to a proper one ;)
Quote from: Dannii on January 07, 2008, 12:56:12 AM
Oh we are already. And everyone hates it. Which is why we should shift to a proper one ;)
LOL
its not a massive point but can we ask theme authors to make sure the version tag in the theme_info.xml be the version of smf your forum will work with.
examples:
Accepted
<version>1.1.4</version>
<version>1.1</version>
Disallowed
<version>1</version>
<version>a</version>
Im making my first theme and i got 18 XHTML errors :(
Can somebody help?
The validator will usually tell you what's wrong.
Aha, no errors and submitted ;)
A change and addition to the guidelines has been made. Please make sure you are following the guidelines. Thank you.
Quote from: IchBin™ on June 21, 2008, 04:44:45 PM
A change and addition to the guidelines has been made. Please make sure you are following the guidelines. Thank you.
Would you mind detailing the change?
The two points have been modified like this:
- Themes must not violate copyrights
Authors of themes that make use of resources created by others need to make sure they are respecting the license of those items. If a license for an item you want to use is not posted, you must contact the creator and obtain permission. If a copyright violation is reported about a theme you have posted, the theme will be removed until you fix the infringement. Repeated instances may result in a permanent ban from posting themes.
-Use of Simple Machines default artwork
You have permission to use the artwork that is bundled with SMF for use in custom themes for the system. Use of the artwork in other software must be approved by Simple Machines LLC.
I have a question about attribution. I'll soon be submitting OutlineMulti and I've used some brushes from places like Brusheezy.com
These are free for non-profit use but some of them are under Creative Commons, so require the creators to be given credit. I'm fine with this, in fact I think they deserve it, but as it's a multicolour theme (eight variations currently) there are a few people needing credit and it'd make a pig's breakfast of the standard copyright area in the footer.
Would it be cool to put the attribution in theme.info.xml so that the linkbacks were displayed with the theme details on the selection page under Profile/Look and layout preferences/Current theme ?
There's plenty of space here and it could look cool while still giving credit where it's due.
Thanks. :)
Well I believe that would be ok. Creative Commons doesn't state that the credit should be visible on all the pages of the application. Mostly an included text file giving credit is ok too.
Cool. Personally I'd rather put it in theme.info because that way the public can see the credits, which is after all the whole idea. Otherwise only the admins get to see them. It'll only add another clean line of text under the existing theme description anyway.
You better make sure thats all they require though. :)
Good point. If they require linkback on every page I'll think of some alternative way of displaying it. One possibility would be to have all the credit links shown on a pop-up that's clickable from a single link in the footer. Anyway I'll ask and see what they say. There'll be some way of keeping everyone happy.
One other point had occurred to me as well. I'd like to use a couple (not many) of custom language strings. I know these are meant to go in their own Mods file but if possible I'd prefer to not introduce this as one of the things that's great about Outline is that many mods will install without editing since it's closely based on the default. If I have it right introducing the extra file will mean more messing around for anyone who wants to mod the theme.
Would it be permissible to code them into the theme itself, as long as I provide details of exactly where they are and what the standard string is (in case people would rather use that)?
If that's not ok I'll leave the strings standard and provide info on what I'd use myself and where to put it. Personally I can't support any language other than English anyway.
we actually do prefer them going into languages/ThemeString.language.php (example ThemeStrings.english.php)
for this you just need to add
/* Call to Theme String for language's */
loadLanguage('ThemeStrings');
into the index.template.php most people put it after
/* Show sticky and lock status seperate from topic icons? */
$settings['seperate_sticky_lock'] = true;
so it looks like
/* Show sticky and lock status seperate from topic icons? */
$settings['seperate_sticky_lock'] = true;
/* Call to Theme String for language's */
loadLanguage('ThemeStrings');
and the ThemeStrings.language.php would simply say
<?php
// Version: 1.1; ThemeStrings
$txt['something'] = 'Your Strings set out like this';
?>
not that difficult really :)
Darn wish I'd had that knowledge when I created mine, I use includes to pull the default Modifications.english.php into my custom one. But ThemeStrings method is much better. I might have to go back and 'fix' mine. Thx RunicWarrior.
Awesome. That'll rock and wont cause any dramas with mods. Thanks Runic. I'll do it that way.
I'll get emails out to the creators of the brushes as well so there's no holdups on that front.
ETA: And who's the nutter that thought of the magic llama? ;D
the llama has been out longer than ive been a member it has been around before smf
Quote from: RunicWarrior on July 25, 2008, 08:02:46 PM
we actually do prefer them going into languages/ThemeString.language.php (example ThemeStrings.english.php)
for this you just need to add
/* Call to Theme String for language's */
loadLanguage('ThemeStrings');
into the index.template.php most people put it after
/* Show sticky and lock status seperate from topic icons? */
$settings['seperate_sticky_lock'] = true;
so it looks like
/* Show sticky and lock status seperate from topic icons? */
$settings['seperate_sticky_lock'] = true;
/* Call to Theme String for language's */
loadLanguage('ThemeStrings');
and the ThemeStrings.language.php would simply say
<?php
// Version: 1.1; ThemeStrings
$txt['something'] = 'Your Strings set out like this';
?>
not that difficult really :)
I'm getting something really weird with this. I'll start a separate thread for it.
I'd like to make a request of the Theme Approval team. Would it be possible to check theme zips for Thumbs.db files before approving them? These can bloat a theme zip quite substantially, which makes a difference for people on either slow, dialup connections or on satellite connections that charge ruthlessly for excess usage. Go on. Ask me how I know. ;)
All it'd require is a quick look in the images folder and a message to the theme author. Apart from the upload and download side of it I just have an aversion to unnecessary rubbish in my server and desktop, so I always delete the Thumbs.db files from anything I zip or rar.
PS: Oh yeah, the weirdness mentioned in my previous post was just a parse error. All fixed now.
Got another question: if I submit a theme for approval how stupid a browser does it have to function with?
Reason I'm asking is because the work I'm doing at the moment is all based on Outline and it turns out (just found out today after checking Browsershots.org) that IE_5.5 messes up Outline's layout.
Can I assume that any theme that is fine with IE6 will be ok for approval, as long as it functions with other browsers as well?
I personally only check the big four, with their latest versions (with Firefox being the exception as I still use Firefox 2), Opera, IE 7 (Because of using Vista) and Safari.
Ok, thanks. Those ones are no trouble at all and even most of the obscure ones are fine.
Stand by for more work. ;D
Question re OutlineOmega: when I get the compliance sorted do I just upload another copy on the same page or do I have to notify someone somehow?
you upload and then reply to a previous response from them ;)
Same page :) And please continue theme approval discussions for spesific themes through personal messages.
Ok. I was under the impression that I was not supposed to pm the team. Under what circumstances do you accept pm's without any penalty?
No you can reply to the PM sent to you by the customization team to ask questions. We aren't that fascist :P
So basically if someone starts saying "why wasn't my theme approved yesterday?" you tell them to go.......................themselves, but sane and relevant questions are fine in moderation. Ok. I can do that.
Quote from: antechinus on September 01, 2008, 09:04:33 PM
So basically if someone starts saying "why wasn't my theme approved yesterday?" you tell them to go.......................themselves, but sane and relevant questions are fine in moderation. Ok. I can do that.
Yes quite like that but less polite :P
I know Eren answered this, but I'll go further. :P
If you PM a team member directly that's a no-no unless they specifically say so otherwise. Also, if you send a message to the Customise Team user, then that's okay also. If we contact you about a customisation issue, it will come from the Customise Team user (not the team member who looked at it) then respond only to the customisation team member by clicking Reply/Quote so it gets dealt with quicker on the inside. :P
Jolly good. Might as well throw in one more question then since it does relate to themes in general so there's no reason not to make it public.
I mentioned about a page back about crediting people for their brushes. Turns out they don't like being emailed for permission (checked their profiles on Deviant) and would rather people just used the things without hassling them as long as they get a linkback and props.
In situation like that how do the team deal with it? Do you want links to profiles or whatever so you can read it yourselves or do you take people's word for it?
ETA: By the way I decided to handle all linkbacks via a basic, custom HTML page that links from the footer. That way it's going to be indexed and since the link says "Resources" people are likely to click it.
So when submitting a theme, does it really need to be validated with 0 errors when even this site has a billion errors?
Yes it does. It needs to pass all the guidelines, or we'll contact you to fix them.
Remember that this site runs ads and the code for ads is usually full of validation errors. Doing a theme is not that hard.
thanks for the responses guys.