I would like to add to Justin&#39;s suggestion and highlight that the uninstall hook should be treated differently from the deactivation hook.<br><br>The problem with forcing cleanup on a deactivation hook is that occasionally the WP servers hand out bad copies of themes (I have had that happen quite a few times on my theme, where users sporadically report broken downloads - the fix involved Otto rebuilding the download on the faulty server). Depending on what got downloaded, WP either automatically deactivates the theme (e.g. missing or broken style.css) and defaults to TwentyTen, or the user gets a white screen (missing or broken functions.php). In the former at least, having a deactivation hook do cleanups is fraught with the user losing hours of work, because the switch to TwentyTen happens without the user intending to do it.<br>
<br>Hence cleanup of options should be introduced only upon uninstall, and not deactivation.<br><br><div class="gmail_quote">On Mon, Jun 13, 2011 at 8:10 PM, Justin Tadlock <span dir="ltr">&lt;<a href="mailto:justin@justintadlock.com">justin@justintadlock.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><u></u>

  
    
  
  <div text="#000000" bgcolor="#ffffff">
    The problem with themes cleaning up after themselves is simply that
    there&#39;s no uninstall hook.  Once we get that (plus some
    activate/deactivate hooks), I&#39;d have no problem in setting some
    repository rules for themes to delete options on uninstall.<br>
    <br>
    As far as using the $default parameter of get_option() and not
    setting defaults, that can be good practice.  However, I see no
    reason themes shouldn&#39;t be setting up some defaults using
    add_option().  Of course, there&#39;s no activation hook, so some theme
    authors are just dropping some code into functions.php instead of
    using a hook (load-themes.php might be a good one) to auto-set
    default options.<div><div></div><div class="h5"><br>
    <br>
    On 6/12/2011 10:06 PM, Emil Uzelac wrote:
    <blockquote type="cite"><font color="#333333"><font size="2"><font face="arial,helvetica,sans-serif">Or for future release of
            WP when Theme is deleted all that was associated with that
            specific Theme gets deleted as well. Not all Authors will
            comply with WP guides and not all Themes are downloaded from
            the repository.<br clear="all">
          </font></font></font>
      <div>
        <div><font face="arial, helvetica, sans-serif"><br>
          </font></div>
        <div><font face="arial, helvetica, sans-serif">----</font></div>
        <div><font face="arial, helvetica, sans-serif"><b>Emil
              Uzelac</b> | ThemeID | T: <a href="tel:224-444-0006" value="+12244440006" target="_blank">224-444-0006</a> | Twitter:
            @EmilUzelac | E: <a href="mailto:emil@themeid.com" target="_blank">emil@themeid.com</a>
            | <a href="http://themeid.com/" target="_blank">http://themeid.com</a></font></div>
        <div><font color="#999999" face="arial, helvetica, sans-serif">Make
            everything as simple as possible, but not simpler. - Albert
            Einstein</font></div>
        <br>
        <br>
        <br>
        <div class="gmail_quote">On Sun, Jun 12, 2011 at 10:03 PM,
          Angelo Bertolli <span dir="ltr">&lt;<a href="mailto:angelo.bertolli@gmail.com" target="_blank">angelo.bertolli@gmail.com</a>&gt;</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">
            <div>On 6/12/2011 10:59 PM, Syahir Hakim 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 don&#39;t think it&#39;s only the theme reviewers who are
                installing and<br>
                trying a lot of themes. It is not unusual at all for
                regular or<br>
                first-timer WP users to try a lot of themes before they
                settle on one<br>
                that they really like. Trying more than 10 themes is
                quite normal for a<br>
                first-timer WP user, I think, and some of my theme users
                even reported<br>
                that they&#39;ve tried 40+ themes.<br>
              </blockquote>
              <br>
            </div>
            It sounds like WP should have a way of forcing options to be
            associated with their themes, and cleanup options that are
            independant of theme code.  For example add_option would
            automatically associate the option with a particular theme,
            maybe by directory name.  Then after such a theme no longer
            exists or is deactivated, WP presents an option to &quot;clean up
            theme options for theme X&quot;
            <div>
              <div><br>
                <br>
                <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>
              </div>
            </div>
          </blockquote>
        </div>
        <br>
      </div>
      <pre><fieldset></fieldset>
_______________________________________________
theme-reviewers mailing list
<a href="mailto:theme-reviewers@lists.wordpress.org" target="_blank">theme-reviewers@lists.wordpress.org</a>
<a href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers" target="_blank">http://lists.wordpress.org/mailman/listinfo/theme-reviewers</a>
</pre>
    </blockquote>
  </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><br clear="all"><br>-- <br>Sayontan Sinha<br><a href="http://mynethome.net" target="_blank">http://mynethome.net</a> | <a href="http://mynethome.net/blog" target="_blank">http://mynethome.net/blog</a><br>
--<br>Beating Australia in Cricket is like killing a celebrity. The death gets more coverage than the crime.<br><br>