<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=iso-8859-1" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 8.00.6001.18928">
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT size=2 face=Arial>If you have any links that you would like added to 
the make.wordpress.org/themes site, sure pass em over</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT>&nbsp;</DIV>
<DIV><FONT size=2 face=Arial>i'll see who'se handling those pages and talk to 
them about it</FONT></DIV>
<DIV><FONT size=2 face=Arial></FONT>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<BLOCKQUOTE 
style="BORDER-LEFT: #000000 2px solid; PADDING-LEFT: 5px; PADDING-RIGHT: 0px; MARGIN-LEFT: 5px; MARGIN-RIGHT: 0px">
  <DIV style="FONT: 10pt arial">----- Original Message ----- </DIV>
  <DIV 
  style="FONT: 10pt arial; BACKGROUND: #e4e4e4; font-color: black"><B>From:</B> 
  <A title=rahul286@gmail.com href="mailto:rahul286@gmail.com">Rahul Bansal</A> 
  </DIV>
  <DIV style="FONT: 10pt arial"><B>To:</B> <A 
  title=theme-reviewers@lists.wordpress.org 
  href="mailto:theme-reviewers@lists.wordpress.org">theme-reviewers@lists.wordpress.org</A> 
  </DIV>
  <DIV style="FONT: 10pt arial"><B>Sent:</B> Monday, January 24, 2011 11:49 
  PM</DIV>
  <DIV style="FONT: 10pt arial"><B>Subject:</B> Re: [theme-reviewers] 
  add_theme_page()</DIV>
  <DIV><BR></DIV>Really good - added to our internal wiki. We all will be surely 
  using this way only going ahead! :-)
  <DIV>
  <DIV><BR></DIV>
  <DIV>@WPTRT</DIV>
  <DIV>Just a&nbsp;suggestion&nbsp;- if such tutorials can be collected 
  somewhere for easy reference and then everytime you recommends something, you 
  may share a link to alternative (and better) solution that is 
acceptable.</DIV>
  <DIV>I know this will be extra work for you so a page on codex may be devoted 
  for this where dev may find quick-help.<BR>
  <DIV><BR clear=all>--<BR>Rahul Bansal | Founder &amp; CEO | rtCamp Solutions 
  Pvt. Ltd.<BR>Mobile: +91-9860501882 | Web: <A href="http://rtcamp.com/" 
  target=_blank>http://rtcamp.com/</A><BR><BR><BR><BR>
  <DIV class=gmail_quote>On Tue, Jan 25, 2011 at 8:11 AM, Amy <SPAN 
  dir=ltr>&lt;<A href="mailto:sabreuse@gmail.com" 
  target=_blank>sabreuse@gmail.com</A>&gt;</SPAN> wrote:<BR>
  <BLOCKQUOTE 
  style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" 
  class=gmail_quote>
    <DIV bgcolor="#FFFFFF">
    <DIV>Fantastic tutorial, Daniel - definitely one that I'll be coming back 
    to.&nbsp;
    <DIV>
    <DIV></DIV>
    <DIV><BR><BR>On Jan 24, 2011, at 9:07 PM, Josh Stauffer &lt;<A 
    href="mailto:joshstauffer@gmail.com" 
    target=_blank>joshstauffer@gmail.com</A>&gt; 
