I should also mention that I was assuming the DB clean-up would be an automatic function triggered by the activate/deactivate hooks (i.e., a &quot;passive&quot; solution).<br><br><div class="gmail_quote">On Sun, Jun 12, 2011 at 10:09 PM, Darren Slatten <span dir="ltr">&lt;<a href="mailto:darrenslatten@gmail.com">darrenslatten@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><div class="im"><blockquote style="margin:0pt 0pt 0pt 6.8ex;border-left:1px solid rgb(204, 204, 204);padding-left:1ex" class="gmail_quote">
<i style="color:rgb(153, 153, 153)">The better solution would be activate/deactivate/delete hooks for 
Themes; I tried to take that on for 3.2, but failed miserably. :/</i><br></blockquote><br></div>My previous message was more or less a solution to the problems that are inherent to activate/deactivate hooks--namely, deleting the theme&#39;s data from the DB would mean the theme options reset to their default values every time you deactivate-and-re-activate a theme. So yes, having those hooks available is a good idea, and it&#39;s something that would complement the solution I was talking about.<div>
<div></div><div class="h5"><br>
<br><br><br><div class="gmail_quote">On Sun, Jun 12, 2011 at 9:45 PM, Doug Stewart <span dir="ltr">&lt;<a href="mailto:zamoose@gmail.com" target="_blank">zamoose@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

This is spot-on. If themes are restricted to one or maybe two options<br>
in the DB, then what sense is there in creating such overbearing<br>
complexity?<br>
<div><br>
On Sun, Jun 12, 2011 at 9:34 PM, Chip Bennett &lt;<a href="mailto:chip@chipbennett.net" target="_blank">chip@chipbennett.net</a>&gt; wrote:<br>
</div><div><div></div><div>&gt; I must say: I don&#39;t really understand this rule suggestion. I don&#39;t see the<br>
&gt; problem with setting default options, as opposed to adding in a bunch of<br>
&gt; conditional code in the Theme template files, in order to account for unset<br>
&gt; options.<br>
&gt; I&#39;m not even sure I would suggest this approach as a &quot;best practice&quot;, given<br>
&gt; the amount of additional code/processing that implementation would require;<br>
&gt; setting default options is just more efficient.<br>
&gt;<br>
&gt; We already require that Themes use an options array as the single entry in<br>
&gt; wp_options; so we&#39;re minimizing Theme DB clutter. It&#39;s true that Theme<br>
&gt; reviewers will have a lot of such DB entries; but I don&#39;t think we should be<br>
&gt; making universal rules based on an incredibly niche sub-set of Theme users.<br>
&gt; Chip<br>
&gt;<br>
&gt; On Sun, Jun 12, 2011 at 3:26 PM, Otto &lt;<a href="mailto:otto@ottodestruct.com" target="_blank">otto@ottodestruct.com</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; This is just a note about a rule that I think should be added to the<br>
&gt;&gt; theme review process:<br>
&gt;&gt;<br>
&gt;&gt; - Themes should not do anything to the database merely by virtue of<br>
&gt;&gt; being activated.<br>
&gt;&gt;<br>
&gt;&gt; By that, I mean that having a theme check for a setting, like<br>
&gt;&gt; get_option or get_theme_mod and then calling set_option or<br>
&gt;&gt; set_theme_mod to set it to some default is wrong.<br>
&gt;&gt;<br>
&gt;&gt; Both get_option and get_theme_mod accept a second parameter of a<br>
&gt;&gt; default setting. If I call get_option(&#39;whatever&#39;,123) and there is no<br>
&gt;&gt; whatever option, then that will return 123.<br>
&gt;&gt;<br>
&gt;&gt; Use the defaults properly. Don&#39;t set them just because they&#39;re not there.<br>
&gt;&gt;<br>
&gt;&gt; -Otto<br>
&gt;&gt; _______________________________________________<br>
&gt;&gt; theme-reviewers mailing list<br>
&gt;&gt; <a href="mailto:theme-reviewers@lists.wordpress.org" target="_blank">theme-reviewers@lists.wordpress.org</a><br>
&gt;&gt; <a href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers" target="_blank">http://lists.wordpress.org/mailman/listinfo/theme-reviewers</a><br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; theme-reviewers mailing list<br>
&gt; <a href="mailto:theme-reviewers@lists.wordpress.org" target="_blank">theme-reviewers@lists.wordpress.org</a><br>
&gt; <a href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers" target="_blank">http://lists.wordpress.org/mailman/listinfo/theme-reviewers</a><br>
&gt;<br>
&gt;<br>
<br>
<br>
<br>
</div></div>--<br>
<font color="#888888">-Doug<br>
</font><div><div></div><div>_______________________________________________<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>
</div></div></blockquote></div><br>
</div></div></blockquote></div><br>