<div dir="ltr">There is a much better way; in fact, if the Theme is saving default option settings to the database, it is inherently _doing_it_wrong().<div><br></div><div>Try this, instead:</div><div><br></div><div><blockquote style="margin:0px 0px 0px 40px;border:none;padding:0px">
<div><span class="" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:18px;white-space:pre">wp_parse_args</span><span class="" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:18px;white-space:pre">(</span><span style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:18px;white-space:pre"> </span><span class="" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:18px;white-space:pre">get_option</span><span class="" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:18px;white-space:pre">(</span><span style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:18px;white-space:pre"> </span><span class="" style="color:rgb(221,17,68);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:18px;white-space:pre">'theme_themeslug_options'</span><span class="" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:18px;white-space:pre">,</span><span style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:18px;white-space:pre"> </span><span class="" style="font-weight:bold;color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:18px;white-space:pre">array</span><span class="" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:18px;white-space:pre">()</span><span style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:18px;white-space:pre"> </span><span class="" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:18px;white-space:pre">),</span><span style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:18px;white-space:pre"> </span><span class="" style="color:rgb(0,128,128);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:18px;white-space:pre">$option_default_values</span><span style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:18px;white-space:pre"> </span><span class="" style="color:rgb(51,51,51);font-family:Consolas,'Liberation Mono',Courier,monospace;font-size:12px;line-height:18px;white-space:pre">);</span></div>
</blockquote></div><div><br></div><div>(Side note: "theme_options" is not an appropriately namespaced option name.)</div><div><br></div><div>This is but one of a few ways to handle the use of (as Otto would say) sane defaults. I've been considering proposing a change to the Guidelines that would prohibit Themes from saving default options to the database. The only way option settings should ever get saved to the database is when the *user* does so.  </div>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Oct 24, 2013 at 4:30 AM, Towfiq I. <span dir="ltr"><<a href="mailto:tislam100@gmail.com" target="_blank">tislam100@gmail.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">Are we allowed to use:<div><br></div><div><b>if (is_admin() && isset($_GET['activated'] ) && $pagenow == "themes.php" ) {</b><b>}</b></div>
<div><b><br></b></div><div><b><br>
</b></div><div><b>example:</b></div><div><b>---------------------<br></b>if (is_admin() && isset($_GET['activated'] ) && $pagenow == "themes.php" ) {<div>  $option_default_values = array(</div>

<div>"block1_text_id" => "Lorem Ipsum",<br></div><div>"block1_textarea_id" => "Lorem Ipsum blah blah blah");<br></div><div><br></div><div>update_option('theme_options', $option_default_values);<br>

</div><div>}<br clear="all"><div>--------------------------</div><div><br></div><div>if we are not, what should we use instead? </div><div>after_setup_theme doesnt work btw. </div><div><br></div><div>or should we use after_switch_theme?</div>

<div><br></div><div>Thanks</div><span class="HOEnZb"><font color="#888888">-- <div><span style="color:rgb(153,153,153)">Towfiq I.</span><br>
</div></font></span></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>