Support » Themes and Templates » Twenty Ten too complex for learning theme design

  • I personally think that WP 3.0 should ship with a simpler default theme.

    The reason why I adopted WordPress as my primary tool for website development was that the template system was easy to learn and the default themes demonstrated that with clean and simple code. I think Twenty Ten fails in this because it’s an advanced theme. I can understand that the WP crew wants to demonstrate all the new goodies to the developer community but they shouldn’t forget that there’s a lot of people out here who are just learning the basics.

    I mean, just try to explain Twenty Ten’s “loop” to someone who hasn’t done WordPress development before.

    It’s clearly a nice peace of work but I think that there should be at least one basic theme included as well so that new developers could quickly learn the ropes.

    Besides that, 3.0 is a beauty!

Viewing 9 replies - 1 through 9 (of 9 total)
  • I totally agree, jj, I’m not a developer at all, no way no how, and I’m just experimenting with certain themes for their basic attractive qualities that suit my simple needs. I’m using Thematic right now and IMO it is wonderful, but I haven’t done a thing with it other than setting up with a very basic website. I’m sure such themes (2010, Thematic, Hybrid, Sandbox, NoCSS) with that kind of potential can do a million different amazing things. But I guess I’m like the toddler at Christmas who receives an expensive toy but then ends up playing with the box!! LOL

    I never did figure out what a “loop” is, and I just barely have a glimmer of comprehension of what a “child theme” means!

    “The Loop” is basically the template for each post. That part of the code loops through all the posts that were fetched from the database and applies the template to each.

    The old default theme contained 8 lines of code inside the loop of index.php, outputting a DIV box, a post title, time and author, the post content and a row of meta links (comments, edit).

    Twenty Ten’s custom loop for the index page contains over 100 lines of code that customize the post depending of some custom categories in which the post belongs to (galleries, etc). It also uses theme’s custom functions defined in functions.php instead of WordPress Template Tags, so you can’t even explain them using the WordPress Documentation.



    Forum Moderator

    imho, there are different categories of themes:

    – there is the ‘simple’ theme that is easily understandable and easy to adapt with little knowledge of coding (kubrick default for instance); with only a few or no options in the background; on the other hand not really adaptable without any knowledge of coding.
    however there are a lot of themes based on the same default, which makes switching and adapting the code of these themes quite simple.

    – then there is the ‘customizable’ theme with a lot of options in the background (mystique, thematic, thesis, …); which gives the ‘non-coder’ a chance to customize the design. the downside is that these themes with all the function calls, filters, action hooks, subdirectories, etc. make it increasingly difficult for someone with just a little coding knowledge to adapt the theme to more complex ideas, such as page templates, or changing the arrangement of items.
    some of these theme have such a unique ‘philosophy’ in the design, that it takes a while getting used to the code; switching to a different ‘sophisticated’ themes is demanding to repeat this process.
    great opportunities though for the professional coder who specializes on one theme.

    – then there are a few ‘inbetween’ themes (TwentyTen) with a little options; a few functions and filters in the code. probably just too complicated for the beginner, but good for the intermediate with some understanding of the wordpress functions.

    i agree, that anything but the ‘simple’ themes are not really for beginners to learn wordpress with; therefor i also think that the kubrick default theme should stay easily available, considering thaat a lot of introductionary tutorials are based on this theme – maybe it should be part of the wordpress install.

    Now you mention it, “Kubrick” was part of the install at one time, was it not? That and the yellow one “Old Yolk” something-or-other, I just saw that one again somewhere, recently, I’d almost forgotten.

    Yeah, I’m satisfied with the “beginner” themes, and I’m still using Thematic in its most basic state. I’ve never seen any other theme that quite comes up to its standards and its flat-out good looks, even in this totally basic format. I can’t make heads or tails out of the directions for changing it…

    The more I look around, the more I realize that I was right in my guesstimate that I personally ought to stay with a minimalist kind of look, since I have a lot of “reading” text and also lots of graphics too, which need showcasing rather than competition with fancy distractions. All I need is quick loading, clean dropdowns, tidy widget listings, easy to read fonts, and I’m happy! 😉

    I think the professional theme designers have had an influence on WordPress and it’s getting more and more complex to develop themes.

    Thinking about this there is scope to create a beginners 2010 theme by breaking down the header, loop and footer files to smaller managable units, easier to understand and break down.

    The way you to could do this would is to use template parts and the new call:


    I use these all the time now for squirting custom code blocks into pages, like slideshows, extra menus etc:

    All you would need to do is copy the different code blocks to files like header-image.php, header-menu.php, content-notfound.php, content-gallery.php, content-asides.php, content-default.php, content-topnav.php, content-bottomnav.php etc:

    Then the loop could look like this:

    <?php /* Display navigation to next/previous pages when applicable */ ?>
    <?php get_template_part( 'content', 'topnav' ); ?>
    <?php /* If there are no posts to display, such as an empty archive page */ ?>
    <?php if ( ! have_posts() ) : ?>
    	<?php get_template_part( 'content', 'notfound' ); ?>
    <?php endif; ?>
    <?php while ( have_posts() ) : the_post(); ?>
    	<?php if ( 'gallery' == get_post_format( $post->ID ) || in_category( _x( 'gallery', 'gallery category slug', 'twentyten' ) ) ) : ?>
    		<?php get_template_part( 'content', 'gallery' ); ?>
    	<?php elseif ( 'aside' == get_post_format( $post->ID ) || in_category( _x( 'asides', 'asides category slug', 'twentyten' ) )  ) : ?>
    		<?php get_template_part( 'content', 'asides' ); ?>
    	<?php else : ?>
    		<?php get_template_part( 'content', 'default' ); ?>
    	<?php endif; // This was the if statement that broke the loop into three parts based on categories. ?>
    <?php endwhile; // End the loop. Whew. ?>
    <?php /* Display navigation to next/previous pages when applicable */ ?>
    <?php get_template_part( 'content', 'bottomnav' ); ?>

    This would make it easy to add custom changes, lets say you are adding a post image into the default output, you would copy across to your child theme content-default and have a small file to edit
    and deal with, much easier for tutorial writers to say add this code at lines 10-12.

    Food for thought there!



    It’s not difficult to just copy twenty-ten and make changes if that’s what you want to do. The real complexity is when a new theme developer is trying to build something from scratch, goes to look at twenty-ten and uses, for example, the comment code. It seems pretty convoluted with stuff peppered in the functions.php file.

    I could be wrong, I haven’t looked at it in a while.



    Forum Moderator

    Twenty Ten wasn’t designed to be used as a template for a new theme. It was designed to show what was possible in terms of different loops, layouts etc.

    @ David – I think your Idea of breaking the Loop down as such would make it extremely readable (A big plus!)

    I am fairly new at wordpress theme development and I do have to say that I have had more difficulty understanding how to get a custom theme built off of twenty ten to work properly in some areas without a bit more study and time spent.

Viewing 9 replies - 1 through 9 (of 9 total)
  • The topic ‘Twenty Ten too complex for learning theme design’ is closed to new replies.