<div dir="ltr">One thing I would add to the standard naming of third party scripts is that if it is dependant on jQuery then it should include jquery in the handle. e.g. FitVids would be jquery-fitvids. This is what WP core does.<div>

<br></div><div>Scenario 3 - I am not sure why a plugin would need to enqueue a font. If there was a point where a plugin was enqueuing the same font then the user could easily dequeue the font and also contact the plugin/theme developer to see if the handle could be changed.</div>

<div><br></div><div>Interesting Fact: WordPress core loads open-sans font. If your theme is using it then you can just use the handle 'open-sans'.</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">

On 13 May 2014 16:41, Justin Tadlock <span dir="ltr"><<a href="mailto:justin@justintadlock.com" target="_blank">justin@justintadlock.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div dir="ltr"><div>What Chip said.  Some other general guidelines to follow:</div><div><br></div><div>* The handle should be the script name in all lowercase.</div><div>* If the script name is more than one word, hyphenate them in the handle.</div>


<div><br></div><div>These conventions follow WP core, so that will help decrease the chances of double-loading a file.</div></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><br><div class="gmail_quote">

On Tue, May 13, 2014 at 8:02 AM, Chip Bennett <span dir="ltr"><<a href="mailto:chip@chipbennett.net" target="_blank">chip@chipbennett.net</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Here's what I would suggest:<div><br></div><div>1. If a script or stylesheet is custom to the Theme, then it should use a Theme-specific prefix</div>


<div>2. If the script/stylesheet is bundled with core, it should use the core-registered handle</div>
<div>3. If the script/stylesheet is an otherwise third-party resource, I would suggest merely using the script/stylesheet slug as the handle.</div><div><br></div><div>In the third case, there's no standard, so there's no way to ensure that the script/stylesheet won't get double-enqueued, no matter what you do. But by *not* prefixing it, you maximize the likelihood that a Plugin attempting to register the same script/stylesheet will use the same handle.</div>



<div><br></div><div>The point about namespacing in Themes is that it applies to things that are *custom* to the Theme: Theme-defined functions, variables, constants, transients, meta data, stylesheets, scripts, etc. A bundled, third-party script or stylesheet isn't custom to the Theme.</div>



</div><div><div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, May 13, 2014 at 8:55 AM, mudthemes support <span dir="ltr"><<a href="mailto:contact@mudthemes.com" target="_blank">contact@mudthemes.com</a>></span> wrote:<br>



<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Well thanks for replying but my question is a bit different from the answer. Here it goes:<br>
<br>
# Scenario 1:<br>
<br>
Suppose Theme ABC enqueues a script which is a publicly available Javascript library (suppose 'tabulous.js'). The handle theme uses to enqueue the script is 'theme_slug_tabulous' and not 'tabulous'.<br>




<br>
In this case if another plugin also enqueues 'tabulous.js' then the theme will output two different tabulous.js files.<br>
<br>
Question: In case of a publicly available library, shouldn't the theme must use 'tabulous' instead of prefixing the theme slug.<br>
<br>
<br>
# Scenario 2:<br>
<br>
Another Theme XYZ enqueues a custom made javascript code with handle such as 'responsive' (without the theme-slug prefix).<br>
<br>
Question: In this case, should not the theme prefix the handle?<br>
<br>
<br>
# Scenario 3:<br>
<br>
Different themes use different handles to enqueue Google fonts such as 'Google-font-x'. Now this could create trouble when the same fonts are also enqueues via a plugin.<br>
<br>
Question: Is there any way to define a specific handle for a specific Google font and reduce the issue of duplicacy.<br>
<br>
<br>
Any suggestions, Thanks in Advance.<br>
<br>
<br>
<br>
<br>
<br>
<br>
On 2014-05-13 07:27, Emil Uzelac wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
INCLUDING STYLESHEETS AND SCRIPTS # [2]<br>
<br>
        * Themes are REQUIRED to enqueue all stylesheets and scripts,<br>
using wp_enqueue_style() [3]/wp_enqueue_script() [4], and hooked into<div><br>
an appropriate hook via callback function, rather than hard-coding<br>
stylesheet/script links or tags in the template.<br>
<br></div>
        * Themes are REQUIRED to use the Theme-specific hook for<br>
admin-enqueued scripts/stylesheets, e.g.<br>
admin_print_scripts-<u></u>appearance_page_$menu_slug<br>
        * Themes are RECOMMENDED to hook stylesheet and script enqueue<br>
callbacks into `wp_enqueue_scripts`<br>
        * Themes may OPTIONALLY link the default stylesheet (style.css)<div><br>
