WordPress.org

Make WordPress Themes

#10924 closed theme (closed-newer-version-uploaded)

THEME: Chun - 0.1.1

Reported by: greenshady Owned by: Shelob9
Priority: Keywords: theme-chun
Cc: justin@…

Description

Chun - 0.1.1

A responsive CSS3 and HTML5 blogging and portfolio theme. It supports all post formats and has layout, font, and color options built into the theme customizer. The theme also supports the <a href="http://wordpress.org/extend/plugins/custom-content-portfolio">Custom Content Portfolio</a> plugin, giving artists and other creative people the ability to share their work.

Theme URL - http://themehybrid.com/themes/chun
Author URL - http://justintadlock.com

SVN - http://themes.svn.wordpress.org/chun/0.1.1
ZIP - http://wordpress.org/extend/themes/download/chun.0.1.1.zip?nostats=1

Diff with previous version: http://themes.trac.wordpress.org/changeset?old_path=/chun/0.1&new_path=/chun/0.1.1

All previous tickets for this theme: http://themes.trac.wordpress.org/query?col=id&col=summary&col=keywords&col=owner&col=status&col=resolution&keywords=~theme-chun&order=id

https://themes.svn.wordpress.org/chun/0.1.1/screenshot.png

Change History (7)

comment:1 chipbennett14 months ago

  • Owner set to Shelob9
  • Status changed from new to assigned

comment:2 follow-up: shelob914 months ago

Required:

  • Default Widgets Do Not Display Correctly: The default WordPress widgets should work correctly in all widgetized areas.

The theme de-registers default widgets and replaces most, but not all, widgets with custom widgets with the same name as the default widget.

Debugger returns these errors, caused by monster widget test when it attempts to call the default widgets:
NOTICE: wp-includes/widgets.php:1124 - Undefined index: WP_Widget_Archives
NOTICE: wp-includes/widgets.php:1124 - Undefined index: WP_Widget_Calendar
NOTICE: wp-includes/widgets.php:1124 - Undefined index: WP_Widget_Categories
NOTICE: wp-includes/widgets.php:1124 - Undefined index: WP_Widget_Pages
NOTICE: wp-includes/widgets.php:1124 - Undefined index: WP_Widget_Recent_Posts
NOTICE: wp-includes/widgets.php:1124 - Undefined index: WP_Widget_Search
NOTICE: wp-includes/widgets.php:1124 - Undefined index: WP_Widget_Tag_Cloud
NOTICE: wp-includes/widgets.php:1124 - Undefined index: WP_Nav_Menu_Widget

Recommended:

  • No reference to add_editor_style() was found in the theme. It is recommended that the theme implement editor styling, so as to make the editor content match the resulting post output in the theme, for a better user experience.
  • No readme.txt or changelog in the theme. It is recommend to include a readme with a changelog.
  • get_bloginfo( text_direction ) was found in the file library/functions/context.php. It is recommended to use is_rtl() instead.

This is a complete review.

Suggest Resolution: not approved.

Last edited 14 months ago by shelob9 (previous) (diff)

comment:3 in reply to: ↑ 2 ; follow-up: greenshady14 months ago

Replying to shelob9:

  • Debugger returns these errors, caused by monster widget test:

These are not errors caused by this theme. Please test the actual widgets in the theme. It registers its own, so most likely your monster widget is expecting WP's widgets, which have been de-registered.

As you can see, all of the "undefined index" notices are not coming from the theme. It's right there in the notice itself.

  • Internalization problems detected with Pig Latin plugin. The byline and the category/tags do not display properly. The apply_atomic_shortcode function used on lines 7, 16, 23 and 33 uses a shortcode inside the function. WordPress is translating the shortcode itself instead of the result of the shortcode. Use esc_attr() and/or esc_html instead.

Internationalization works just fine with this. The plugin you're using is translating the shortcodes used instead of translating the way a real translator would translate. Please do proper testing of internationalization instead of using some plugin that hasn't been updated in nearly 4 years.

The entire reason the shortcodes are used is so that it will be easier for translators to translate the theme. I've been using this method for years.

Last edited 14 months ago by greenshady (previous) (diff)

comment:4 in reply to: ↑ 3 ; follow-up: shelob914 months ago

Replying to greenshady:

Please be patient with me, I am learning to review themes because I wish the process didn't take so long. This is my first time.