wrote:<BR><BR></DIV></DIV></DIV>
    <DIV>
    <DIV></DIV>
    <DIV>
    <DIV></DIV>
    <BLOCKQUOTE type="cite">
      <DIV>
      <DIV>And a tweet from me.</DIV><BR clear=all>Josh<BR><BR><BR>
      <DIV class=gmail_quote>On Mon, Jan 24, 2011 at 7:38 PM, Edward Caissie 
      <SPAN dir=ltr>&lt;<A href="mailto:edward.caissie@gmail.com" 
      target=_blank></A><A href="mailto:edward.caissie@gmail.com" 
      target=_blank>edward.caissie@gmail.com</A>&gt;</SPAN> wrote:<BR>
      <BLOCKQUOTE 
      style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" 
      class=gmail_quote>Added a Tweet, too ...
        <DIV>
        <DIV></DIV>
        <DIV><BR><BR>
        <DIV class=gmail_quote>On Mon, Jan 24, 2011 at 6:55 PM, Emil Uzelac 
        <SPAN dir=ltr>&lt;<A href="mailto:emil@themeid.com" target=_blank></A><A 
        href="mailto:emil@themeid.com" 
        target=_blank>emil@themeid.com</A>&gt;</SPAN> wrote:<BR>
        <BLOCKQUOTE 
        style="BORDER-LEFT: rgb(204,204,204) 1px solid; MARGIN: 0pt 0pt 0pt 0.8ex; PADDING-LEFT: 1ex" 
        class=gmail_quote>
          <DIV>Good job, tweeted as well :)</DIV>
          <DIV><BR clear=all>&nbsp;</DIV>
          <DIV><FONT size=1><B>Emil Uzelac</B> | ThemeID | T: 224-444-0006 | 
          Twitter: <A href="http://twitter.com/emiluzelac" 
          target=_blank>@EmilUzelac</A> | E: </FONT><A 
          href="mailto:emil@themeid.com" target=_blank><FONT 
          size=1>emil@themeid.com</FONT></A><FONT size=1> | </FONT><A 
          href="http://themeid.com/" target=_blank><FONT 
          size=1>http://themeid.com</FONT></A></DIV>
          <DIV><FONT size=1><FONT color=#666666><I>Make everything as simple as 
          possible, but not simpler.</I> - Albert Einstein</FONT></FONT></DIV>
          <DIV>
          <DIV></DIV>
          <DIV><BR><BR><BR>
          <DIV class=gmail_quote>On Mon, Jan 24, 2011 at 5:49 PM, Chip Bennett 
          <SPAN dir=ltr>&lt;<A href="mailto:chip@chipbennett.net" 
          target=_blank></A><A href="mailto:chip@chipbennett.net" 
          target=_blank>chip@chipbennett.net</A>&gt;</SPAN> wrote:<BR>
          <BLOCKQUOTE 
          style="BORDER-LEFT: rgb(204,204,204) 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" 
          class=gmail_quote>*jaw drops* 
            <DIV><BR></DIV>
            <DIV>Now *that* is an awesome tutorial! Well done, Daniel!</DIV>
            <DIV><BR></DIV>
            <DIV>(Tweeted)</DIV>
            <DIV><BR></DIV>
            <DIV><FONT color=#888888>Chip</FONT> 
            <DIV>
            <DIV></DIV>
            <DIV><BR><BR>
            <DIV class=gmail_quote>On Mon, Jan 24, 2011 at 5:34 PM, Daniel Tara 
            <SPAN dir=ltr>&lt;<A href="mailto:contact@onedesigns.com" 
            target=_blank></A><A href="mailto:contact@onedesigns.com" 
            target=_blank>contact@onedesigns.com</A>&gt;</SPAN> wrote:<BR>
            <BLOCKQUOTE 
            style="BORDER-LEFT: rgb(204,204,204) 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" 
            class=gmail_quote>
              <DIV lang=EN-US link="blue" vlink="purple">
              <DIV>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">I wrapped this into 
              and article. Hope it helps you and all developers in need out 
              there:</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt"></SPAN>&nbsp;</P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt"><A 
              href="http://www.onedesigns.com/tutorials/separate-multiple-theme-options-pages-using-tabs" 
              target=_blank></A><A 
              href="http://www.onedesigns.com/tutorials/separate-multiple-theme-options-pages-using-tabs" 
              target=_blank>http://www.onedesigns.com/tutorials/separate-multiple-theme-options-pages-using-tabs</A></SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt"></SPAN>&nbsp;</P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt"></SPAN>&nbsp;</P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt"></SPAN>&nbsp;</P>
              <P class=MsoNormal><B><SPAN 
              style="FONT-SIZE: 10pt">From:</SPAN></B><SPAN 
              style="FONT-SIZE: 10pt"> <A 
              href="mailto:theme-reviewers-bounces@lists.wordpress.org" 
              target=_blank></A><A 
              href="mailto:theme-reviewers-bounces@lists.wordpress.org" 
              target=_blank>theme-reviewers-bounces@lists.wordpress.org</A> 
              [mailto:<A 
              href="mailto:theme-reviewers-bounces@lists.wordpress.org" 
              target=_blank></A><A 
              href="mailto:theme-reviewers-bounces@lists.wordpress.org" 
              target=_blank>theme-reviewers-bounces@lists.wordpress.org</A>] 
              <B>On Behalf Of </B>Sayontan Sinha<BR><B>Sent:</B> Monday, January 
              24, 2011 11:24 PM</SPAN></P>
              <DIV>
              <DIV></DIV>
              <DIV><BR><B>To:</B> <A 
              href="mailto:theme-reviewers@lists.wordpress.org" 
              target=_blank></A><A 
              href="mailto:theme-reviewers@lists.wordpress.org" 
              target=_blank>theme-reviewers@lists.wordpress.org</A><BR><B>Subject:</B> 
              Re: [theme-reviewers] add_theme_page()</DIV></DIV>
              <P></P>
              <DIV>
              <DIV></DIV>
              <DIV>
              <P class=MsoNormal>&nbsp;</P>
              <P style="MARGIN-BOTTOM: 12pt" class=MsoNormal>That would be a 
              relief. Let me give it a try.</P>
              <DIV>
              <P class=MsoNormal>On Mon, Jan 24, 2011 at 1:12 PM, Daniel Tara 
              &lt;<A href="mailto:contact@onedesigns.com" target=_blank></A><A 
              href="mailto:contact@onedesigns.com" 
              target=_blank>contact@onedesigns.com</A>&gt; wrote:</P>
              <DIV>
              <DIV>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">Creating tabs is as 
              easy as this:</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt"></SPAN>&nbsp;</P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">function 
              sayontan_admin_tabs( $current = 'general' ) {</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
              $tabs = array( 'general' =&gt; 'General', 'layput' =&gt; 'Layout', 
              'advanced' =&gt; 'Advanced' );</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
              $links = array();</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
              foreach( $tabs as $tab =&gt; $name ) :</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
              if ( $current == $tab ) :</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
              $links[] = "&lt;a class='nav-tab nav-tab-active' 
              href='?page=sayontan_options&amp;tab=$tab'&gt;$name&lt;/a&gt;";</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
              else :</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
              $links[] = "&lt;a class='nav-tab' 
              href='?page=sayontan_options&amp;tab=$tab'&gt;$name&lt;/a&gt;";</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
              endif;</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
              endforeach;</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
              foreach ( $links as $link )</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
              echo $link;</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">}</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt"></SPAN>&nbsp;</P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">if ( isset ( 
              $_GET['tab'] ) ) :</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
              $tab = $_GET['tab'];</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">else:</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
              $tab = 'general';</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">endif;</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">switch ( $tab ) 
              :</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
              case 'general' :</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
              // Whatever</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
              break;</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
              ...</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt">endswitch;</SPAN></P>
              <P class=MsoNormal><SPAN 
              style="COLOR: rgb(31,73,125); FONT-SIZE: 11pt"></SPAN>&nbsp;</P>
              <P class=MsoNormal><B><SPAN 
              style="FONT-SIZE: 10pt">From:</SPAN></B><SPAN 
              style="FONT-SIZE: 10pt"> <A 
              href="mailto:theme-reviewers-bounces@lists.wordpress.org" 
              target=_blank></A><A 
              href="mailto:theme-reviewers-bounces@lists.wordpress.org" 
              target=_blank>theme-reviewers-bounces@lists.wordpress.org</A> 
              [mailto:<A 
              href="mailto:theme-reviewers-bounces@lists.wordpress.org" 
              target=_blank></A><A 
              href="mailto:theme-reviewers-bounces@lists.wordpress.org" 
              target=_blank>theme-reviewers-bounces@lists.wordpress.org</A>] 
              <B>On Behalf Of </B>Sayontan Sinha<BR><B>Sent:</B> Monday, January 
              24, 2011 10:47 PM<BR><B>To:</B> <A 
              href="mailto:theme-reviewers@lists.wordpress.org" 
              target=_blank></A><A 
              href="mailto:theme-reviewers@lists.wordpress.org" 
              target=_blank>theme-reviewers@lists.wordpress.org</A></SPAN></P>
              <DIV>
              <P class=MsoNormal><SPAN 
              style="FONT-SIZE: 10pt"><BR><B>Subject:</B> Re: [theme-reviewers] 
              add_theme_page()</SPAN></P></DIV>
              <P class=MsoNormal>&nbsp;</P>
              <BLOCKQUOTE 
              style="BORDER-BOTTOM: medium none; BORDER-LEFT: 1pt solid; PADDING-BOTTOM: 0in; MARGIN: 5pt 0in 5pt 4.8pt; PADDING-LEFT: 6pt; PADDING-RIGHT: 0in; BORDER-TOP: medium none; BORDER-RIGHT: medium none; PADDING-TOP: 0in">
                <P class=MsoNormal>Ideally, it would still have just one Theme 
                Options page under</P>
                <DIV>
                <DIV>
                <P class=MsoNormal><BR>appearance, and then use tabs or 
                something else on its own page to<BR>separate the options 
                out.</P></DIV></DIV></BLOCKQUOTE>
              <DIV>
              <DIV>
              <P class=MsoNormal><BR>This is much easier said than done. I have 
              been working towards getting tabs in place on one page (multiple 
              calls to add_theme_page makes things look quite ugly), but there 
              are simply too many limitations with the whole API to make this 
              work effectively. Let me try to explain.<BR><BR><B><U>The 
              Scenario:</U></B><BR>My theme has several options. Putting them 
              all on one page causes a lot of issues, like sluggishness of the 
              back-end and interference with PHP-Suhosin protection settings 
              (though Suhosin can be tweaked). I originally had a 2-level tab 
              system, with horizontal tabs at the top for different sections of 
              settings, then vertical tabs within each section (that is similar 
              to the kind of settings that the other folks are talking about). 
              The tabs were all handled by JQuery. This works fine with a small 
              number of options, but with a large number of options, the 
              sluggishness shows up in the back-end. That was when I removed the 
              horizontal tabs at the top level and used add_menu_page and 
              add_submenu_page.<BR><BR>But with the recent enforcements of new 
              rules and recommendations, I have had to do some major rework. I 
              first rewrote the options framework to use the Settings API, but 
              still with add_menu_page and add_submenu_page. Now I am rewriting 
              again to get rid of the additional menu and roll it back to how 
              the look was earlier, but with a difference: the entire set of 
              options will not be loaded into browser memory in JQuery tabs. 
              Instead, I will try to fetch each page as it is clicked, like the 
              Theme Installation page in WP.<BR><BR><B><U>My 
              attempts:</U></B></P>
              <OL type=1>
                <LI class=MsoNormal>I first simply created one options page, 
                then included a set of links at the top. 
                <BR><B><U>Issue:</U></B> Getting the links to behave as 
                belonging within WP. E.g. If your admin panel is at <A 
                href="http://host.com/wp-admin" target=_blank></A><A 
                href="http://host.com/wp-admin" 
                target=_blank>http://host.com/wp-admin</A>, your theme options 
                page could be at <A 
                href="http://host.com/wp-admin/themes.php?page=my-options" 
                target=_blank></A><A 
                href="http://host.com/wp-admin/themes.php?page=my-options" 
                target=_blank>http://host.com/wp-admin/themes.php?page=my-options</A>. 
                The tabs, however cannot be given links through the admin panel. 
                In other words, to get a URL such as <A 
                href="http://host.com/wp-admin/themes.php?page=my-sub-options-1" 
                target=_blank></A><A 
                href="http://host.com/wp-admin/themes.php?page=my-sub-options-1" 
                target=_blank>http://host.com/wp-admin/themes.php?page=my-sub-options-1</A>, 
                I HAVE to use add_theme_page. If I don't use add_theme_page, the 
                page isn't added to the whitelist and will not show up. I cannot 
                use other URLs, because then I will have something like this: <A 
                href="http://host.com/wp-content/themes/my-theme/my-sub-options-1.php" 
                target=_blank></A><A 
                href="http://host.com/wp-content/themes/my-theme/my-sub-options-1.php" 
                target=_blank>http://host.com/wp-content/themes/my-theme/my-sub-options-1.php</A>, 
                which is just not done. 
                <LI class=MsoNormal>To get around the above, I decided to bundle 
                AJAX with the options page. So I have one options page 
                accessible through <A 
                href="http://host.com/wp-admin/themes.php?page=my-options" 
                target=_blank></A><A 
                href="http://host.com/wp-admin/themes.php?page=my-options" 
                target=_blank>http://host.com/wp-admin/themes.php?page=my-options</A>. 
                In there I have 5 links, each of which invokes AJAX to load the 
                specific options page, while staying in <A 
                href="http://host.com/wp-admin/themes.php?page=my-options" 
                target=_blank></A><A 
                href="http://host.com/wp-admin/themes.php?page=my-options" 
                target=_blank>http://host.com/wp-admin/themes.php?page=my-options</A>. 
                This way I only need to whitelist the main 
                page.<BR><B><U>Issue:</U></B> Getting settings_fields() to 
                generate _wp_http_referer different from admin-ajax.php. This is 
                causing options.php to return admin-ajax.php?updated=true, which 
                is not what I want. This is where I am stuck right now, but 
                hopefully I will get over the hurdle soon. </LI></OL>
              <P style="MARGIN-BOTTOM: 12pt" class=MsoNormal>I am looking 
              forward to completing this exercise, so that other developers can 
              learn from my (rather harsh) experience 
              here.<BR><BR>Cheers,<BR>Sayontan.</P>
              <DIV>
              <P class=MsoNormal>On Mon, Jan 24, 2011 at 11:08 AM, Otto &lt;<A 
              href="mailto:otto@ottodestruct.com" target=_blank></A><A 
              href="mailto:otto@ottodestruct.com" 
              target=_blank>otto@ottodestruct.com</A>&gt; wrote:</P>
              <DIV>
              <P style="MARGIN-BOTTOM: 12pt" class=MsoNormal>On Mon, Jan 24, 
              2011 at 1:03 PM, Rahul Bansal &lt;<A 
              href="mailto:rahul286@gmail.com" target=_blank></A><A 
              href="mailto:rahul286@gmail.com" 
              target=_blank>rahul286@gmail.com</A>&gt; wrote:<BR>&gt; What if 
              theme offers so many options that it need to contains 4-5 
              subpages?</P></DIV>
              <P class=MsoNormal>Ideally, it would still have just one Theme 
              Options page under<BR>appearance, and then use tabs or something 
              else on its own page to<BR>separate the options 
              out.<BR><BR>Realistically, I'd say a theme with that many options 
              is too complex<BR>to begin with. Themes should be about the look 
              of the site, not crazy<BR>functionality. Break the functionality 
              parts out into plugins that go<BR>along with the theme or 
              something like that.<BR><SPAN 
              style="COLOR: rgb(136,136,136)"><BR>-Otto</SPAN></P>
              <DIV>
              <DIV>
              <P 
              class=MsoNormal>_______________________________________________<BR>theme-reviewers 
              mailing list<BR><A 
              href="mailto:theme-reviewers@lists.wordpress.org" 
              target=_blank></A><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></A><A 
              href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers" 
              target=_blank>http://lists.wordpress.org/mailman/listinfo/theme-reviewers</A></P></DIV></DIV></DIV>
              <P style="MARGIN-BOTTOM: 12pt" class=MsoNormal><BR><BR 
              clear=all><BR>-- <BR>Sayontan Sinha<BR><A 
              href="http://mynethome.net/" target=_blank></A><A 
              href="http://mynethome.net" target=_blank>http://mynethome.net</A> 
              | <A href="http://mynethome.net/blog" target=_blank></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.</P></DIV></DIV></DIV></DIV>
              <P style="MARGIN-BOTTOM: 12pt" 
              class=MsoNormal><BR>_______________________________________________<BR>theme-reviewers 
              mailing list<BR><A 
              href="mailto:theme-reviewers@lists.wordpress.org" 
              target=_blank></A><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></A><A 
              href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers" 
              target=_blank>http://lists.wordpress.org/mailman/listinfo/theme-reviewers</A></P></DIV>
              <P style="MARGIN-BOTTOM: 12pt" class=MsoNormal><BR><BR 
              clear=all><BR>-- <BR>Sayontan Sinha<BR><A 
              href="http://mynethome.net/" target=_blank></A><A 
              href="http://mynethome.net" target=_blank>http://mynethome.net</A> 
              | <A href="http://mynethome.net/blog" target=_blank></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.</P></DIV></DIV></DIV></DIV><BR>_______________________________________________<BR>theme-reviewers 
              mailing list<BR><A 
              href="mailto:theme-reviewers@lists.wordpress.org" 
              target=_blank></A><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></A><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" 
            target=_blank></A><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></A><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><BR>_______________________________________________<BR>theme-reviewers 
          mailing list<BR><A href="mailto:theme-reviewers@lists.wordpress.org" 
          target=_blank></A><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></A><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><BR>_______________________________________________<BR>theme-reviewers 
        mailing list<BR><A href="mailto:theme-reviewers@lists.wordpress.org" 
        target=_blank></A><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></A><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></BLOCKQUOTE>
    <BLOCKQUOTE type="cite">
      <DIV><SPAN>_______________________________________________</SPAN><BR><SPAN>theme-reviewers 
      mailing list</SPAN><BR><SPAN><A 
      href="mailto:theme-reviewers@lists.wordpress.org" 
      target=_blank>theme-reviewers@lists.wordpress.org</A></SPAN><BR><SPAN><A 
      href="http://lists.wordpress.org/mailman/listinfo/theme-reviewers" 
      target=_blank>http://lists.wordpress.org/mailman/listinfo/theme-reviewers</A></SPAN><BR></DIV></BLOCKQUOTE></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>
  <P>
  <HR>

  <P></P>_______________________________________________<BR>theme-reviewers 
  mailing 
  list<BR>theme-reviewers@lists.wordpress.org<BR>http://lists.wordpress.org/mailman/listinfo/theme-reviewers<BR></BLOCKQUOTE></BODY></HTML>