<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
<title></title>
</head>
<body text="#000000" bgcolor="#ffffff">
That's not really theme territory though. If you wanted to do
something that fixed other plugins' issues with inappropriately
loading scripts/styles, you should create a plugin to do that.<br>
<br>
Or, if you know of a plugin doing things the wrong way, send a
polite note or patch to the plugin author.<br>
<br>
On 6/29/2011 4:13 PM, Gmail wrote:
<blockquote
cite="mid:68F9F09B-C457-45F5-9F22-2585D18013AC@gmail.com"
type="cite">
<div>So...a better approach would be what? Rewrite all plugins
that don't follow best practices?</div>
<div><br>
</div>
<div>That still wouldn't address issues like client-side load
order (e.g. to optimize page load times).</div>
<div><br>
</div>
<div>A real example where wp_head filtering is useful is in
conjunction with the Contact Form 7 plugin. By default, enabling
that plugin would insert a CSS file and script into the head of
every page. With a custom filter and a conditional statement, I
can make sure only the contact form page loads those resources.</div>
<div><br>
</div>
<div>In many cases, this can also be achieved "more elegantly" by
removing hooked functions, but filtering the output buffer
(i.e., working with regex) is much faster/easier than digging
through plugins, searching for the custom function code that
hooked into wp_head.</div>
<div><br>
-Darren Slatten</div>
<div><br>
On Jun 29, 2011, at 1:44 PM, Chip Bennett <<a
moz-do-not-send="true" href="mailto:chip@chipbennett.net">chip@chipbennett.net</a>>
wrote:<br>
<br>
</div>
<blockquote type="cite">
<div>I think you have that approach exactly backwards. Plugins
should be looking after themselves, by hooking properly into
appropriate hooks. Theme and Plugins should mostly stay out of
one another's way.
<div><br>
</div>
<div>
If Theme and Plugins all enqueue jQuery properly, then there
will *never* be duplicate jQuery scripts enqueued.</div>
<div><br>
</div>
<div>Chip</div>
<div><br>
<div class="gmail_quote">On Wed, Jun 29, 2011 at 11:45 AM,
Gmail <span dir="ltr"><<a moz-do-not-send="true"
href="mailto:darrenslatten@gmail.com">darrenslatten@gmail.com</a>></span>
wrote:<br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt
0.8ex; border-left: 1px solid rgb(204, 204, 204);
padding-left: 1ex;">I use output buffering on wp_head()
and wp_footer(), in order to give my theme complete
control over them. Since most plugins hook onto these,
they can become cluttered with scripts and CSS file
links. By using OB and a custom filter, I can do things
like (1) remove duplicate jQuery scripts, and (2)
optimize the order that CSS and scripts are loaded in.
Essentially this gives my theme the final say in what
resources are loaded into the page, allowing me to
"clean up after" plugins.<br>
<br>
-Darren Slatten<br>
<div>
<div class="h5"><br>
On Jun 29, 2011, at 10:12 AM, Vicky Arulsingam <<a
moz-do-not-send="true"
href="mailto:vicky.arulsingam@gmail.com">vicky.arulsingam@gmail.com</a>>
wrote:<br>
<br>
> I've asked the theme author to explain the
usage. If there's a valid<br>
> use for it then it should be allowed but I
haven't a clue how.<br>
><br>
> On 6/29/11, Ryan Hellyer <<a
moz-do-not-send="true"
href="mailto:ryan@pixopoint.com">ryan@pixopoint.com</a>>
wrote:<br>
>> There are many reasons to use output
buffering (ob_start etc), but<br>
>> they would rarely be used within a theme.
I've seen themes which use<br>
>> buffering as a way to dynamically minify
the markup, but that's a<br>
>> horrid way to do it - much better
incorporated within a caching plugin<br>
>> IMO.<br>
>><br>
>> There may be a practical use for output
buffer in a theme, but I'm<br>
>> darned if I can think of a good example. I
wouldn't want to see it<br>
>> banned outright, as someone may come up
with a cunning use for it that<br>
>> none of us have thought of.<br>
>><br>
>> Perhaps the theme check plugin could check
for output buffering<br>
>> functions and leave a request for the theme
developer to provide a<br>
>> reason for using it? That way they'll know
it's non-standard and<br>
>> provide a reason (good or bad) for the
theme reviewers to read. Could<br>
>> potentially save a little to and fro'ing in
the future. Just an idea.<br>
>>
_______________________________________________<br>
>> theme-reviewers mailing list<br>
>> <a moz-do-not-send="true"
href="mailto:theme-reviewers@lists.wordpress.org">theme-reviewers@lists.wordpress.org</a><br>
>> <a moz-do-not-send="true"
href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers">http://lists.wordpress.org/mailman/listinfo/theme-reviewers</a><br>
>><br>
><br>
><br>
> --<br>
> -----<br>
> Vicky Arulsingam<br>
> _______________________________________________<br>
> theme-reviewers mailing list<br>
> <a moz-do-not-send="true"
href="mailto:theme-reviewers@lists.wordpress.org">theme-reviewers@lists.wordpress.org</a><br>
> <a moz-do-not-send="true"
href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers">http://lists.wordpress.org/mailman/listinfo/theme-reviewers</a><br>
_______________________________________________<br>
theme-reviewers mailing list<br>
<a moz-do-not-send="true"
href="mailto:theme-reviewers@lists.wordpress.org">theme-reviewers@lists.wordpress.org</a><br>
<a moz-do-not-send="true"
href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers">http://lists.wordpress.org/mailman/listinfo/theme-reviewers</a><br>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</div>
</blockquote>
<blockquote type="cite">
<div><span>_______________________________________________</span><br>
<span>theme-reviewers mailing list</span><br>
<span><a moz-do-not-send="true"
href="mailto:theme-reviewers@lists.wordpress.org">theme-reviewers@lists.wordpress.org</a></span><br>
<span><a moz-do-not-send="true"
href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers">http://lists.wordpress.org/mailman/listinfo/theme-reviewers</a></span><br>
</div>
</blockquote>
<pre wrap="">
<fieldset class="mimeAttachmentHeader"></fieldset>
_______________________________________________
theme-reviewers mailing list
<a class="moz-txt-link-abbreviated" href="mailto:theme-reviewers@lists.wordpress.org">theme-reviewers@lists.wordpress.org</a>
<a class="moz-txt-link-freetext" href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers">http://lists.wordpress.org/mailman/listinfo/theme-reviewers</a>
</pre>
</blockquote>
</body>
</html>