Replying to shelob9:

  • Debugger returns these errors, caused by monster widget test:

These are not errors caused by this theme. Please test the actual widgets in the theme. It registers its own, so most likely your monster widget is expecting WP's widgets, which have been de-registered.

You have de-registered the default widgets and replaced most, but not all of them with custom widgets of the same name with enhanced features. If you look at the rules for widgets you will see that it is required that "The default WordPress widgets should work correctly in all widgetized areas". The monster widget test has shown that they do not work correctly, since you disabled them. This removes very basic functionality, such as the ability to display recent posts, or use the default widgets and have them stay the same when switching themes.

Why not leave the default widgets and preface the name of your custom widgets with your theme name, for example "Chun Recent Comments"? This is practically a standard.

As you can see, all of the "undefined index" notices are not coming from the theme. It's right there in the notice itself.

  • Internalization problems detected with Pig Latin plugin. The byline and the category/tags do not display properly. The apply_atomic_shortcode function used on lines 7, 16, 23 and 33 uses a shortcode inside the function. WordPress is translating the shortcode itself instead of the result of the shortcode. Use esc_attr() and/or esc_html instead.

Internationalization works just fine with this. The plugin you're using is translating the shortcodes used instead of translating the way a real translator would translate. Please do proper testing of internationalization instead of using some plugin that hasn't been updated in nearly 4 years.

The entire reason the shortcodes are used is so that it will be easier for translators to translate the theme. I've been using this method for years.

I retested this by changing the language to German using the WPLANG variable in wp-config.php and the problem went away. I apologize, first time.

comment:5 in reply to: ↑ 4 greenshady14 months ago

Replying to shelob9:

Please be patient with me, I am learning to review themes because I wish the process didn't take so long. This is my first time.

I'll try. I understand that it's tough learning the review process. Feel free to ask me any questions you have. I am also a theme reviewer and will be happy to help you.

You have de-registered the default widgets and replaced most, but not all of them with custom widgets of the same name with enhanced features. If you look at the rules for widgets you will see that it is required that "The default WordPress widgets should work correctly in all widgetized areas".

You're missing the purpose of that guideline. There is no "default XXX widget" if that widget has been unregistered. I'm guessing you're unfamiliar with how to properly unregister widgets, which is what the theme does. Here's the link to the page in the Codex: http://codex.wordpress.org/Function_Reference/unregister_widget You can check that against the code in chun/libarary/functions/widgets.php.

The monster widget test has shown that they do not work correctly, since you disabled them.

No, the monster widget test has shown that the monster widget is calling a widget that doesn't exist. This means the plugin is broken. The plugin should be updated and fixed. You'd need to contact the plugin developer to discuss fixes with him.

This removes very basic functionality, such as the ability to display recent posts, or use the default widgets and have them stay the same when switching themes.

You can go here to request that WordPress core remove the unregister_widget() function so that theme developers can no longer unregister widgets: http://core.trac.wordpress.org Until then, this is part of core WordPress functionality and is perfectly acceptable.

Why not leave the default widgets and preface the name of your custom widgets with your theme name, for example "Chun Recent Comments"? This is practically a standard.

Because that would be pretty useless, confusing to users, and clutter up their widget screen with things they don't need. And, most importantly, I'd argue that anyone doing it that way is, quite simply, doing it wrong. If you're going to replace a widget, do it right and use the unregister_widget() function WordPress core has built in.

comment:6 greenshady14 months ago

Here's the code that you can pass along to the monster widget developer to fix his plugin. The following is an example of how to correctly check if a widget exists before trying to call it via the_widget(). The example uses the tags widget. WordPress doesn't have a core function for something like widget_exists(), so you have to check against the global $wp_widget_factory.

global $wp_widget_factory;

if ( isset( $wp_widget_factory->widgets['WP_Widget_Tag_Cloud'] ) )
	the_widget( 'WP_Widget_Tag_Cloud', $instance, $args );
Last edited 14 months ago by greenshady (previous) (diff)

comment:7 greenshady14 months ago

  • Resolution set to closed-newer-version-uploaded
  • Status changed from assigned to closed

I've uploaded a new version that doesn't unregister the Recent Posts widget as per the discussion on the theme reviewers mailing list.

#11399

I went ahead and assigned you as the reviewer since I don't think you have privilege to assign yourself yet.

Note: See TracTickets for help on using tickets.