directly in the document head, or via wp_enqueue_style(). Whichever<br>
method is used, the default stylesheet must be referenced<br></div>
via get_stylesheet_uri() [5]<br>
<br>
        * Themes are REQUIRED to use core-bundled scripts, if using such<div><br>
scripts<br>
<br>
On Tue, May 13, 2014 at 2:58 AM, mudthemes support<br>
<<a href="mailto:contact@mudthemes.com" target="_blank">contact@mudthemes.com</a>> wrote:<br>
<br>
</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div>
A question regarding enqueuing script, style & Google fonts. When<br>
enqueuing them in a theme, the handle prefix should be what?<br>
<br>
1. JS Scripts and CSS files<br>
i) For publicly available libraries?<br>
ii) For custom created codes?<br>
<br>
2. Google Fonts<br>
1) When enqueued using <link> tag.<br>
<br>
Any suggestions, please?<br>
______________________________<u></u>_________________<br>
theme-reviewers mailing list<br>
<a href="mailto:theme-reviewers@lists.wordpress.org" target="_blank">theme-reviewers@lists.<u></u>wordpress.org</a><br>
</div><a href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers" target="_blank">http://lists.wordpress.org/<u></u>mailman/listinfo/theme-<u></u>reviewers</a> [1]<br>
</blockquote>
<br>
<br>
<br>
Links:<br>
------<br>
[1] <a href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers" target="_blank">http://lists.wordpress.org/<u></u>mailman/listinfo/theme-<u></u>reviewers</a><br>
[2]<br>
<a href="http://make.wordpress.org/docs/theme-developer-handbook/releasing-your-theme/theme-review-guidelines/#including-stylesheets-and-scripts" target="_blank">http://make.wordpress.org/<u></u>docs/theme-developer-handbook/<u></u>releasing-your-theme/theme-<u></u>review-guidelines/#including-<u></u>stylesheets-and-scripts</a><br>




[3]<br>
<a href="http://make.wordpress.org/docs/theme-developer-handbook/releasing-your-theme/theme-review-guidelines/Function_Reference/wp_enqueue_style" target="_blank">http://make.wordpress.org/<u></u>docs/theme-developer-handbook/<u></u>releasing-your-theme/theme-<u></u>review-guidelines/Function_<u></u>Reference/wp_enqueue_style</a><br>




[4]<br>
<a href="http://make.wordpress.org/docs/theme-developer-handbook/releasing-your-theme/theme-review-guidelines/Function_Reference/wp_enqueue_script" target="_blank">http://make.wordpress.org/<u></u>docs/theme-developer-handbook/<u></u>releasing-your-theme/theme-<u></u>review-guidelines/Function_<u></u>Reference/wp_enqueue_script</a><br>




[5]<br>
<a href="http://make.wordpress.org/docs/theme-developer-handbook/releasing-your-theme/theme-review-guidelines/Function_Reference/get_stylesheet_uri" target="_blank">http://make.wordpress.org/<u></u>docs/theme-developer-handbook/<u></u>releasing-your-theme/theme-<u></u>review-guidelines/Function_<u></u>Reference/get_stylesheet_uri</a><div>



<br>
<br>
______________________________<u></u>_________________<br>
theme-reviewers mailing list<br>
<a href="mailto:theme-reviewers@lists.wordpress.org" target="_blank">theme-reviewers@lists.<u></u>wordpress.org</a><br>
<a href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers" target="_blank">http://lists.wordpress.org/<u></u>mailman/listinfo/theme-<u></u>reviewers</a><br>
</div></blockquote><div><div>
______________________________<u></u>_________________<br>
theme-reviewers mailing list<br>
<a href="mailto:theme-reviewers@lists.wordpress.org" target="_blank">theme-reviewers@lists.<u></u>wordpress.org</a><br>
<a href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers" target="_blank">http://lists.wordpress.org/<u></u>mailman/listinfo/theme-<u></u>reviewers</a><br>
</div></div></blockquote></div><br></div>
</div></div><br>_______________________________________________<br>
theme-reviewers mailing list<br>
<a href="mailto:theme-reviewers@lists.wordpress.org" target="_blank">theme-reviewers@lists.wordpress.org</a><br>
<a href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers" target="_blank">http://lists.wordpress.org/mailman/listinfo/theme-reviewers</a><br>
<br></blockquote></div><br></div>
</div></div><br>_______________________________________________<br>
theme-reviewers mailing list<br>
<a href="mailto:theme-reviewers@lists.wordpress.org">theme-reviewers@lists.wordpress.org</a><br>
<a href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers" target="_blank">http://lists.wordpress.org/mailman/listinfo/theme-reviewers</a><br>
<br></blockquote></div><br></div>