a:4:{s:5:"child";a:1:{s:0:"";a:1:{s:3:"rss";a:1:{i:0;a:6:{s:4:"data";s:3:"


";s:7:"attribs";a:1:{s:0:"";a:1:{s:7:"version";s:3:"2.0";}}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:1:{s:0:"";a:1:{s:7:"channel";a:1:{i:0;a:6:{s:4:"data";s:61:"
	
	
	
	




















































";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:1:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:16:"WordPress Planet";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:28:"http://planet.wordpress.org/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:8:"language";a:1:{i:0;a:5:{s:4:"data";s:2:"en";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:47:"WordPress Planet - http://planet.wordpress.org/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"item";a:50:{i:0;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:66:"WPTavern: Gazette: A Free WordPress Magazine Theme from Automattic";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=43501";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:75:"http://wptavern.com/gazette-a-free-wordpress-magazine-theme-from-automattic";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:3321:"<p><a href="https://theme.wordpress.com/themes/gazette/" target="_blank">Gazette</a> is a new WordPress magazine theme from the folks at Automattic, designed by <a href="http://wptavern.com/feed">Thomas Guillot</a>. Since the majority of themes produced for WordPress.com are well-suited to single author blogs, Gazette&#8217;s fine-tuned focus on digital publications is a welcome addition to the collection.</p>
<p>Magazine themes are generally few and far between, because they have to be designed for a constant flow of content with a homepage that allows the reader to quickly scan multiple featured stories. Gazette takes a minimalist approach to the magazine style in that it isn&#8217;t cluttered with skinny columns of varying widths, obtrusive advertising slots, etc. It could easily be used for a personal blog or photography site.</p>
<p><a href="http://i2.wp.com/wptavern.com/wp-content/uploads/2015/05/gazette-homepage.jpg"><img src="http://i2.wp.com/wptavern.com/wp-content/uploads/2015/05/gazette-homepage.jpg?resize=1025%2C906" alt="gazette-homepage" class="aligncenter size-full wp-image-43507" /></a></p>
<p>As you scroll down the page, the sticky navigation/search bar pins the menu to the top for easy access. Gazette makes a strong impression with fullscreen featured images that display above post and page titles. The content area has been decluttered for readability with post meta pulled out into a separate column.</p>
<p>Gazette supports image, gallery, video, and link post formats. The theme includes two optional widget areas (the right sidebar and footer), and two custom menus. With Jetpack active, Gazette adds an option to upload your site logo. The plugin also manages the featured content display, along with the related posts functionality seen in the <a href="https://gazettedemo.wordpress.com/" target="_blank">live demo</a>.</p>
<p><a href="http://i2.wp.com/wptavern.com/wp-content/uploads/2015/05/gazette-author-bio.jpg"><img src="http://i2.wp.com/wptavern.com/wp-content/uploads/2015/05/gazette-author-bio.jpg?resize=300%2C282" alt="gazette-author-bio" class="alignright size-medium wp-image-43552" /></a>Gazette includes a handful of layout and content options in the customizer:</p>
<ul>
<li>Display header image on blog index only</li>
<li>Show author bio on the sidebar of single posts</li>
<li>Display content in the footer, i.e. basic HTML, links, et.</li>
</ul>
<p>Gazette is responsive and maintains its striking visual appeal and readability on mobile devices. The design is similar to popular mobile news apps that display posts with titles overlayed on featured images.</p>
<p><a href="http://i2.wp.com/wptavern.com/wp-content/uploads/2015/05/gazette-responsive.jpg"><img src="http://i2.wp.com/wptavern.com/wp-content/uploads/2015/05/gazette-responsive.jpg?resize=560%2C222" alt="gazette-responsive" class="aligncenter size-full wp-image-43508" /></a></p>
<p>Check out the <a href="https://gazettedemo.wordpress.com/" target="_blank">live demo</a> on WordPress.com to see Gazette in action. The theme is not yet available on WordPress.org but should be soon. In the meantime, the zip file for self-hosted sites can be downloaded from the sidebar of the <a href="https://theme.wordpress.com/themes/gazette/" target="_blank">Gazette theme page</a> on WordPress.com.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Mon, 11 May 2015 06:30:18 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:1;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:27:"Matt: Hint Water Mompreneur";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:21:"http://ma.tt/?p=45037";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:43:"http://ma.tt/2015/05/hint-water-mompreneur/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:589:"<blockquote><p>When Kara Goldin started putting fruit in her water 10 years ago, she had no idea that she had stumbled upon a business idea that would eventually lead to the creation of a new category in the beverage industry, grow to a 40 million dollar company, and help her lose over 25 pounds in the process.</p></blockquote>
<p>Cool interview with&nbsp;<a href="http://www.huffingtonpost.com/anjali-varma/mompreneur-spotlight-foun_b_7198902.html">Kara Goldin, the founder of Hint Water</a>, which I drink 3-4 of a day and is also an <a href="http://audrey.co/">Audrey</a> company.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Sun, 10 May 2015 03:42:18 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:4:"Matt";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:2;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:29:"Post Status: The trojan Emoji";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:31:"https://poststatus.com/?p=12600";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:40:"https://poststatus.com/the-trojan-emoji/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:5500:"<p>Andrew Nacin just spoke at <a href="http://loopconf.io">Loopconf</a> about the nature of a critical software bug.</p>
<p></p>
<h3>No strict mode on WordPress databases</h3>
<p>At a base level, the problems originated in that WordPress did not enable strict mode for MySQL. If <code>STRICT_ALL_TABLES</code> has been enabled, the security vulnerability that was addressed in WordPress 4.2 would not exist.</p>
<p>Without strict mode, MySQL allows more flexible inputs, and doesn&#8217;t require the same level of precision in what it allows. For example, a long username would just truncate to the maximum allowed characters, versus be rejected.</p>
<p>Since MySQL can do strange things without strict mode enabled, there are obscure but significant ways for hackers to take advantage.</p>
<h3>Defining the scope of a vulnerability</h3>
<p>A vulnerability was disclosed to the WordPress security team about two years ago. At its core, the method for forcing MySQL truncation was by using four-byte characters, and then using tricks to store nefarious code in the database.</p>
<p>Nacin used an example of inserting two comments in the database with single quotes and attached four-byte characters. MySQL would truncate the four-byte characters on databases using UTF8 (and don&#8217;t allow four-byte characters), and a hacker could utilize the truncated comment (or any other field, really) to add a second comment to finish the exploitation.</p>
<p>The initial vulnerability was fixed in 3.6.1. In 2014, an <a href="https://cedricvb.be/post/wordpress-stored-xss-vulnerability-4-1-2/">new disclosure came in from Cedric Van Bochhaven</a> to note that there was still a vulnerability under particular circumstances.</p>
<p>After months of work and &#8220;tens of thousands of lines of code&#8221; for rewrites and tests, the team realized that they needed to check inputs to the database at a base level of WordPress.</p>
<p>In WordPress 4.2, approximately 1,000 lines of code were inserted into wpdb.php under the guise of Emoji support, but were really for fixing this vulnerability.</p>
<p><img class="aligncenter size-full wp-image-12604" src="https://poststatus.com/wp-content/uploads/2015/05/utf8mb4.png" alt="utf8mb4" width="751" height="520" /></p>
<p>The original report identified three requirements for the site to be exposed:</p>
<ol>
<li>MySQL truncating everything after a four-byte character</li>
<li>It&#8217;s not exposed when utf8mb4 is enabled</li>
<li>It&#8217;s theme dependent</li>
</ol>
<p>It turned out that really only part of number one needed to be true. They discovered, &#8220;this could affect any two fields that would be rendered anywhere near each other.&#8221;</p>
<p>Between 11 default database tables and hundreds of fields, basically all parts of WordPress were vulnerable, and core itself also &#8220;extensively&#8221; relied on non-strict mode functionality.</p>
<p>Furthermore, they realized that even three-byte characters could cause truncation, if they aren&#8217;t valid upon insertion.</p>
<p>So of the requirements from the original report, most were not actually required.</p>
<p><img class="aligncenter size-full wp-image-12606" src="https://poststatus.com/wp-content/uploads/2015/05/utf8mb4-notreally.png" alt="utf8mb4-notreally" width="745" height="517" /></p>
<blockquote><p>&#8220;We&#8217;re deeper and deeper and deeper into this hole, and we have no idea how to get out.&#8221;</p></blockquote>
<p>The team went back to a discussion from the 3.6.1 vulnerability fix, that does what Nacin calls &#8220;preflight checks&#8221; that checks many layers of WordPress to ensure allowed data is being inserted.</p>
<p>Checking allowed character sets was not only on the database and table level, but also on columns and fields. Furthermore, the client, the connection, and the server can have their own character sets.</p>
<p>Nacin defines the method for checking as both using a scalpel and a sledgehammer.</p>
<blockquote><p>We need this to work two different ways: with a scalpel via <code>update()</code>, <code>replace()</code>, <code>insert()</code>, and <code>delete()</code>, and with a sledgehammer via write queries via <code>query()</code>.</p></blockquote>
<h3>Trojan Emoji</h3>
<p>The code has been in trunk since January, months before the release of 4.2. But it was there under the guise of Emoji support, as &#8220;noone had any idea what it did because it was 1,000 lines of the database abstraction layer to just remove invalid characters.&#8221;</p>
<p>Because of how opaque the vulnerability and the corresponding fix were, the team was able to spend a very long time working on and fixing the issue, all without exposing the vulnerability to the general public.</p>
<p>When 23.9% of the internet uses WordPress, security becomes an even more enormous challenge than in other software. There was an easy fix for this all along: strict mode on MySQL.</p>
<p>However, it would&#8217;ve broken &#8220;everything.&#8221; Alternatively, exposing a vulnerability to the public without a fix that doesn&#8217;t break websites makes the vulnerability that much more powerful. It takes a ridiculous effort for the WordPress core team and security team to ensure practical solutions to keep the WordPress software secure and reliable for millions of users.</p>
<p>By the way, if you ever find a vulnerability in WordPress or you get really excited about problems like these, you can email security@wordpress.org to get involved.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Fri, 08 May 2015 20:18:11 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:15:"Brian Krogsgard";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:3;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:27:"Matt: Where Does Weight Go?";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:21:"http://ma.tt/?p=45034";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:42:"http://ma.tt/2015/05/where-does-weight-go/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:156:"<p><a href="http://mitchkirby.com/2015/04/21/where-does-weight-go/">When You Lose Weight, Where Does it Go?</a> I&#8217;ll be honest that I had no idea.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Fri, 08 May 2015 13:10:04 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:4:"Matt";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:4;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:23:"Matt: Slot Machine Tech";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:21:"http://ma.tt/?p=45031";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:39:"http://ma.tt/2015/05/slot-machine-tech/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:469:"<p>The Verge: <a href="http://www.theverge.com/2015/5/6/8544303/casino-slot-machine-gambling-addiction-psychology-mobile-games">Slot machines perfected addictive gaming. Now, tech wants their tricks</a>. Includes information from one of my favorite authors <a href="http://www.nirandfar.com/">Nir Eyal</a>, who also <a href="http://wordpress.tv/2012/09/03/nir-eyal-automatic-customers-how-to-design-user-habits/">spoke at WordCamp San Francisco a few years ago</a>.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Fri, 08 May 2015 06:55:58 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:4:"Matt";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:5;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:67:"Post Status: How to create better, more accessible WordPress themes";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:31:"https://poststatus.com/?p=12536";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:65:"https://poststatus.com/how-to-create-accessible-wordpress-themes/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:23972:"<p>This is not the ultimate guide for accessibility. You will not be an accessibility expert after reading this, not even a ninja! But I&#8217;d like to share what I have learned about accessibility in WordPress Themes. Hopefully that&#8217;ll help someone to build more accessible themes, and we can share ideas of how to make the web better place for all of us.</p>
<p>I&#8217;ve learned most of my knowledge from <a href="https://www.joedolson.com/">Joe Dolson</a> and <a href="http://davidakennedy.com/">David A. Kennedy</a>. They both contribute to the <a href="http://make.wordpress.org/accessibility/">WordPress Accessibility Team</a> and have been kindly answering my questions on Github and Twitter. Our goal is to understand the basics of accessibility and how we can prepare our themes to receive the official <a href="https://wordpress.org/themes/tags/accessibility-ready/">accessibility-ready</a> tag.</p>
<h3>What is accessibility and why should we care?</h3>
<p>Web <strong>accessibility means that people can browse the web</strong>, with or without disabilities, using any device they might have. In this article, I mostly concentrate on people with disabilities including visual, auditory, physical, speech, cognitive, and neurological disabilities. We can improve our sites and help such people use, navigate, and interact with them.</p>
<p><a href="https://twitter.com/viljamis">Viljami Salminen</a> talks about different input methods and performance in his article called <a href="http://viljamis.com/blog/2015/the-many-faces-of-the-web/">The Many Faces of the Web</a>.</p>
<blockquote><p>On a bigger scale, I mean things like making our websites accessible to everyone. Making them work with different input methods like touch, mouse, keyboard or voice. Making them load and perform fast. Providing everyone access to this vast network of connected things. And if we don’t strive for all of this, what’s the point of working on the web?</p></blockquote>
<p>If nothing else, you should care about the <a href="https://www.youtube.com/watch?v=cpbbuaIA3Ds">money</a>! <a href="https://twitter.com/brad_frost">Brad Frost</a> nails it in his article about <a href="http://bradfrost.com/blog/post/accessibility-and-low-powered-devices/">accessibility and low-powered devices</a>.</p>
<blockquote><p>“Do you want to reach more customers?” the answer is always yes. When I ask them “Do you want your experience to load blazingly fast?” the answer is always yes. Both accessibility and performance are invisible aspects of an experience and should be considered even if they aren’t explicit goals of the project.</p>
<p>There it is. Make efforts to make Web experiences accessible and performant; make money.</p></blockquote>
<p>Let&#8217;s start with the <a href="https://make.wordpress.org/themes/handbook/review/accessibility/required/">required</a> parts of the puzzle.</p>
<h3>.screen-reader-text for hiding text</h3>
<p>Using <code>.screen-reader-text</code> is actually not required but I&#8217;ll use it in several examples. WordPress uses the CSS class <code>.screen-reader-text</code> to handle any HTML output that is <a href="https://make.wordpress.org/accessibility/2015/02/09/hiding-text-for-screen-readers-with-wordpress-core/">targeted at screen readers</a>. The purpose of screen-reader targeted text is to provide <strong>additional context</strong> for links, document structure, or form fields. This is helpful for whoever is using screen readers when browsing the web.</p>
<p>Since WordPress 4.2, the <code>.screen-reader-text</code> class is used in front-end code also, not just back-end. For example <a href="https://codex.wordpress.org/Function_Reference/comments_popup_link">comments_popup_link()</a> can output something like this by default:</p>
<p><code>4 Comments&lt;span class="screen-reader-text"&gt; on My article about accessibility&lt;/span&gt;</code></p>
<p>Did you notice the <code>.screen-reader-text</code> class? The text <em>on My article about accessibility</em> is supposed to be hidden on screen but readable for screen readers. This provides additional information about what <em>4 Comments</em> stands for and which article we&#8217;re talking about.</p>
<p>If you don&#8217;t have .screen-reader-text in your theme&#8217;s style.css that&#8217;s okay too. Then all users in this scenario would see the entire text (<em>4 Comments on My article about accessibility</em>), but nothing is broken. Naturally there is a plugin for <a href="https://wordpress.org/plugins/screen-reader-text-theme-support/">adding support for .screen-reader-text</a> as well.</p>
<h4>Add .screen-reader-text in your theme&#8217;s style.css</h4>
<p>The following snippet is the recommended method for adding a screen-reader class in your theme&#8217;s styles at the moment. You can also follow <a href="https://github.com/Automattic/_s">the Underscores theme</a> for this and other recommended methods.</p>
<a href="https://gist.github.com/bee3e380c614542776de" target="_blank"><em>View this code snippet on GitHub.</em></a>
<p>You can style the <code>:focus</code> styles differently but this a solid start.</p>
<h3>Headings and headings hierarchy structure</h3>
<p>Headings are important way to navigate your site. They are the first step most screen reader users take when they start to navigate your site. And regular users can also browse the a website more easily when there are structured headings.</p>
<p>But headings and heading hierarchy structure can be challenging, I certainly have had <a href="https://github.com/samikeijonen/kuorinka/issues/18">issues with headings</a> in my personal experience. Should we use just one H1 element on each page? Can there be more than one H1? What about other headings: H2, H3 and so on?</p>
<p>With the acceptance of HTML5 standards, there can be more than one H1 on each page, but it&#8217;s important to be consistent with your headings hierarchy. Here is example of my blog page headings structure:</p>
<a href="https://gist.github.com/bee3e380c614542776de" target="_blank"><em>View this code snippet on GitHub.</em></a>
<p>And again for single posts:</p>
<a href="https://gist.github.com/bee3e380c614542776de" target="_blank"><em>View this code snippet on GitHub.</em></a>
<p>The problem is that the headings hierarchy breaks if a user enters H1 in the article text or mixes headings in the wrong way. Plugins that output markup may also mess with the hierarchy.</p>
<p>Read more detail info about <a href="https://www.joedolson.com/2014/11/headings-hierarchy-problem/">heading hierarchy structure</a> and be consistent in your theme. And as a writer, think about the hierarchy structure of your theme and try not to break it. <img src="https://poststatus.com/wp-includes/images/smilies/simple-smile.png" alt=":)" class="wp-smiley" /></p>
<h3>ARIA landmark roles</h3>
<p>Aria landmark roles programmatically identify sections of a page. This helps navigate to various sections of a page for assistive technology users.</p>
<p>These are the most common roles:</p>
<ul>
<li>header: <code>role="banner"</code></li>
<li>main content: <code>role="main"</code></li>
<li>sidebars: <code>role="complementary"</code></li>
<li>footer: <code>role="contentinfo"</code></li>
<li>search form: <code>role="search"</code></li>
<li>navigation menus: <code>role="navigation"</code></li>
</ul>
<p>If the same role appears more than once on a page, you should provide an ARIA label for that role:</p>
<a href="https://gist.github.com/bee3e380c614542776de" target="_blank"><em>View this code snippet on GitHub.</em></a>
<p>Try not to use too many ARIA landmark roles. Otherwise it wouldn&#8217;t be helpful for screen reader users to navigate your site. Ten to fifteen roles is probably a good rule of thumb as a maximum limit.</p>
<p>Here is a simple example for how your HTML structure could look with ARIA roles:</p>
<a href="https://gist.github.com/bee3e380c614542776de" target="_blank"><em>View this code snippet on GitHub.</em></a>
<p>An the screenshot from <a href="http://accessibility.oit.ncsu.edu/tools/aria-landmark-inspector/">Aria landmark inspector</a> website:</p>
<p><a href="https://poststatus.com/wp-content/uploads/2015/05/aria-landmark.png"><img class="aligncenter size-large wp-image-12538" src="https://poststatus.com/wp-content/uploads/2015/05/aria-landmark-752x526.png" alt="Aria Landmarks" width="752" height="526" /></a></p>
<h3>Link text</h3>
<p>Imagine your blog archive using ten <em>Read More&#8230;</em> links. That&#8217;s not very helpful for screen reader users browsing trough your links. In general, avoid repetitive non-contextual text strings.</p>
<h4>Using the_content() function</h4>
<p>By default <a href="https://codex.wordpress.org/Function_Reference/the_content"><code>the_content()</code></a> function outputs <em>more&amp;hellip;</em> text when using &lt;!&#8211;more&#8211;&gt; in post content. Fortunately, you can change this output using the function&#8217;s first parameter: <code>$more_link_text</code>. It&#8217;s recommended to use the post title for additional context:</p>
<a href="https://gist.github.com/bee3e380c614542776de" target="_blank"><em>View this code snippet on GitHub.</em></a>
<p>This will output <code>Read more &lt;span class="screen-reader-text"&gt;My Article Name&lt;/span&gt;</code>, not just the repetitive <em>Read More</em>. Note that we&#8217;re using class <code>screen-reader-text</code> again, which means that the post title can be hidden (if theme supports it), but screen readers will still read it.</p>
<h4>Using the_excerpt() function</h4>
<p>By default <a href="https://codex.wordpress.org/Function_Reference/the_excerpt">the_excerpt()</a> function adds <code>[...]</code> to the end of the excerpt. We can replace with something similar to what we used in <code>the_content</code> example, using the <code>excerpt_more</code> filter.</p>
<a href="https://gist.github.com/bee3e380c614542776de" target="_blank"><em>View this code snippet on GitHub.</em></a>
<p>That&#8217;s more like it. You can change the HTML structure, but you get the general idea how we added post title after the default text.</p>
<h4>Descriptive link text</h4>
<p>Try to be descriptive when using link text, and bare urls should not be used as link anchor text.</p>
<p>Bad example:</p>
<a href="https://gist.github.com/bee3e380c614542776de" target="_blank"><em>View this code snippet on GitHub.</em></a>
<p>Good example:</p>
<a href="https://gist.github.com/bee3e380c614542776de" target="_blank"><em>View this code snippet on GitHub.</em></a>
<h3>Controls</h3>
<p>Let links be links, buttons be buttons, divs be divs, spans be spans to ensure native keyboard accessibility and interaction with a screen reader. Article <a href="http://www.karlgroves.com/2013/05/14/links-are-not-buttons-neither-are-divs-and-spans/">links are not buttons. Neither are divs and spans</a>.</p>
<p>All controls must also have text to indicate the nature of the control, but it too can be hidden inside the <code>.screen-reader-class</code>.</p>
<p>For example, when toggling a menu, the control should be a button, not a link, div or span.</p>
<a href="https://gist.github.com/bee3e380c614542776de" target="_blank"><em>View this code snippet on GitHub.</em></a>
<p>You can always style the button using CSS. Many theme developers add a font icon indicating the menu, like the commonly named &#8220;hamburger menu.&#8221; This is a bad way of adding the font icon:</p>
<a href="https://gist.github.com/bee3e380c614542776de" target="_blank"><em>View this code snippet on GitHub.</em></a>
<p>Font icons alone don&#8217;t have any meaning for screen readers. In general <a href="http://thomasbyttebier.be/blog/the-best-icon-is-a-text-label">the best icon is a text label</a>.</p>
<p>Instead you could do this:</p>
<a href="https://gist.github.com/bee3e380c614542776de" target="_blank"><em>View this code snippet on GitHub.</em></a>
<p>Then add the icon font using a pseudo element, such as <code>#nav-toggle::before</code>.</p>
<p>You can also use the icon font and <code>.screen-reader-text</code> together.</p>
<a href="https://gist.github.com/bee3e380c614542776de" target="_blank"><em>View this code snippet on GitHub.</em></a>
<p>Sighted users will see only the hamburger icon, and screen reader users will now understand that this control is for the menu.</p>
<h3>Keyboard navigation</h3>
<p><a href="http://themeshaper.com/">On ThemeShaper</a>, there is fantastic article about <a href="http://themeshaper.com/2015/03/12/keyboard-accessibility/">keyboard accessibility</a>. In short, <strong>users must be able to navigate your site using only a keyboard</strong>. For example people who are blind or have motor disabilities use the keyboard almost exclusively.</p>
<p>I&#8217;d like to challenge you to put your mouse away for a while and test your own website. Can you navigate through links, dropdown menu and form controls using the tab and shift + tab keys? Enter can be used to activate links, buttons, or other interactive elements.</p>
<h4>:focus is important</h4>
<p>Note that only links, buttons and form fields can be focused on by default. That&#8217;s why I keep noting that we should let links be links and buttons be buttons. Don&#8217;t try to replace them with divs or spans. Users should see and elements should have visual effects to notate their state when they navigate your site using a keyboard. This is where :focus steps in.</p>
<p>This is a poor implementation:</p>
<a href="https://gist.github.com/bee3e380c614542776de" target="_blank"><em>View this code snippet on GitHub.</em></a>
<p>That disables outline style for all links! This is much better:</p>
<a href="https://gist.github.com/bee3e380c614542776de" target="_blank"><em>View this code snippet on GitHub.</em></a>
<p>Now users have a visual effect &#8212; a dotted line around the link &#8212; on links when focused. You can style the thin dotted to something else, but do not disable it. Remember that you can of course style buttons using CSS also, for example to change the background on :focus.</p>
<p>Make sure that colors are not your only method of conveying important information. That will help color blind people to see visual effects.</p>
<h4>Dropdown menus and keyboard accessibility</h4>
<p>Have you tried accessing your submenus in a dropdown menu using only keyboard? If you can&#8217;t successfully do so, let&#8217;s see what we can do about that, starting with the current <a href="https://make.wordpress.org/themes/handbook/review/accessibility/required/#keyboard-navigation">guidelines for navigation menus</a>.</p>
<ul>
<li>Fails: Dropdown navigation menus are hidden using <code>display:none;</code> and brought into view on <code>:hover</code></li>
<li>Passes: Dropdown navigation menus are hidden using <code>position: absolute;</code> and brought into view on <code>:hover </code>and <code>:focus</code>, and are navigable using the <code>tab</code> key</li>
<li>Better: Dropdown navigation menus are hidden using position: absolute; and brought into view on <code>:hover</code>, <code>:focus</code>, and are navigable using either the <code>tab</code> key or by using the keyboard arrow keys.</li>
</ul>
<p>Once again, the <a href="http://underscores.me/">Underscores</a> theme has a good example of dropdown menu markup which is navigable using the <code>tab</code> key. I&#8217;ll hope there will be support for arrow keys in near future. I personally use <a href="http://responsive-nav.com/">Responsive Nav</a> as a starting point for accessible, responsive menus.</p>
<p>We need some Javascript magic for enabling keyboard support for dropdown menus. For reference, checkout this <a href="https://github.com/Automattic/_s/blob/master/js/navigation.js">navigation.js file</a>. This is the basic idea:</p>
<ul>
<li>Each time a menu link is focused or blurred, set or remove the <code>.focus</code> class on the menu link. This is done with the <code>toggleFocus()</code> function.</li>
<li>Add class <code>.focus</code> your stylesheet, where you have <code>:hover</code> styles for the menu.</li>
<li>You can now navigate your menu and submenus using the <code>tab</code> and <code>Shift + tab</code> key!</li>
</ul>
<p>There are some other aspects we should consider for more accessible dropdown menus:</p>
<ul>
<li>Use ARIA markup like aria-haspopup=&#8221;true&#8221; in menu items that have submenus.</li>
<li>What about touch devices? Have you tried accessing submenus using iPad when menu is in &#8220;Desktop&#8221; mode? I believe touch support is also coming to the Underscores theme.</li>
</ul>
<p>There could be another in-depth article for creating accessible, responsive menus so I&#8217;ll move on.</p>
<h3>Contrasts</h3>
<p>Color contrast is something we might have to compromise on in our design. We need to provide enough contrast between text and background colors so that it can be read by people with moderately low vision. There are many beautiful themes out there that use for example light grey colors but might not pass the <a href="https://make.wordpress.org/themes/handbook/review/accessibility/required/#contrasts">guideline for color contrast</a>.</p>
<blockquote><p>Theme authors MUST ensure that all background/foreground color contrasts for plain content text are within the level AA contrast ratio (4.5:1) specified in the Web Content Accessibility Guidelines (WCAG) 2.0 for color luminosity.</p></blockquote>
<p>I test color contrast using Joe Dolson&#8217;s <a href="https://www.joedolson.com/tools/color-contrast.php">tester tool</a>. Accessibility doesn&#8217;t make your site ugly or boring, that&#8217;s always you. <img src="https://poststatus.com/wp-includes/images/smilies/simple-smile.png" alt=":)" class="wp-smiley" /> But it does set some preconditions we need to follow. Aaron Jorbin also has a great <a href="https://wordpress.tv/2014/07/01/aaron-jorbin-color-theory-for-web-developers/">talk on color theory and accessibility</a> from WordCamp Chicago 2014.</p>
<h3>Skip links</h3>
<p>A website&#8217;s primary content is usually not at the top of the page. There can be dropdown menus, header sidebars, search forms or other information before the main content. For keyboard and screen reader users it&#8217;s annoying to navigate this extra content over and over again before arriving at the main content. That&#8217;s why themes must have skip links, which help to navigate directly to content. The skip link is usually added in the header.php file after the body or first div tag.</p>
<a href="https://gist.github.com/bee3e380c614542776de" target="_blank"><em>View this code snippet on GitHub.</em></a>
<p>Make sure the link is one of the first items on the page and visible when keyboard focus moves to the link. We already did that when we added .screen-reader-text class in our stylesheet.</p>
<p>Also move focus to the main content area of the page when skip link is activated. I believe there is still a bug in WebKit-based browsers that prevents focus being moved, but once again, <a href="https://github.com/Automattic/_s/blob/master/js/skip-link-focus-fix.js">the Underscores theme has you covered</a> offering a good example.</p>
<h3>Forms</h3>
<p>WordPress default comment and search forms are accessible-ready, but be careful if you tweak them. I have made mistakes doing so in the past.</p>
<p>Hiding the search button using <code>.search-submit { display: none; }</code>. <strong>Do not use this CSS if you want the content to be read by a screen reader.</strong></p>
<p>A better option is the filter <a href="https://codex.wordpress.org/Function_Reference/get_search_form">get_search_form</a>, and add our now familiar <code>.screen-reader-text</code> class to the search form&#8217;s submit button.</p>
<a href="https://gist.github.com/bee3e380c614542776de" target="_blank"><em>View this code snippet on GitHub.</em></a>
<p>If you use a custom <code>searchform.php</code> in your theme, remember to keep appropriate field labels and do not use only a font icon as the submit button.</p>
<a href="https://gist.github.com/bee3e380c614542776de" target="_blank"><em>View this code snippet on GitHub.</em></a>
<p>In short from <a href="https://make.wordpress.org/themes/handbook/review/accessibility/required/#forms">the guidelines</a>:</p>
<blockquote>
<ul>
<li>Use form controls that have explicitly associated <code>&lt;label&gt;</code> elements.</li>
<li>Create feedback mechanisms (such as via AJAX) that expose responses to screen readers. Look at techniques with ARIA for further information.</li>
</ul>
</blockquote>
<p>Also keep an eye on a <a href="https://github.com/wpaccessibility/a11ythemepatterns">collection of patterns</a> for creating accessible-ready WordPress themes. Like <a href="https://github.com/wpaccessibility/a11ythemepatterns/tree/master/comment-form-with-js-aria">an accessible comment</a> form powered by JavaScript and ARIA.</p>
<h3>Images and alternative text</h3>
<p>As a user I&#8217;ve failed to add alternative (alt attribute) text to my content images, at least good ones. I promise to improve! You see, blind people of course can&#8217;t see your content images. Computers and screen readers can&#8217;t determine what the image presents. That&#8217;s why there is alt attribute and <a href="https://make.wordpress.org/themes/handbook/review/accessibility/required/#images">guidelines for images</a>.</p>
<ul>
<li>If there are images in template markup, like features images, they must utilize the alt attribute. Or provide the end user to enter alt text.</li>
<li>All decorative images should be added via CSS versus inline. Examples of decorative images are  lines for style or background images.</li>
<li>Note that sometimes an empty alt=&#8221;&#8221; is <a href="http://webaim.org/techniques/alttext/">the best choice</a>.</li>
</ul>
<h3>Media</h3>
<p>Sliders and carousels must not auto start by default. The same goes for videos and audios. This is mostly plugin territory, but it&#8217;s good to mention, especially as the broader web is more and more often auto-playing this content.</p>
<h3>Not allowed</h3>
<p>There are couple of things that are <a href="https://make.wordpress.org/themes/handbook/review/accessibility/required/#not-allowed">not allowed</a>.</p>
<blockquote>
<ul>
<li>Any positive tabindex attribute. Negative or zero value tabindex is allowed in specific circumstances (assessed on a case-by-case basis).</li>
<li>The inclusion of the accesskey attribute.</li>
<li>Spawning new windows or tabs without warning the user.</li>
</ul>
</blockquote>
<h3>Build accessibility-ready themes</h3>
<p>We have gone through the <a href="https://make.wordpress.org/themes/handbook/review/accessibility/required/">required guidelines</a> for getting the official <a href="https://wordpress.org/themes/tags/accessibility-ready/">accessibility-ready</a> tag in our themes when we submit them to the WordPress theme repository. It wasn&#8217;t that bad was it!</p>
<p>I challenge you to build an accessibility-ready theme when you start your next project. Or look into your current site and start with small steps, like adding better support for keyboard users. I hope this article will help you do that. Let me know in the comments if there are mistakes in the article, you have questions, or you have ideas for part two.</p>
<p>It doesn&#8217;t matter are you building themes for customers, commercial themes for marketplaces or free themes for WordPress.org. We can all improve our skills and create more accessible websites.</p>
<hr />
<p><em>About the author: <a href="https://poststatus.com/profiles/sami-keijonen/">Sami Keijonen</a> is a teacher who likes to learn about the web, WordPress, and life. He runs <a href="https://foxland.fi/">Foxland Themes</a>.</em></p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Thu, 07 May 2015 18:59:54 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sami Keijonen";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:6;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:72:"WPTavern: CampPress: A 2-3 Day Social Experience for Geeks and Creatives";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=43466";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:81:"http://wptavern.com/camppress-a-2-3-day-social-experience-for-geeks-and-creatives";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:2591:"<p>I attend WordCamps on a regular basis and have often joked with attendees as well as organizers that there should be a WordCamp where people camp out. GoDaddy&#8217;s WordPress evangelist, Mendel Kurland, is taking it upon himself to turn the joke into reality. He&#8217;s in the preliminary stage of <a href="https://mendel.me/articles/news/the-hunt-for-a-camppress-venue-is-officially-on/">planning CampPress</a>.</p>
<p>CampPress is a 2-3 day social experience for geeks and creatives to disconnect from technology to focus on community and creativity. The event is an adult geek summer camp infused with <a href="http://burningman.org/culture/philosophical-center/10-principles/" target="_blank">burning man values</a> and is not affiliated with GoDaddy. I asked Kurland what his inspiration is to organize such an event.</p>
<p>&#8220;As creative professionals, sometimes we forget to disconnect. CampPress is inspired by the simpler lives we lived as kids, where social interactions and creativity were the hallmarks of great growth experiences. Traditional conferences are incredible at transferring knowledge and skills and creating personal connections. CampPress is about deepening connections between participants and strengthening bonds that encourage collaboration within the community.&#8221;</p>
<a href="http://i1.wp.com/wptavern.com/wp-content/uploads/2015/05/CabinCampCampbell.jpg"><img class="size-full wp-image-43469" src="http://i1.wp.com/wptavern.com/wp-content/uploads/2015/05/CabinCampCampbell.jpg?resize=1024%2C683" alt="Camp Campbell is a Possible Venue" /></a>Camp Campbell is a Possible Venue
<p>Some items will be provided, including, food staples for breakfast, lunch, and dinner along with a preparation area, space to camp, a cabin or RV hookup depending on the final location, and ice for beer. CampPress will also have a Pit of Creativity. Information on what the pit of creativity is for will be published on the official CampPress site at a later date.</p>
<p>If you&#8217;re interested in attending, volunteering, or simply want to stay updated on the event&#8217;s progress, <a href="http://eepurl.com/blHmE9">sign up</a> to the updates list. Based on initial reactions in the comments, people are excited to see such an event take place.</p>
<p>I would love to camp out for a few days with members of the WordPress community and disconnect from technology at the same time. Let us know in the comments if you&#8217;re interested in attending such an event. Also, give us your suggestions for venues you think would be a good fit for CampPress.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Thu, 07 May 2015 16:59:27 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Jeff Chandler";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:7;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:73:"WPTavern: TGM Plugin Activation Library Publishes Roadmap for Version 3.0";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=43432";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:83:"http://wptavern.com/tgm-plugin-activation-library-publishes-roadmap-for-version-3-0";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:5704:"<a href="http://i2.wp.com/wptavern.com/wp-content/uploads/2015/05/domino.jpg"><img src="http://i2.wp.com/wptavern.com/wp-content/uploads/2015/05/domino.jpg?resize=1020%2C484" alt="photo credit: domino - (license)" class="size-full wp-image-43493" /></a>photo credit: <a href="http://www.flickr.com/photos/31059504@N08/6803420982">domino</a> &#8211; <a href="https://creativecommons.org/licenses/by/2.0/">(license)</a>
<p>This week contributors on the <a href="http://tgmpluginactivation.com/" target="_blank">TGM Plugin Activation</a> (TGMPA) library published a roadmap for the future of the project. TGMPA is widely used by WordPress developers to require and recommend plugins for themes (and other plugins). The library is recommended by Themeforest, CodeCanyon, and the WordPress.org Theme Review Team as an alternative to bundling everything in one theme/plugin.</p>
<p><a href="https://gamajo.com/" target="_blank">Gary Jones</a> is leading the upcoming 2.5 release, expected in May, with help from fellow lead developer <a href="http://twitter.com/jrf_nl" target="_blank">Juliette Reinders Folmer</a>, to whom he credits most of the recent activity on the project. This release will add support for installing from a GitHub repo source, separate menu items out from under the Appearance menu, add Travis CI support, improve accessibility, and fix a number of bugs.</p>
<h3>The Future of the TGM Plugin Activation Library</h3>
<p>The project&#8217;s contributors are also planning ahead for this summer&#8217;s 3.0 release, which Folmer will lead. This release will be a major turning point for TGMPA and will essentially constitute a complete rewrite.</p>
<p>The <a href="https://github.com/TGMPA/TGM-Plugin-Activation/issues/394" target="_blank">roadmap for 3.0</a> includes several ambitious items that will likely affect the way developers integrate TGMPA into their projects:</p>
<ul>
<li>Multisite compatibility</li>
<li>Fix conflicting UI messages for usage in themes / plugins</li>
<li>Improved UI by having the admin page always in the same location</li>
<li>Updatability of TGMPA independently of the plugin/theme which ships it</li>
<li>Show dependencies more clearly</li>
</ul>
<p>This plan includes an architectural change that would allow for the integration of the <a href="https://wordpress.org/plugins/plugin-dependencies/" target="_blank">Plugin Dependencies</a> (PD) plugin to provide UI for dependency management and cascading deactivation if dependencies are not met.</p>
<p>According to Jones, the eventual goal is to turn TGMPA into a plugin that can be added to the WordPress.org repository for easier updating:</p>
<blockquote><p>Some of the logic in the rewrite will be handled by the Plugin Dependencies plugin, and TGMPA itself will be turned into a plugin and added to the WPORG repo so that it can be updated automatically. The TGMPA library will then consist of a bootstrap file, the TGMPA plugin (as a zip) and the PD plugin (as a zip). The bootstrap file will then check if the TGMPA + PD plugins are installed, and if not, install them from the embedded zips.</p></blockquote>
<p>TGMPA contributors are currently in discussion with representatives from WordPress.org about the possibility of allowing their planned plugin in the official directory. As the plugin has not yet been produced and submitted, it&#8217;s still too early to know the outcome of the decision.</p>
<p>&#8220;If we can&#8217;t go onto the WordPress.org repo, then we&#8217;ll be looking at simply hosting the plugin version on GitHub, and use some (if needed) of the GitHub Updater plugin (or similar) code within the bootstrap file to pull the latest tag from GitHub instead,&#8221; Jones said.</p>
<p>One of the main focuses for version 3.0 is to allow different plugins and themes to use TGMPA without the concern of compatibilities resulting from plugin A including 2.4.1, for example, and plugin B including 2.5.0.</p>
<p>&#8220;The v3 setup should also be able to handle instances of v2 gracefully, and the v2 branch may have a 2.6 release to make the logic for that easier,&#8221; Jones said.</p>
<p>After version 3.0 is released, the project will contain multiple repositories &#8211; one for the standard plugin, and one that uses Grunt to pull in files from the plugin repository and zips them up next to the bootstrap file. In anticipation of these changes, contributors have moved the current repository into a new GitHub organization at: <a href="https://github.com/TGMPA" target="_blank">https://github.com/TGMPA</a>.</p>
<p>As TGMPA does not currently track its usage, it&#8217;s difficult to nail down exact numbers for how many theme/plugin developers these changes will impact.</p>
<p>&#8220;I have no idea what sort of numbers of products this entails,&#8221; Jones said. &#8220;But there is a non-trivial amount of usage that requires us to step up the game in order to provide the exceptional functionality other developers can rely on.&#8221;</p>
<p>TGMPA is a critical tool that many developers in the WordPress ecosystem depend on for managing plugin requirements and recommendations. As theme development continues to move in the direction of separating theme and plugin functionality, TGMPA will play an important role in serving developers who want to structure their projects according to WordPress best practices.</p>
<p>Getting the new TGMPA plugin included in the WordPress.org plugin directory would be a big win for the project, as it would allow users to update more easily in the future. You can <a href="https://twitter.com/tgmpa" target="_blank">follow TGMPA on Twitter</a> for all the latest news as the team moves into development for version 3.0.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Thu, 07 May 2015 16:35:59 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:8;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:52:"WPTavern: BuddyPress 2.3 Beta 1 is Ready for Testing";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=43440";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:62:"http://wptavern.com/buddypress-2-3-beta-1-is-ready-for-testing";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:2493:"<p><a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2014/03/bp-featured.png"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2014/03/bp-featured.png?resize=800%2C390" alt="bp-featured" class="aligncenter size-full wp-image-18726" /></a></p>
<p>BuddyPress <a href="https://buddypress.org/2015/05/buddypress-2-3-0-beta-1/" target="_blank">2.3 beta 1</a> is now available. Project lead John James Jacoby encouraged site administrators and BP plugin/theme developers to jump in and test the new features.</p>
<p>One of the highlights in the upcoming release is the new <a href="http://wptavern.com/buddypress-2-3-will-improve-avatar-uploads-with-the-new-bp-attachments-api" target="_blank">Attachments API</a>, which makes it possible for developers to create components that manage uploads. You can see this API in action alongside the newly improved <a href="https://buddypress.trac.wordpress.org/ticket/6290/" target="_blank">avatar upload UI</a>, revamped to include drag-and-drop upload and support for device cameras.</p>
<p>This release will also ship with <a href="http://wptavern.com/buddypress-2-3-will-introduce-companion-stylesheets-for-wordpress-default-themes" target="_blank">companion stylesheets for WordPress&#8217; latest default themes</a>, Twenty Fifteen and Twenty Fourteen. These stylesheets provide a broad sweep on BP elements to harmonize the appearance of the plugin with the default themes and could use more testing and feedback from the community.</p>
<p>Jacoby noted a few other important items to test in 2.3 beta 1, including:</p>
<ul>
<li><a href="https://buddypress.trac.wordpress.org/ticket/6177/" target="_blank">Blog Post Activity</a> generates better looking excerpts when posts contain images or other embedded media content</li>
<li><a href="https://buddypress.trac.wordpress.org/ticket/6331/" target="_blank">Star Private Messages</a> allows for improved marking of important inbox messages</li>
<li>The Member Types API now supports <a href="https://buddypress.trac.wordpress.org/ticket/6286" target="_blank">member-type-specific directories</a></li>
<li>Continued object and query cache enhancements</li>
</ul>
<p>BuddyPress developers and community managers have plenty of time to test their themes and plugins against the upcoming 2.3 release. A release candidate is scheduled for the week of May 12th. The official release is expected to drop May 26th, shortly before the BuddyCamp that will take place at WordCamp Miami 2015.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Thu, 07 May 2015 15:31:39 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:9;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:69:"WPTavern: WPWeekly Episode 191 – Proven Guilty by a Washing Machine";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:44:"http://wptavern.com?p=43443&preview_id=43443";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:75:"http://wptavern.com/wpweekly-episode-191-proven-guilty-by-a-washing-machine";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:2901:"<p>On this episode of WordPress Weekly, <a href="http://marcuscouch.com/">Marcus Couch</a> and I discuss the news of the week. We inform you of the recent security vulnerability discovered in Jetpack and the Twenty Fifteen theme. We also discuss a new crowdfunding campaign to create a server manager built on top of WordPress called HostPress.</p>
<p>I shared a personal story of a bad habit I&#8217;ve developed in the last two years that&#8217;s decreased my reading comprehension. Last but not least, Marcus tells a story from a conference he recently attended where the technology inside of a washing machine contained the evidence needed to convict a murderer.</p>
<h2>Stories Discussed:</h2>
<p><a href="http://wptavern.com/xss-vulnerability-in-jetpack-and-the-twenty-fifteen-default-theme-affects-millions-of-wordpress-users">XSS Vulnerability in Jetpack and the Twenty Fifteen Default Theme Affects Millions of WordPress Users</a><br />
<a href="http://wptavern.com/wordpress-com-suspends-theme-submissions-from-new-sellers">WordPress.com Suspends Theme Submissions from New Sellers</a><br />
<a href="http://wptavern.com/dan-griffiths-launches-175k-crowdfunding-campaign-to-build-hostpress">Dan Griffiths Launches $175K Crowdfunding Campaign to Build HostPress</a><br />
<a href="http://wptavern.com/new-plugin-reorders-the-wordpress-admin-menu-using-drag-and-drop">New Plugin Reorders the WordPress Admin Menu Using Drag-and-Drop</a><br />
<a href="https://jeffc.wordpress.com/2015/05/05/why-am-i-in-a-hurry-to-do-everything/">Why am I in a Hurry to do Everything?</a></p>
<h2>Plugins Picked By Marcus:</h2>
<p><a href="https://wordpress.org/plugins/hamburger-menu/">Hamburger Menu</a> is a side menu that you can add to your site that will be viewed on mobile devices or you can use it to completely replace the main menu on a site.</p>
<p><a href="https://wordpress.org/plugins/rest-console-embed/">REST Console embed</a> provides a shortcode to embed a REST API console into a page or post. It&#8217;s based on Automattic&#8217;s WordPress.com console.</p>
<p><a href="https://wordpress.org/plugins/plugin-auditor/">Plugin Auditor</a> records details of who installed and activated each plugin on your website and why.</p>
<h2>WPWeekly Meta:</h2>
<p><strong>Next Episode:</strong> Wednesday, May 6th 9:30 P.M. Eastern</p>
<p><strong>Subscribe To WPWeekly Via Itunes: </strong><a href="https://itunes.apple.com/us/podcast/wordpress-weekly/id694849738" target="_blank">Click here to subscribe</a></p>
<p><strong>Subscribe To WPWeekly Via RSS: </strong><a href="http://www.wptavern.com/feed/podcast" target="_blank">Click here to subscribe</a></p>
<p><strong>Subscribe To WPWeekly Via Stitcher Radio: </strong><a href="http://www.stitcher.com/podcast/wordpress-weekly-podcast?refid=stpr" target="_blank">Click here to subscribe</a></p>
<p><strong>Listen To Episode #191:</strong><br />
</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Thu, 07 May 2015 14:45:24 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Jeff Chandler";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:10;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:23:"Matt: Decades are Short";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:21:"http://ma.tt/?p=45029";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:39:"http://ma.tt/2015/05/decades-are-short/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:352:"<p>Sam Altman of YCombinator wrote a great post on the occasion of his thirtieth birthday, <a href="http://blog.samaltman.com/the-days-are-long-but-the-decades-are-short">The days are long but the decades are short</a>. There&#8217;s a lot of subtlety and nuance in each point, so even if you&#8217;ve read it already it&#8217;s worth another pass.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Thu, 07 May 2015 04:05:24 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:4:"Matt";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:11;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:111:"WPTavern: XSS Vulnerability in Jetpack and the Twenty Fifteen Default Theme Affects Millions of WordPress Users";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=43415";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:121:"http://wptavern.com/xss-vulnerability-in-jetpack-and-the-twenty-fifteen-default-theme-affects-millions-of-wordpress-users";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:3045:"<p><a href="https://wordpress.org/plugins/jetpack/changelog/">Jetpack</a> and the <a href="https://wordpress.org/themes/twentyfifteen/">Twenty Fifteen</a> default theme have been updated after a DOM-based Cross-Site Scripting (XSS) vulnerability was discovered. <a href="https://blog.sucuri.net/2015/05/jetpack-and-twentyfifteen-vulnerable-to-dom-based-xss-millions-of-wordpress-websites-affected-millions-of-wordpress-websites-affected.html">According to Sucuri</a>, any plugin or theme that uses <a href="http://genericons.com/">Genericons</a> is vulnerable due to an insecure file included within the package.</p>
<p>Genericons ships with a file called example.html which is vulnerable to attack from the Document Object Model level or DOM for short. The <a href="https://www.owasp.org/index.php/Main_Page">Open Web Application Security Project</a> defines a DOM based attack as:</p>
<blockquote><p>DOM Based <a class="mw-redirect" title="XSS" href="https://www.owasp.org/index.php/XSS"> XSS</a> (or as it is called in some texts, &#8216;type-0 XSS&#8217;) is an XSS attack wherein the attack payload is executed as a result of modifying the DOM &#8216;environment&#8217; in the victim’s browser used by the original client side script, so that the client side code runs in an &#8216;unexpected&#8217; manner. That is, the page itself (the HTTP response that is) does not change, but the client side code contained in the page executes differently due to the malicious modifications that have occurred in the DOM environment.</p></blockquote>
<p>The payload for these types of attacks is executed directly in the browser. Even Sucuri&#8217;s website firewall is unable to block the attack since it never gets the chance to see it. The company however, has virtually patched the vulnerability.</p>
<p>Sucuri worked with a number of hosting providers to identify and remove the example.html file from their servers. If you use the following webhosts, you should already be patched as of a week ago.</p>
<ul>
<li>GoDaddy</li>
<li>HostPapa</li>
<li>DreamHost</li>
<li>ClickHost</li>
<li>InMotion</li>
<li>WPEngine</li>
<li>Pagely</li>
<li>Pressable</li>
<li>Websynthesis</li>
<li>Site5</li>
<li>SiteGround</li>
</ul>
<p>According to Sucuri, the example.html file was used for debugging and testing purposes but was mistakenly left inside the directory after the project was packaged for production environments. This simple oversight has placed millions of sites at risk as Twenty Fifteen is a default theme that ships with WordPress.</p>
<p>You should update the Twenty Fifteen theme and Jetpack regardless of which webhost you&#8217;re using. You should also remain vigilant and keep an eye out for additional plugin and theme updates. If possible, manually remove example.html from within the Genericons directory.</p>
<p><em><strong>Update</strong></em></p>
<p>WordPress 4.2.2 <a href="https://wordpress.org/news/2015/05/wordpress-4-2-2/">is available</a> as a security update that addresses the Genericons issue and contains bug fixes.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Wed, 06 May 2015 18:56:17 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Jeff Chandler";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:12;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:59:"WPTavern: Andrew Nacin on Challenging WordPress Assumptions";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=42281";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:69:"http://wptavern.com/andrew-nacin-on-challenging-wordpress-assumptions";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:1162:"<p>WordPress lead developer <a href="http://nacin.com/" target="_blank">Andrew Nacin</a> spoke at the <a href="http://world2014.phparch.com/" target="_blank">php[world] 2014</a> conference on &#8220;Challenging Your WordPress Assumptions from 2009.&#8221; The video was recently published on YouTube and provides an excellent overview of the major ways WordPress has changed over the past six years.</p>
<p>Nacin explores common assumptions, such as &#8220;WordPress is insecure,&#8221; &#8220;WordPress doesn&#8217;t scale,&#8221; and &#8220;WordPress is not OOP,&#8221; among others. Some of these assumptions are false, some are true, some used to be true and others are partially true. If you&#8217;re a PHP developer who is new to WordPress or curious about how it&#8217;s changed over the years, this presentation will give you a quick 30 minute overview.</p>
<p>Check out the video embedded below to learn more about WordPress&#8217; philosophy for building user-centered software, its commitment to maintaining backwards compatibility, and how major publishers and companies are using it in innovative ways.</p>
<p><span class="embed-youtube"></span></p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Wed, 06 May 2015 18:15:39 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:13;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:51:"WPTavern: Inside BuddyBoss with Michael Eisenwasser";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=43380";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:61:"http://wptavern.com/inside-buddyboss-with-michael-eisenwasser";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:8724:"<p><a href="http://i2.wp.com/wptavern.com/wp-content/uploads/2015/05/buddyboss.jpg"><img src="http://i2.wp.com/wptavern.com/wp-content/uploads/2015/05/buddyboss.jpg?resize=1025%2C453" alt="buddyboss" class="aligncenter size-full wp-image-43387" /></a></p>
<p>Over the past couple years, <a href="http://www.buddyboss.com/" target="_blank">BuddyBoss</a> has emerged as a leader in the <a href="https://buddypress.org/" target="_blank">BuddyPress</a> products marketplace. Founder Michael Eisenwasser launched the business in 2010 after discovering BuddyPress while building an international job site to help online workers find employment.</p>
<p>&#8220;BuddyPress blew me away,&#8221; Eisenwasser said. &#8220;It allowed for a sophisticated and fully customizable membership site while still benefiting from the WordPress ecosystem. We launched our online community almost overnight, and a year later 30,000 people were logging in every day and hiring each other.&#8221;</p>
<p>BuddyBoss entered the BuddyPress ecosystem while it was still in its infancy. Eisenwasser saw an opportunity to help other entrepreneurs launch communities by creating products that solved common problems. In addition to the products, his team also offers development for custom requests.</p>
<p>&#8220;I’ve been focusing on BuddyPress for so long now that I sometimes forget you can run WordPress without it,&#8221; he said.</p>
<h3>Growing a Business in a Small Niche</h3>
<p>As BuddyBoss products are targeted towards a small niche market, hiring has posed a continual challenge for Eisenwasser.</p>
<p>&#8220;A company is only as good as its employees, and our biggest challenge has always been finding the right people to hire,&#8221; he said. &#8220;We need talented people who can move the company forward, knowing that we’re in a niche market and skilled developers who understand BuddyPress are harder to find.</p>
<p>&#8220;It’s taken us many years to put together our current staff, and even now I still spend a considerable amount of time on hiring and training.&#8221;</p>
<p>The BudddyBoss team is now up to 14 people who collaborate on design, development, support, and marketing. They currently serve several thousand customers, thanks to tremendous growth over the past couple of years.</p>
<p>&#8220;Our revenue is 12.5 times larger today than it was three years ago, and most of that growth has been in the past year,&#8221; Eisenwasser said.</p>
<p>&#8220;In the past 6 months, product revenue has grown 5 times larger due to improved product offerings, word of mouth from our customers, and better marketing. When I speak of products, I am combining themes and extensions together.</p>
<p>&#8220;Currently we have several thousand paying customers, with an average checkout order of $130. Many customers purchase two or three products in one order, as we design our themes and plugins to work together for a unified experience,&#8221; he said.</p>
<p>Despite the success of BuddyBoss&#8217; themes and plugins, the company&#8217;s time is still divided 50/50 between product support and custom client work.</p>
<p>&#8220;Custom development generates an important part of our revenue, and our product revenue is quickly catching up,&#8221; Eisenwasser said.</p>
<p>&#8220;We actually have two teams, each equipped for development, support and maintenance. I personally manage our product team, while my business partner Tom Chedd manages our client team.</p>
<p>&#8220;Many of our clients start as customers, and so when we develop products we’re always thinking about how our clients might use them. I think this has contributed to better products, because we actually use what we build,&#8221; he said.</p>
<h3>Focused, Intentional Product Growth</h3>
<p>In the early days of BuddyBoss, Eisenwasser took a job managing SongLyrics.com. Although he learned some valuable skills from the position, theme development at BuddyBoss was slow for the first few years.</p>
<p>As product revenue has grown, BuddyBoss is looking to invest in adding more offerings to the store.</p>
<p>&#8220;We’ve been working hard on assembling a team of talented developers who can help us build more products, however we’d rather spend a couple of months working on a theme than pushing out a bunch of themes fast,&#8221; he said.</p>
<p>Instead of pumping up the BuddyBoss store with a proliferation of products, Eisenwasser and his team have intentionally kept the number of offerings on the smaller side. For years, their primary product was the original <a href="http://www.buddyboss.com/product/buddyboss-theme/" target="_blank">BuddyBoss</a> theme before adding the new <a href="http://www.buddyboss.com/product/boss-theme/" target="_blank">Boss</a> theme this year. Branching out into BuddyPress <a href="http://www.buddyboss.com/plugins/" target="_blank">plugins</a> was also a more recent development.</p>
<p><a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2015/05/boss-1100x760.jpg"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2015/05/boss-1100x760.jpg?resize=500%2C345" alt="boss-1100x760" class="aligncenter size-large wp-image-43398" /></a></p>
<p>&#8220;Designing for social networks requires a lot of thought, and we take our time considering every aspect,&#8221; Eisenwasser said.</p>
<p>&#8220;Our customers give us all kinds of feedback about what they want, and there are many more themes coming down the road based on what we’ve learned.&#8221;</p>
<h3>Current Landscape of the BuddyPress Theme and Plugin Market</h3>
<p>Despite the fact that BuddyPress is now an eight-year-old plugin with a solid community of contributors supporting it, the marketplace for BP themes and plugins remains relatively small. Eisenwasser does not believe that the market is large enough to sustain a full-time theme business, but his team is working to expand its audience outside of the traditional WordPress/BuddyPress community.</p>
<blockquote><p>BuddyPress has an active developer community and it’s been growing every year. Even if there are not enough people building on BuddyPress to sustain a larger theme business today, we can help change that. </p>
<p>By building quality products we can improve the usability and perception of BuddyPress and encourage other people to come and join the community. <strong>There are many people building social networks every day &#8211; the question is whether or not they choose to build them within the BuddyPress ecosystem.</strong></p></blockquote>
<p>As BuddyPress core cannot encompass all the functionality required by the many varied social networks people want to build, part of making BuddyPress more appealing is providing third-party add-ons that are compelling and reliable. BuddyBoss has started carving out a name for itself with useful plugins that extend the platform to support <a href="http://www.buddyboss.com/product/buddyboss-media/" target="_blank">media uploads</a>, <a href="http://www.buddyboss.com/product/buddypress-edit-activity/" target="_blank">activity editing</a>, <a href="http://www.buddyboss.com/product/buddypress-global-search/" target="_blank">global search</a>, and a Facebook-like <a href="http://www.buddyboss.com/product/buddyboss-wall/" target="_blank">wall</a> functionality.</p>
<p>&#8220;We always envisioned ourselves building both themes and plugins,&#8221; Eisenwasser said. &#8220;I don’t really see a distinction. To me, we’re building solutions.</p>
<p>&#8220;Layout issues are best solved within themes, and functionality issues are best solved by plugins. All of our products are designed to work together seamlessly, and work great with other themes and plugins too.&#8221;</p>
<p>In the future, Eisenwasser said that BuddyBoss may open up its marketplace to third-party developers, but his primary concern is to maintain the same level of quality that customers have come to expect from BuddyBoss products.</p>
<p>&#8220;For now, we are focusing on the theme market and bringing value / creating solutions for different niches,&#8221; he said. &#8220;We plan on evolving with the market as we grow. This could eventually require integrating with other platforms and putting more focus on other types of devices.&#8221;</p>
<p>While there are a handful of successful BuddyPress themes on Themeforest, BuddyBoss is arguably the most dominant independent BuddyPress theme development shop at the moment. Eisenwasser&#8217;s experience indicates that the landscape of the BuddyPress product market is not yet wide open. Businesses looking to push into this space will need to produce top quality products while simultaneously tilling the soil to expand the WordPress + BuddyPress market in general.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Wed, 06 May 2015 17:30:09 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:14;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:22:"Matt: Untold Silk Road";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:21:"http://ma.tt/?p=45025";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:38:"http://ma.tt/2015/05/untold-silk-road/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:521:"<p>This <a href="http://www.wired.com/2015/04/silk-road-1/">Untold Story of Silk Road</a> is pretty amazing writing, a gripping story regardless of the genre (non-fiction, in this case). I can&#8217;t wait for the next chapter to come out on May 14. Also when reading about Ross, <a href="http://www.wired.com/2015/02/ross-ulbricht-didnt-create-silk-roads-dread-pirate-roberts-guy/">it&#8217;s interesting to keep in mind Vanity Jones who was in many ways the brains behind the operation</a>, and also undiscovered.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Wed, 06 May 2015 06:00:00 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:4:"Matt";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:15;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:79:"WPTavern: Dan Griffiths Launches $175K Crowdfunding Campaign to Build HostPress";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=43256";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:88:"http://wptavern.com/dan-griffiths-launches-175k-crowdfunding-campaign-to-build-hostpress";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:5350:"<p>When it comes to hosting, there are predominately two choices to manage your account or server; <a href="http://www.odin.com/products/plesk/">Plesk</a> and <a href="http://cpanel.com/">cPanel</a>. Dan Griffiths wants to shake things up by adding a third choice with <a href="https://www.indiegogo.com/projects/hostpress-redefining-web-hosting-control-panels">HostPress</a>. HostPress is an open-source, extensible server control panel built on top of WordPress.</p>
<a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2015/05/HostPressLogo.png"><img class="wp-image-43267 size-large" src="http://i0.wp.com/wptavern.com/wp-content/uploads/2015/05/HostPressLogo.png?resize=500%2C333" alt="HostPress Logo" /></a>HostPress Logo
<p>Griffiths has started an <a href="https://www.indiegogo.com/projects/hostpress-redefining-web-hosting-control-panels">Indiegogo crowdfunding campaign</a> to generate $175k. The money will be used to cover personal expenses, take care of his son, and cover the server fees and salary of an experienced server administrator for one year. cPanel and Plesk have several shortcomings, including:</p>
<ul>
<li>Minimum requirements</li>
<li>Extensibility</li>
<li>Ease of branding</li>
<li>Sustainability</li>
</ul>
<p>HostPress will have a smaller footprint on servers and customers will be able to brand it with just a few lines of code. By using WordPress, the platform taps into existing development resources which will help it stay on top of security issues.</p>
<a href="http://i1.wp.com/wptavern.com/wp-content/uploads/2015/05/HostPressConceptImage.png"><img class="size-full wp-image-43376" src="http://i1.wp.com/wptavern.com/wp-content/uploads/2015/05/HostPressConceptImage.png?resize=620%2C467" alt="HostPress Concept Image" /></a>HostPress Concept Image
<p>Server managers will be able to extend the platform through an API as well as plugins. HostPress will have a robust set of plugins available to the public, covering the most popular server software at the time of launch.</p>
<h2>Market Share</h2>
<p>According to <a href="http://builtwith.com/">BuiltWith</a>, there are more than 4.1 million individual servers running active, licensed cPanel and Plesk installations. Base on this number, Griffiths calculates more than $82M is spent on control panels assuming a $20 per month price tag. Dedicated servers using cPanel, however, cost $45 per month.</p>
<h2>Funding Specifics</h2>
<p>The funds generated through the campaign will go to Griffiths, even if it&#8217;s not fully funded. However, if the project is fully funded, he expects to ship a beta of the product in June of 2016. He also plans to release the following:</p>
<ul>
<li>A modern, open-source, extensible server control panel</li>
<li>An intuitive (and responsive) interface</li>
<li>A fully-localized platform (HostPress speaks your language!)</li>
<li>A platform developers can build on, including the ability to simply rebrand the panel without complex template languages.</li>
</ul>
<p>If the project doesn&#8217;t reach its funding goal, development will continue but at a slower pace. &#8220;The goal is to provide the Internet with an alternative to the clutter and complexity of server management. Even if we don&#8217;t become a major contender in this space, the support we do get will put pressure on the existing solutions to up their game,&#8221; Griffiths said.</p>
<h2>Market Demand</h2>
<p>When asked how much demand he&#8217;s witnessed in the hosting space, he replied, &#8220;There’s constant demand for fresh blood in the control panel space. Just take a look at a few of the cPanel/Plesk discussions online and you’ll see a lot of people complaining about their various flaws, or looking for a good alternative. In fact, there have been a number of other attempts made over the years, but none have gained traction due to one fatal flaw. They’re all written by engineers, so while the underlying functionality is solid, the interface always sucks.&#8221;</p>
<p>If there is high demand from webhosts and server managers for a solution that&#8217;s better than Plesk or cPanel, Griffiths should have no problem reaching his funding goal. To find out what major webhosting companies think of the campaign and if they&#8217;ll financially contribute, I contacted GoDaddy and InMotion hosting. Both companies did not respond to my inquiries, despite multiple efforts to contact them.</p>
<h2>Largest WordPress Crowdfunding Campaign on Record</h2>
<p>Griffiths isn&#8217;t a stranger to the WordPress community&#8217;s generosity. Near the end of 2014, he started a <a href="http://wptavern.com/wordpress-community-pulls-together-to-help-a-member-in-need">crowdfunding campaign</a> to raise $2,500. He ended up with nearly three times that amount. In this case however, it&#8217;s a product and $175k is a lot of money. If successful, it will be the largest WordPress crowdfunding campaign on record, dwarfing <a href="http://wptavern.com/buddypress-bbpress-and-glotpress-development-campaign-is-now-fully-funded">John James Jacoby&#8217;s campaign</a> by $125k.</p>
<p>HostPress looks like it could be an interesting product but without the financial aid of companies with large pockets, I don&#8217;t see how the campaign will reach its funding goal. Let us know your reactions to the campaign in the comments.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Tue, 05 May 2015 22:16:14 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Jeff Chandler";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:16;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:74:"WPTavern: New Plugin Reorders the WordPress Admin Menu Using Drag-and-Drop";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=43236";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:84:"http://wptavern.com/new-plugin-reorders-the-wordpress-admin-menu-using-drag-and-drop";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:3626:"<p><a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2015/05/reorder-admin-menu.png"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2015/05/reorder-admin-menu.png?resize=1025%2C482" alt="reorder-admin-menu" class="aligncenter size-full wp-image-43336" /></a></p>
<p>Every WordPress administrator has different needs when navigating the admin. For example, one may require frequent access to the Posts menu and rarely touch the Appearance menu. Another admininistrator may have a certain custom post type that is accessed more frequently than any other menu item.</p>
<p>In some cases plugin developers take their liberties placing their menu items at the very top of the admin. Jetpack is a prime example of a plugin that assumes preeminence above Posts, Media, Comments, and other more frequently used publishing items.</p>
<p><a href="https://wordpress.org/plugins/admin-menu-manager/" target="_blank">Admin Menu Manager</a> is a new plugin that allows you to take control of the admin and order menu items to suit your workflow. The plugin, created by <a href="https://spinpress.com/" target="_blank">Pascal Birchler</a> and the folks at <a href="http://required.ch/" target="_blank">required+</a>, adds a simple drag-and-drop interface for decluttering and reordering menu items.</p>
<p></p>
<p>As you can see in the demo, Admin Menu Manager allows you to drag menu items from top level to a sub-menu or pull sub-menus out to top level for easier access. The plugin is unobtrusive and doesn&#8217;t require its own settings page.</p>
<p>&#8220;I got the idea for this particular plugin when I stumbled upon a similar one that used a drag and drop interface just for reordering menu items,&#8221; Birchler said. After searching for other comparable solutions for the admin, he decided to take it one step further and produce a proof-of-concept. The result was a useful new plugin.</p>
<p>&#8220;I learned that such side projects are great for adapting new technologies and digging deeper into WordPress,&#8221; he said. &#8220;This is already my third plugin leveraging Backbone.js in my first three months working at required+. Before that I had no idea how to use this library.</p>
<p>&#8220;Also, I now know that the WordPress admin menu can be quite a mess. I mean, there aren&#8217;t even unit tests for it. I&#8217;ll see how I can change that in core.&#8221;</p>
<p>Birchler said he counts himself lucky that his employer offers him time to work on open source projects. Before he started at required+, the company had no plugins listed on WordPress.org. Now they are up to five after polishing up a few that were lying dormant on GitHub for awhile.</p>
<p>Version 1 of Admin Menu Manager is <a href="https://wordpress.org/plugins/admin-menu-manager/" target="_blank">now available on WordPress.org</a> and the team is working on adding the following features to version 2:</p>
<ul>
<li>Completely remove (and restore) menu items</li>
<li>Edit existing menu items and their icons</li>
<li>Add custom items to the admin menu</li>
</ul>
<p>In its current state, the plugin is a good option for re-arranging the admin to suit a client&#8217;s needs or for simply getting Jetpack and other less-frequently used menus out of your way.</p>
<p>New users often complain about how confusing the WordPress admin can be, especially when many active plugins are adding their own top-level menus. With the features promised in version 2, <a href="https://wordpress.org/plugins/admin-menu-manager/" target="_blank">Admin Menu Manager</a> has the potential to become a solid tool for decluttering the admin.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Tue, 05 May 2015 21:11:01 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:17;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:89:"WPTavern: Themekraft’s Difficult Experience Switching to the WordPress Theme Customizer";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=43297";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:80:"http://wptavern.com/themekrafts-difficult-experience-switching-to-the-customizer";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:7022:"<p>Sven Lehnert, CEO of <a href="http://themekraft.com/">Themekraft</a>, published <a href="http://themekraft.com/what-it-means-for-us-and-others-to-follow-the-theme-review-guidelines/">his company&#8217;s experience</a> migrating from a custom theme options page to the theme customizer. He describes how difficult it was to move between the two and how it caused user frustration.</p>
<p>&#8220;I’m sorry for the trouble some users are experiencing. We receive positive as well as frustrated feedback and I understand how users feel this way,&#8221; Lehnert said.</p>
<a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2015/05/CustomThemeOptionsPage.png"><img class="size-full wp-image-43339" src="http://i0.wp.com/wptavern.com/wp-content/uploads/2015/05/CustomThemeOptionsPage.png?resize=1025%2C493" alt="Custom Theme Options Page" /></a>Custom Theme Options Page
<a href="http://i1.wp.com/wptavern.com/wp-content/uploads/2015/05/CustomizerThemeOptions.png"><img class="size-full wp-image-43338" src="http://i1.wp.com/wptavern.com/wp-content/uploads/2015/05/CustomizerThemeOptions.png?resize=1025%2C515" alt="Using the Customizer" /></a>Using the Customizer
<p>Themekraft is migrating to the customizer because of <a href="http://wptavern.com/wordpress-org-now-requires-theme-authors-to-use-the-customizer-to-build-theme-options">a new requirement</a> that forces themes hosted in the <a href="https://wordpress.org/themes/">WordPress theme directory</a> to use it to build theme options. The requirement has sparked controversy and with 175 comments, is the most discussed article in Tavern history.</p>
<h2>Consequences of Doing the Right Thing</h2>
<p>Although Themekraft believes the requirement is the right decision, it&#8217;s come at the price of losing users. Lehnert expressed frustration that doing the right thing has caused users to jump ship, &#8220;I think it&#8217;s really frustrating, that our choice to use the customizer to create better themes has made users switch to a different theme. Our decision to use the customizer has pushed users to Themeforest.</p>
<p>A lot of users have told us they moved to Themeforest and gave up on themes hosted on WordPress.org. To them, Themeforest does the job of WordPress.org and WordPress.org themes are outdated with limited functionality.&#8221;</p>
<p>Two to three years ago I would have agreed with the opinion that themes in the WordPress theme directory leave a lot to be desired. I&#8217;ve read enough <a href="http://wptavern.com/tag/free-wordpress-themes">reviews of great looking free themes</a> that I&#8217;ve nearly erased this mindset. I used to discourage users from browsing for themes on the directory, now I encourage them.</p>
<h2>The Educational Problem</h2>
<a href="http://i1.wp.com/wptavern.com/wp-content/uploads/2014/09/ChalkboardLearning.png"><img class="size-full wp-image-30030" src="http://i1.wp.com/wptavern.com/wp-content/uploads/2014/09/ChalkboardLearning.png?resize=640%2C250" alt="Chalkboard Learning" /></a>photo credit: <a href="https://www.flickr.com/photos/signifying/582602054/">Clint Gardner</a> &#8211; <a href="http://creativecommons.org/licenses/by-nc-sa/2.0/">cc</a>
<p>For years, the WordPress community has <a href="https://managewp.com/themes-design-plugins-functionality">discussed and educated</a> users on why it&#8217;s important to separate presentation from functionality. Lehnert thinks it&#8217;s something normal users can&#8217;t understand, &#8220;They want to buy solutions and base their purchasing decisions from a graphical point of view. The separation from design and functionality is not understandable for the normal user.&#8221;</p>
<p>In a <a href="http://wptavern.com/wordpress-org-now-requires-theme-authors-to-use-the-customizer-to-build-theme-options#comment-67849">recent comment on the Tavern</a>, Chip Bennett explains his perspective on the educational part of the problem, &#8220;You are absolutely right that the wider (i.e. more than just the developers/insiders/one-percenters) have a very long way to go to educate those users.</p>
<p>The reality is that, for far too long, commercial Theme developers attempted to add &#8216;value&#8217; to their Themes by creating Theme+Plugin combinations.&#8221;</p>
<p>There&#8217;s been some movement on this front with some theme authors <a href="http://wptavern.com/why-wordpress-theme-developers-are-moving-functionality-into-plugins">moving theme functionality back into plugins</a>.</p>
<p>Part of the problem is explaining the difference between themes and plugins. If you ask 10 WordPress developers where the line is drawn, you&#8217;d likely get at least five different answers. Since plugins can do everything a theme can do, it can easily become a never-ending debate between presentation and functionality.</p>
<h2>The Balancing Act</h2>
<p>Creating a WordPress product that balances user and developer needs is tricky. The main impetus for requiring the theme customizer is to provide a standardized experience between all the themes hosted in the directory. It will also help the Theme Review Team review themes more efficiently.</p>
<p>Lehnert trusts the Theme Review Team&#8217;s decision but feels the change is geared towards developers. &#8220;I really believe in the WordPress community and I trust there will be a solution to the problem some day. At the moment however, the theme review guidelines only make sense from a developer&#8217;s perspective.&#8221;</p>
<p>He suggests that the WordPress theme directory add support for <a href="http://wptavern.com/up-to-the-community-to-improve-theme-demo-data">better theme previews</a> with customizer access. This way, users can see how flexible and customizable a theme is.</p>
<h2>Food for Thought</h2>
<p>Based on Lehnert&#8217;s experience, there is a perception problem between WordPress.org hosted themes and those on Themeforest. It will be interesting to see if other theme authors and companies have a similar experience when they make the switch.</p>
<p>It was disheartening to read this statement by Lehnert, &#8220;In the case of a theme business, staying outside of the community is easier!&#8221; Developers and users have at least one thing in common, they don&#8217;t like change, especially when it comes to requirements or guidelines. Developers have always had two choices:</p>
<ol>
<li>Abide by the requirements and guidelines to have a plugin or theme hosted on WordPress.org</li>
<li>Do things on your own terms through your site and GitHub</li>
</ol>
<p>Outside of WordPress.org, it&#8217;s the wild west. You can use whatever custom options page or framework you want without anyone telling you what to do.</p>
<p>Theme developers and companies are going to experience growing pains meeting the new requirement, but I think users of themes hosted on WordPress.org will be better off in the long run. They&#8217;ll know what to expect thanks to a standardized interface and eventually get used to interacting with the customizer.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Tue, 05 May 2015 20:45:45 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Jeff Chandler";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:18;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:90:"WPTavern: BuddyPress 2.3 Will Introduce Companion Stylesheets for WordPress Default Themes";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=43120";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:100:"http://wptavern.com/buddypress-2-3-will-introduce-companion-stylesheets-for-wordpress-default-themes";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:4909:"<p><a href="http://i2.wp.com/wptavern.com/wp-content/uploads/2014/01/wp-bp.jpg"><img src="http://i2.wp.com/wptavern.com/wp-content/uploads/2014/01/wp-bp.jpg?resize=1025%2C383" alt="wp-bp" class="aligncenter size-full wp-image-14611" /></a></p>
<p>Two years ago, <a href="http://codex.buddypress.org/developer/releases/version-1-7/" target="_blank">BuddyPress 1.7</a> introduced WordPress theme compatibility, which meant that sites no longer required a BuddyPress-specific theme in order to run the plugin. The vast majority of themes that use <a href="http://codex.wordpress.org/Theme_Development" target="_blank">WordPress&#8217; standard template loading</a> should be compatible with BuddyPress.</p>
<p>However, some themes still need a little help to make the BuddyPress UI elements more harmonious with the rest of the theme. This is the case with the WordPress default themes, which prompted BuddyPress contributors to look into creating a set of companion stylesheets to address any conflicts arising between the plugin and the themes.</p>
<p><a href="https://twitter.com/hnla" target="_blank">Hugo Ashmore</a>, who is leading the task of creating supporting styles for BuddyPress when activated on the default WordPress themes, summarized the goal on the <a href="https://bpdevel.wordpress.com/2015/04/01/companion-styles-task-updates/" target="_blank">BP development blog</a>:</p>
<blockquote><p>We discussed and agreed in essence that it would be nice that BP displayed at its best when activated on these default WP themes as they may well be a user&#8217;s first impression of BP and first impressions last.</p></blockquote>
<p>As of BuddyPress 2.3, the plugin will check and enqueue an additional set of styles if either <a href="https://buddypress.trac.wordpress.org/ticket/6291" target="_blank">Twenty Fifteen</a> or <a href="https://buddypress.trac.wordpress.org/ticket/6338" target="_blank">Twenty Fourteen</a> are active on the site. The same process will be used moving forward to support new WordPress default themes as they are released.</p>
<p>Work on the tickets for these two themes has already been committed to <a href="https://buddypress.trac.wordpress.org/browser/trunk" target="_blank">BP trunk</a> and is on track for inclusion in 2.3. Whereas previously you might have seen messy unordered lists and BP component UI elements in various states of disarray, the new companion stylesheets resolve many of these issues with BP in use on the default themes.</p>
<p><a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2015/05/bp-twenty-fifteen.png"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2015/05/bp-twenty-fifteen.png?resize=1025%2C468" alt="bp-twenty-fifteen" class="aligncenter size-full wp-image-43320" /></a></p>
<h3>A New Approach to User Account / Single Group Navigation Menus</h3>
<p>If you take BuddyPress 2.3-alpha for a spin, you&#8217;ll notice that the companion stylesheets take a new approach to the user account and single groups navigation, with the primary object nav now displayed vertically on the left.</p>
<p>The traditional horizontal nav often causes problems, as plugin developers can dynamically add to this menu, pushing it out to two or more rows of menu items. The vertical menus in the stylesheet eliminate the crowding that you often see in the horizontal user/group navigation.</p>
<p><a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2015/05/bp-user-account-nav.png"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2015/05/bp-user-account-nav.png?resize=1025%2C792" alt="bp-user-account-nav" class="aligncenter size-full wp-image-43323" /></a></p>
<p>In the most recent <a href="https://bpdevel.wordpress.com/2015/04/29/companion-styles-an-update/" target="_blank">update</a> on the task, Ashmore requests that users bear in mind it&#8217;s &#8220;less about theming every aspect as about ensuring a broad sweep on elements to ensure the majority of critical issues are addressed.&#8221;</p>
<p>The primary goal is to make BuddyPress render in a more seamless manner in the default themes. Refined styling to tweak specific BP elements is next on the agenda. If you want to test 2.3-alpha and find that the stylesheets aren&#8217;t loading, make sure to add <code>define ('SCRIPT_DEBUG', true);</code> to your <em>wp-config.php</em> file if you want to run trunk directly.</p>
<p>Contributors working on the companion stylesheet tickets <a href="https://bpdevel.wordpress.com/2015/04/29/companion-styles-an-update/" target="_blank">welcome feedback</a> from the community regarding the layout refactoring of the parent theme containers for the BP directories and user account screens, as well as the vertical menu approach. Testing these elements ahead of the BuddyPress 2.3 beta, expected out this week, will help contributors ship more polished stylesheets in the official release at the end of May.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Tue, 05 May 2015 18:30:39 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:19;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:85:"WPTavern: WordCamp Miami 2015 to Experiment with New Tracks, Tickets Selling Out Fast";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=41567";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:94:"http://wptavern.com/wordcamp-miami-2015-to-experiment-with-new-tracks-tickets-selling-out-fast";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:4934:"<p><a href="http://i1.wp.com/wptavern.com/wp-content/uploads/2015/02/wcmia-2015.jpg"><img src="http://i1.wp.com/wptavern.com/wp-content/uploads/2015/02/wcmia-2015.jpg?resize=750%2C349" alt="wcmia-2015" class="aligncenter size-full wp-image-39447" /></a></p>
<p><a href="https://miami.wordcamp.org/2015/" target="_blank">WordCamp Miami</a>, one of the largest and longest running WordPress events in the US, is gearing up to <a href="http://wptavern.com/wordcamp-miami-gears-up-for-6th-year-with-new-tracks-and-workshops-planned" target="_blank">celebrate its 6th year on May 29-31</a>. Last year the event brought together 770 attendees and tickets for 2015 are selling fast.</p>
<p>&#8220;We have sold over 600 tickets, and we see a sell-out on the horizon,&#8221; organizer David Bisset told the Tavern. &#8220;Our workshops are already almost sold out, and soon the weekend tickets will be as well.&#8221;</p>
<p>WordCamp Miami has adopted a strong educational focus for the event with an expanded array of workshops. On Friday, May 29, the organizers will host a BuddyCamp and a separate Front-End/Theme workshop. As <a href="http://wptavern.com/wordcamp-miami-kids-workshop-launches-the-next-generation-of-bloggers" target="_blank">last year&#8217;s kids workshop</a> was a success, organizers are exploring the option of adding a more advanced kids workshop that gets into coding.</p>
<h3>New &#8220;How To&#8221; Tracks and Mini-Workshops for Developers</h3>
<p>Bisset and his team received feedback from last year&#8217;s event indicating that attendees are interested in having more advanced developer talks. This year organizers are replacing the user track on Saturday with experimental &#8220;How To&#8221; tracks.</p>
<p>&#8220;To my knowledge, this is the first time a WordCamp has tried something like this,&#8221; Bisset said. &#8220;This track will focus on getting things done – almost like a mini-workshop focused on one or two concepts with step by step instructions &#8211; steps you can go home that night and do hopefully on your own.&#8221; Attendees of these tracks will be able to print out “cheat sheets” of each session and bring them to the conference or refer to them when they get back home.</p>
<p>The organizers are hand-selecting the speakers and requesting that they format their slides to be a lasting resource for users. Speakers will also move to the Happiness Bar to answer any questions in a non-rushed environment after their sessions are finished.</p>
<p>For the first time, WordCamp Miami will add an additional developer track on Sunday, which will consist of mini-workshops. In this format, two speakers will be give presentations on a single subject (back-to-back), so attendees will get multiple perspectives on the same subject.</p>
<p>&#8220;For example, Andrea Rennick and Jesse Petersen will start off that Sunday with a &#8216;Genesis Framework&#8217; mini-workshop,&#8221; Bisset said. &#8220;Andrea will introduce the basics and concepts while Jesse afterwards will dive into more advanced topics on Genesis. There are also mini-workshops on building WordPress plugins, the WP-API, and more.&#8221;</p>
<p>Organizers are also reaching out to other open source communities to help forge connections across different projects.</p>
<p>&#8220;For the first time, we have a Joomla developer coming to speak on Sunday and talk about Joomla, WordPress, and open source,&#8221; Bisset said. &#8220;We have been opening our doors to local Joomla and Drupal developers so we are excited about this presentation and hope it’s the start of something bigger for the future.&#8221;</p>
<p>WordCamp Miami is known for its excellent opportunities for networking and will maintain that aspect of the event in 2015.</p>
<p>&#8220;Besides knowledge, networking has always been a key reason why people (local or not from the area) attend WordCamps,&#8221; Bisset said. Organizers are tailoring the after-party to be more of a &#8220;networking party&#8221; where attendees can continue their conversations from the event. Networking parties will take place on Thursday evening, Saturday night, Sunday for social breakfast, and a brief ice cream social Sunday afternoon.</p>
<p>The new venue, Florida International University, is large enough to accommodate the 800+ attendees expected this year. All of the educational and networking opportunities during the 3.5 day event give attendees an incredible value for their tickets, especially for those who are traveling from a distance.</p>
<p>WordCamp Miami is an event that traditionally sells out every year and Bisset expects the same for 2015. The workshops will be limited to 100-150 people and tickets are going fast. Check out the event <a href="https://miami.wordcamp.org/2015/" target="_blank">website</a> for more details on the schedule and available <a href="https://miami.wordcamp.org/2015/tickets/" target="_blank">tickets</a>.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Mon, 04 May 2015 21:27:21 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:20;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:32:"Matt: Macbook &amp; USB-C Review";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:21:"http://ma.tt/?p=45018";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:42:"http://ma.tt/2015/05/macbook-usb-c-review/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:5148:"<p><img class="alignright  wp-image-45019" src="https://ma.tt/files/2015/05/macbook-481x740.jpg" alt="macbook" width="266" height="409" />I&#8217;ll start by saying I&#8217;m writing this on a 12&#8243; Macbook in space grey. The screen, weight, size, and weird keyboard have captured my heart and I&#8217;m enjoying using the machine. It has replaced a 15&#8243; Retina Pro as my primary laptop for about 2 weeks now, with most of that being on the road.</p>
<p>For better and worse, it&#8217;s a lot like an iPad &#8212; the size and weight feel very natural in your life, and the screen is really gorgeous. It&#8217;s also not worth plugging anything into it besides its charging cable. It feels great to open and pick up right where you left off. The speed feels more than adequate for everything I&#8217;ve thrown at it so far, though I haven&#8217;t tried video editing or photo management outside of the new Apple Photos app. If there was a perfect iPad and keybard combo, it would feel and look like the new Retina Macbook.</p>
<p>The second thing I&#8217;ll say is I wouldn&#8217;t recommend this laptop for everybody yet. There are some trade-offs, for example I can get 5-6 hours from the battery but it&#8217;s a little shorter than I expected. It&#8217;s refreshing to have a computer that&#8217;s totally silent with no fan, and I&#8217;ve only had a heat warning once when it was sitting in hot direct sunlight for about 20 minutes. I moved into the shade because I was also wilting a bit from the direct LA sun.</p>
<p>The main reason I&#8217;m not sure if I&#8217;d recommend this Macbook right is hopefully ephemeral: USB-C. One of the very coolest things about the new Macbook is it charges (quickly) with a new standard called USB 3.1 with a Type-C connector, which is open for anyone to use, is reversible, and I think is going to be the future <a href="http://ma.tt/2015/02/usb-history-and-type-c/">as I&#8217;ve written about on this blog before</a>.</p>
<p><img class="aligncenter size-medium wp-image-45021" src="https://ma.tt/files/2015/05/USB-type-C-840x321.jpg" alt="USB-type-C" width="840" height="321" /></p>
<p>Today, however, USB-C is bleeding edge. I actually have one other device that uses it, Google&#8217;s new Chrome Pixel laptop, but when you search on Amazon for &#8220;USB-C&#8221; there are almost no results except sketchy or not-in-stock generic things, and Apple doesn&#8217;t have any USB-C stuff in stock, even in their stores. (Perhaps related to the general stock issues <a href="http://ma.tt/2015/04/apple-loyalty/">I ended up writing about last time I tried to pen this Macbook review</a>.) I was able to get a cable that had male old USB and male USB-C on Amazon, that was pretty much it. The promise of USB-C is incredible: standard cables for charging everything super-quickly, a battery pack that could charge your phone or laptop, smaller power bricks, a next-gen Thunderbolt display with one cable for all data, display, and charging. You can see and imagine a really perfect ecosystem around USB-C, but it doesn&#8217;t exist today. <a href="http://9to5mac.com/2015/03/11/belkin-and-google-debut-usb-c-cables-including-low-priced-ethernet-displayport-hdmi-and-micro-usb-adapters/">Some cool stuff has been announced but isn&#8217;t coming until the summer</a>, even <a href="http://www.pcworld.com/article/2903292/usb-typec-peripherals-are-on-the-way-and-storage-devices-are-first-up.html">thumb drives</a>.</p>
<p>The problem in one sentence: it is impossible to buy a cable, from Apple or otherwise, that let&#8217;s you plug an iPhone 6+ into the Macbook. They&#8217;ve announced but not shipped (to me at least) an adapter for old USB stuff (Type-A), but the last thing I need in my life is another dongle.</p>
<p>I thought I would miss this but in practice it has been a surmountable problem. Instead of using my laptop as a battery, I&#8217;ve been <a href="http://hellomerch.com/collections/wordpress/products/jetpack-battery-pack">using a battery to recharge miscellaneous electronics on-the-go</a>, and everything else including transferring photos from phone to computer is now happening wirelessly.</p>
<p><img class="  wp-image-45023 alignright" src="https://ma.tt/files/2015/05/apple-line-up.jpg" alt="apple-line-up" width="333" height="214" />I think the most perfect tech combo in the world right now might be a <a href="http://ma.tt/2014/10/retina-5k-mac/">5k iMac at home</a>, an iPhone 6+ as your phone, and the Macbook as an on-the-go device. (The iPad isn&#8217;t in my must-have list anymore.) The strengths of each of these products complement each other, and as Apple gets better about the cloud with things like photos, tethering, keychain sync, and continuity it&#8217;s really becoming a pleasure to use these products together. I also have an Apple Watch in the mix, but still forming my thoughts on that one.</p>
<p>The thing I might be most excited about is when some of the new tech in the retina Macbook around the keyboard, screen, trackpad, and battery is applied to their &#8220;Pro&#8221; series, which will probably be a bit more in my wheelhouse.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Mon, 04 May 2015 21:25:20 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:4:"Matt";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:21;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:99:"WPTavern: WordPress Theme Developer Handbook Updated with Comprehensive Guide to the Customizer API";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=43238";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:109:"http://wptavern.com/wordpress-theme-developer-handbook-updated-with-comprehensive-guide-to-the-customizer-api";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:6375:"<a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2015/02/design-studio.jpg" rel="prettyphoto[43238]"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2015/02/design-studio.jpg?resize=760%2C374" alt="photo credit: Artist's Room - (license)" class="size-full wp-image-39730" /></a>photo credit: <a href="http://www.flickr.com/photos/63191453@N00/2650862549">Artist&#8217;s Room</a> &#8211; <a href="https://creativecommons.org/licenses/by/2.0/">(license)</a>
<p>The Theme Review Team&#8217;s controversial decision to <a href="http://wptavern.com/wordpress-org-now-requires-theme-authors-to-use-the-customizer-to-build-theme-options" target="_blank">require the use of the Customizer API for building theme options</a> unearthed a wave of criticism and concern about the capabilities of the customizer.</p>
<p>In response to more than <a href="http://wptavern.com/wordpress-org-now-requires-theme-authors-to-use-the-customizer-to-build-theme-options#comments" target="_blank">150 comments</a> debating on the topic, Nick Halsey, who has worked extensively on the feature in WordPress core, stopped by to offer a few words in support of the Theme Review Team&#8217;s decision:</p>
<blockquote><p>Many of the comments here are misinformed or unaware of both the full power of and the future importance of the Customizer. I’ve given an <a href="http://celloexpressions.com/blog/the-customizer-is-the-future-for-themes-and-theme-options/" target="_blank">overview of my perspective on my blog</a>, and while those views don’t directly represent the views of the WordPress project, I can say that most people working on the Customizer in core would agree with my points. Like it or not, the Customizer is here to stay, and ignoring that fact will eventually cause users to turn against you.</p></blockquote>
<p>Halsey&#8217;s post calls for theme developers to re-examine their philosophies when it comes to building complex UI options and stop re-inventing the wheel. He believes the customizer has more creative potential than developers give it credit for.</p>
<blockquote><p>Complaints about the amount of screen real estate available and the 300px default width show a lack of creativity and resistance for the sake of resistance to change. Start by removing all of the ads, external links, unnecessary branding, unnecessary options, and general clutter. Make your options self-explanatory – if you need a paragraph to describe what it does, it probably shouldn’t be a user-facing option. Do you still have so much UI that the experience is completely unusable? Try an outside-the-box solution, like utilizing the core media modal (header images and core media controls use it), a custom modal (theme details modal in core), or a slide-out panel (widgets in core and eventually menus in core as well).</p></blockquote>
<p>Prior to the Theme Review Team&#8217;s decision, documentation on theme development with the Customizer API was sparse and claims about its wide range of capabilities were difficult to support.</p>
<p>Resistance from theme developers has WordPress.org contributors scrambling to produce better documentation for using the customizer in themes. Over the weekend, Halsey created a canonical developer tutorial on the <a href="https://developer.wordpress.org/themes/advanced-topics/customizer-api/" target="_blank">Customizer API in the official theme developer handbook</a>.</p>
<p><a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2015/05/customizer-api-documentation.png" rel="prettyphoto[43238]"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2015/05/customizer-api-documentation.png?resize=1025%2C605" alt="customizer-api-documentation" class="aligncenter size-full wp-image-43252" /></a></p>
<p>This official comprehensive guide includes the following sections and provides detailed examples for each:</p>
<ul>
<li><a href="https://developer.wordpress.org/themes/advanced-topics/customizer-api/#contextual-controls-sections-and-panels" target="_blank">Contextual Controls, Sections, and Panels</a></li>
<li><a href="https://developer.wordpress.org/themes/advanced-topics/customizer-api/#using-postmessage-for-improved-setting-previewing" target="_blank">Using PostMessage For Improved Setting Previewing</a></li>
<li><a href="https://developer.wordpress.org/themes/advanced-topics/customizer-api/#custom-controls-sections-and-panels" target="_blank">Custom Controls, Sections, and Panels</a></li>
<li><a href="https://developer.wordpress.org/themes/advanced-topics/customizer-api/#custom-setting-types" target="_blank">Custom Setting Types</a></li>
<li><a href="https://developer.wordpress.org/themes/advanced-topics/customizer-api/#the-customizer-javascript-api" target="_blank">The Customizer JavaScript API</a></li>
<li><a href="https://developer.wordpress.org/themes/advanced-topics/customizer-api/#javascriptunderscore-js-rendered-custom-controls" target="_blank">JavaScript/Underscore.js-Rendered Custom Controls</a></li>
<li><a href="https://developer.wordpress.org/themes/advanced-topics/customizer-api/#allow-non-administrators-to-access-the-customizer" target="_blank">Allow Non-administrators to Access the Customizer</a></li>
</ul>
<p>Theme Review Team admin Justin Tadlock <a href="https://make.wordpress.org/themes/2015/04/22/details-on-the-new-theme-settings-customizer-guideline/" target="_blank">posted</a> more details clarifying the new WordPress.org guideline and included a list of additional resources for learning more about the customizer.</p>
<p>Over the weekend, Samuel &#8220;Otto&#8221; Wood, who has written several customizer articles over the years, wrote a &#8220;<a href="http://ottopress.com/2015/whats-new-with-the-customizer/" target="_blank">What’s new with the Customizer</a>&#8221; tutorial that explores some of its newer features in depth, including panels, active callbacks, and customizing the customizer.</p>
<p>With <a href="http://wptavern.com/wordpress-4-3-to-focus-on-mobile-experience-admin-ui-better-passwords-and-customizer-improvements" target="_blank">WordPress 4.3 blazing forward on customizer improvements</a>, now is the time for theme developers to familiarize themselves with the available documentation and tutorials in order to be ready to take full advantage of WordPress&#8217; core-supported method of providing live previews to users.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Mon, 04 May 2015 16:46:46 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:22;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:31:"Matt: James Whitcomb Riley Poem";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:21:"http://ma.tt/?p=45016";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:47:"http://ma.tt/2015/05/james-whitcomb-riley-poem/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:748:"<p><a href="http://om.co/2015/05/02/loss/">Via Om</a>, I wanted to share this poem <em>Away</em> by <a href="http://www.poemhunter.com/james-whitcomb-riley/poems/">James Whitcomb Riley</a>:</p>
<blockquote><p>I cannot say, and I will not say<br />
That he is dead. He is just away.<br />
With a cheery smile, and a wave of the hand,<br />
He has wandered into an unknown land<br />
And left us dreaming how very fair<br />
It needs must be, since he lingers there.<br />
And you—oh you, who the wildest yearn<br />
For an old-time step, and the glad return,<br />
Think of him faring on, as dear<br />
In the love of There as the love of Here.<br />
Think of him still as the same. I say,<br />
He is not dead—he is just away.</p></blockquote>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Sun, 03 May 2015 16:34:37 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:4:"Matt";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:23;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:38:"Donncha: Matt’s interview in the SBP";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:24:"http://z9.io/?p=89499491";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:51:"http://z9.io/2015/05/03/matts-interview-in-the-sbp/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:977:"<p><a href="http://i2.wp.com/z9.io/files/2015/05/wpid-20150503_124454.jpg"><img title="20150503_124454.jpg" class="alignnone size-full" alt="image" src="http://i2.wp.com/z9.io/files/2015/05/wpid-20150503_124454.jpg?w=660" /></a></p>
<p>Nice to see an interview with Matt in the Sunday Business Post, but they got one thing wrong that Matt is not chilled out about!</p>

<p><strong>Related Posts</strong><ul><li> <a href="http://z9.io/2007/02/16/photomatts-net-interview/" rel="bookmark" title="Permanent Link: Photomatt's .net interview">Photomatt&#039;s .net interview</a></li><li> <a href="http://z9.io/2003/03/24/an-interview-with-mike-davidson-of-espn-part-1/" rel="bookmark" title="Permanent Link: An Interview With Mike Davidson of ESPN (Part 1)">An Interview With Mike Davidson of ESPN (Part 1)</a></li><li> <a href="http://z9.io/2004/07/02/more-on-bush-interview/" rel="bookmark" title="Permanent Link: More On Bush Interview!">More On Bush Interview!</a></li></ul></p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Sun, 03 May 2015 11:48:40 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:7:"Donncha";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:24;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:23:"Matt: RIP Dan, RIP Dave";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:21:"http://ma.tt/?p=45011";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:38:"http://ma.tt/2015/05/rip-dan-rip-dave/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:1238:"<p>We&#8217;ve lost two incredible souls this week: <a href="http://recode.net/2015/04/25/google-exec-dan-fredinburg-killed-in-nepal-earthquake/">first Dan Fredinburg in Nepal</a> and now <a href="http://recode.net/2015/05/02/beloved-silicon-valley-entrepreneur-david-goldberg-dies-suddenly/">Dave Goldberg has unexpectedly passed</a>. I encourage you to Google articles about their lives, <a href="http://www.businessinsider.com/the-incredible-life-of-david-goldberg-2015-5">like this one about Dave Goldberg</a> or <a href="http://www.outsideonline.com/1972721/remembering-dan-fredinburg">this on Dan</a>, because both were unique and incredible individuals. In an example of <a href="http://meyerweb.com/eric/thoughts/2014/12/24/inadvertent-algorithmic-cruelty/">how software can have unintended effect on emotions</a>, I just realized I had a pending friend request on Facebook from Dan, probably years old. <img src="http://i1.wp.com/s.ma.tt/blog/wp-includes/images/smilies/frownie.png?w=604" alt=":(" class="wp-smiley" /> Going through a lot of emotions, but a good reminder that life can be fleeting and to make time for friends and those who you love, something both of these men were great at. May they both rest in peace.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Sat, 02 May 2015 19:46:34 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:4:"Matt";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:25;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:84:"WPTavern: Belgrade’s First WordCamp Sells Out, Plans to Double Attendees Next Year";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=42992";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:90:"http://wptavern.com/belgrades-first-wordcamp-sells-out-plans-to-double-attendees-next-year";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:5298:"<a href="http://i2.wp.com/wptavern.com/wp-content/uploads/2015/05/wcbelgrade.jpg" rel="prettyphoto[42992]"><img src="http://i2.wp.com/wptavern.com/wp-content/uploads/2015/05/wcbelgrade.jpg?resize=1025%2C505" alt="photo credit: WordCamp Belgrade" class="size-full wp-image-43216" /></a>photo credit: <a href="http://belgrade.wordcamp.org/2015/wordcamp-belgrade-first-batch-of-photos-wcbg/">WordCamp Belgrade</a>
<p>Organizers of the very first WordCamp Belgrade are happy to report that the event was a smashing success. <a href="http://wptavern.com/a-glimpse-into-serbias-rapidly-growing-wordpress-community" target="_blank">Serbia&#8217;s rapidly growing WordPress community</a> started just two years ago with local meetups that became larger than some smaller WordCamps.</p>
<p>&#8220;Our road from the first meetup back in April 2013 to the first WordCamp was brilliant,&#8221; organizer Milan Ivanović said. &#8220;Every WPSerbia meetup had no less than 100 people attending, with at least three speakers each.&#8221; Serbia was ready to host its first WordCamp.</p>
<p>&#8220;We were completely sold out about 10 days before the actual event, and it was such a shame that we had to turn down around 50 people who were asking for extra tickets,&#8221; Ivanović said. &#8220;We were limited by the venue and we couldn&#8217;t take more than 180.&#8221;</p>
<p>Attendees represented 13 different countries with the highest numbers from Serbia (73%), Macedonia, Bosnia and Herzegovina, and Croatia. Those who came from other countries were treated to Serbia&#8217;s famous hospitality with tours and local cuisine.</p>
<p>&#8220;We dedicated some extra time for people who visited Belgrade for the first time to experience Belgrade and all of its beauties,&#8221; Ivanović said.</p>
<p>&#8220;That is why we organized an unofficial after-after party that included a stroll through Belgrade&#8217;s main pedestrian street Knez Mihailova, a visit to Belgrade Fortress Kalemegdan, and dinner with true Serbian food and music in the most famous boem street Skadarlija.&#8221;</p>
<a href="http://i2.wp.com/wptavern.com/wp-content/uploads/2015/05/wordcamp-belgrade-food.jpg" rel="prettyphoto[42992]"><img src="http://i2.wp.com/wptavern.com/wp-content/uploads/2015/05/wordcamp-belgrade-food.jpg?resize=1025%2C494" alt="photo credit: WordCamp Belgrade" class="size-full wp-image-43219" /></a>photo credit: <a href="http://belgrade.wordcamp.org/2015/wordcamp-belgrade-first-batch-of-photos-wcbg/">WordCamp Belgrade</a>
<p>&#8220;The food was so good that I was afraid that this WordCamp wouldn&#8217;t be remembered by its talks and speakers but by the catering that all of us enjoyed,&#8221; he said.</p>
<p>WordCamp Belgrade 2015 in numbers:</p>
<ul>
<li>800+ bottles of refreshment served (on the first day)</li>
<li>500+ coffees served (on the first day)</li>
<li>345 Tweets with <a href="https://twitter.com/hashtag/wcbg?src=hash" target="_blank">#wcbg</a></li>
<li>250 Meals served</li>
<li>180 Tickets sold</li>
<li>61 Trello cards</li>
<li>22 Sponsors</li>
<li>16 Speaker Applications</li>
<li>13 Talks / Workshops</li>
<li>10 Speakers</li>
<li>9 Volunteers</li>
<li>8 Days after, all session videos published</li>
<li>1 Awesome <a href="http://wptavern.com/meet-wapuujlo-official-mascot-of-wordcamp-belgrade" target="_blank">Mascot</a></li>
</ul>
<p>Attendees received &#8220;<a href="http://wptavern.com/meet-wapuujlo-official-mascot-of-wordcamp-belgrade" target="_blank">Wapuujlo</a>&#8221; magnets and stickers to commemorate the event.</p>
<p><a href="http://i1.wp.com/wptavern.com/wp-content/uploads/2015/05/wapuujlo-magnets.jpg" rel="prettyphoto[42992]"><img src="http://i1.wp.com/wptavern.com/wp-content/uploads/2015/05/wapuujlo-magnets.jpg?resize=1025%2C437" alt="wapuujlo-magnets" class="aligncenter size-full wp-image-43226" /></a></p>
<p>Videos from the WordCamp are already available on <a href="https://www.youtube.com/channel/UCNn90HubD28a63SJu07vYZg" target="_blank">WordPress Serbia&#8217;s YouTube account</a> and will soon be uploaded to WordPress.tv as well.</p>
<p>&#8220;As soon as WordCamp Belgrade finished, the first thing I did was start plans for #wcbg2016,&#8221; Ivanović said.</p>
<p><a href="http://i2.wp.com/wptavern.com/wp-content/uploads/2015/05/wcbelgrade-organizers.jpg" rel="prettyphoto[42992]"><img src="http://i2.wp.com/wptavern.com/wp-content/uploads/2015/05/wcbelgrade-organizers.jpg?resize=300%2C200" alt="wcbelgrade-organizers" class="alignright size-medium wp-image-43223" /></a>&#8220;The biggest outcome from this event was people asking how they can help organize the next WordCamp Belgrade, offering lots of different kinds of help &#8211; from finding new sponsors to offering their organization skills.&#8221;</p>
<p>Ivanović and the organizing team plan to at least double the size of the event next year. They are aiming for 400 attendees and two tracks of speakers.</p>
<p>&#8220;If we manage to organize an event that size, I think that would be an awesome test and a great intro for application to organize WordCamp Europe 2017,&#8221; he said.</p>
<p>Check out more <a href="http://belgrade.wordcamp.org/2015/wordcamp-belgrade-first-batch-of-photos-wcbg/" target="_blank">photos from the event</a> on the WordCamp Belgrade website.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Fri, 01 May 2015 21:04:21 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:26;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:18:"Matt: More on GMOs";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:21:"http://ma.tt/?p=45008";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:34:"http://ma.tt/2015/05/more-on-gmos/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:606:"<blockquote><p>After writing two books on the science of climate change, I decided I could no longer continue taking a pro-science position on global warming and an anti-science position on G.M.O.s.</p></blockquote>
<p>Mark Lynas writes <a href="http://www.nytimes.com/2015/04/25/opinion/sunday/how-i-got-converted-to-gmo-food.html">How I Got Converted to G.M.O. Food</a>, particularly how GMOs impact the places where crops are needed the most. If you&#8217;re looking for a catch-up <a href="http://ma.tt/2014/03/whole-foods-and-psuedoscience/">check out this link collection on ma.tt last year</a>.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Fri, 01 May 2015 18:43:26 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:4:"Matt";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:27;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:67:"WPTavern: WordPress.com Suspends Theme Submissions from New Sellers";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:28:"http://wptavern.com/?p=42345";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:77:"http://wptavern.com/wordpress-com-suspends-theme-submissions-from-new-sellers";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:5419:"<p>In March 2014, <a href="http://wptavern.com/wordpress-com-formally-opens-its-marketplace-to-theme-developers" target="_blank">WordPress.com opened its marketplace to new theme authors</a>. Prior to that time, new sellers were added via invitation only. A year ago there were only 300 themes available to WordPress.com users, but after having the marketplace open to new authors that count is up to 345.</p>
<p>Recently the <a href="https://theme.wordpress.com/join/" target="_blank">submission form disappeared from the site</a> with a message that WordPress.com would be keeping it temporarily closed in order to add new features that make the process easier.</p>
<p><a href="http://i0.wp.com/wptavern.com/wp-content/uploads/2015/05/new-themes-wordpresscom.png" rel="prettyphoto[42345]"><img src="http://i0.wp.com/wptavern.com/wp-content/uploads/2015/05/new-themes-wordpresscom.png?resize=1025%2C736" alt="new-themes-wordpresscom" class="aligncenter size-full wp-image-43187" /></a></p>
<p><a href="https://array.is/" target="_blank">Array</a> founder Mike McAlister recently published an <a href="https://array.is/a-year-in-review/" target="_blank">article</a> that detailed his experience selling on the WordPress.com marketplace. One of the main drawbacks was the lack of efficiency in handling the queue for new theme submissions.</p>
<blockquote><p>The review process on WordPress.com is long. I’m not talking about weeks long, I’m talking about months long. Each Array theme review has taken at least a month, usually longer. Our latest theme for WP.com, Camera, took four months from the day I submitted it to the day it was released.</p></blockquote>
<p>In addition to painfully long queues, theme authors have also been disappointed with WordPress.com&#8217;s recent lack of promotion for commercial themes. These factors contributed to McAlister&#8217;s decision to focus on promoting his products through more efficient distribution channels and <a href="http://wptavern.com/array-returns-to-themeforest-after-disappointing-experiences-selling-on-creative-market-and-wordpress-com" target="_blank">return to Themeforest</a>.</p>
<p>In April, WordPress.com theme author Sami Keijonen <a href="https://foxland.fi/toivo-was-not-approved-in-wordpress-com/" target="_blank">posted about his recent difficulties with the marketplace</a> after noticing that WordPress.com removed the submission form for new authors. He summarized some of the sources of confusion for commercial theme authors:</p>
<blockquote>
<ul>
<li>WordPress.com basically stopped marketing commercial themes. (However, they do tweet about new themes.)</li>
<li>We have a private blog for themers but other than that, there isn&#8217;t any conversation between developers or WordPress.com staff. They did send a enquiry a while ago so that might help.</li>
<li>The review process takes months for commercial themes.</li>
<li>They seem to want really simple themes with simple design decisions. That’s fine by me but isn’t that kind of “forcing” the end user to like certain types of themes if they don’t have any options?</li>
<li>I would have wanted more accessibility-ready themes in WordPress.com like mine, but it seems that isn&#8217;t priority.</li>
</ul>
</blockquote>
<p>I contacted Automattic to find out why the submission form has been removed and when authors can expect for it to be re-opened. The company&#8217;s official statement indicates that opening up the marketplace was a temporary experiment and that there is no ETA for relaunching it.</p>
<blockquote><p>It’s important to note that current WordPress.com sellers can submit new themes for possible launch. We’re not closed for new theme submission. We experimented with a public form for themes from new shops last year, and we had a ton of great submissions from theme shops around the world. We took it down last fall while we worked on getting ahead of all the new theme reviews that it created. We’ll put it up again but we don’t have an exact date in mind. We do still reach out to new shops with great themes. We’re always excited to find awesome theme shops.</p></blockquote>
<p>The company&#8217;s statement regarding the change in marketing clarifies that it is looking for new strategies to promote commercial themes.</p>
<blockquote><p>We may not do blog posts any more, but we haven’t stopped marketing premium themes. They’re featured prominently on <a href="https://wordpress.com/themes" target="_blank">wordpress.com/themes</a> and as part of our <a href="https://store.wordpress.com/plans/" target="_blank">Business Plan</a>. Plus, we’re exploring more ways to put premium themes in front of users.</p>
<p>In the future, premium theme shops can expect better feedback around the themes they submit, quicker launches, and more communication in general from the WordPress.com Theme Team. We’re excited about what we can continue to do for the world of themes with our sellers’ help.</p></blockquote>
<p>Automattic has no set time frame for launching these improvements, but it should be reassuring for commercial theme authors to know that the company is tackling the inefficiency that was bogging down the system. For the time being, new commercial theme authors looking to submit products to the marketplace are out of luck, but Automattic may decide to open it up again to continue the experiment in the future.</p>";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:7:"pubDate";a:1:{i:0;a:5:{s:4:"data";s:31:"Fri, 01 May 2015 18:11:16 +0000";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}s:32:"http://purl.org/dc/elements/1.1/";a:1:{s:7:"creator";a:1:{i:0;a:5:{s:4:"data";s:13:"Sarah Gooding";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}}}}i:28;a:6:{s:4:"data";s:13:"
	
	
	
	
	
	
";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";s:5:"child";a:2:{s:0:"";a:5:{s:5:"title";a:1:{i:0;a:5:{s:4:"data";s:33:"Akismet: April 2015 Stats Roundup";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"guid";a:1:{i:0;a:5:{s:4:"data";s:31:"http://blog.akismet.com/?p=1839";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:4:"link";a:1:{i:0;a:5:{s:4:"data";s:60:"http://blog.akismet.com/2015/05/01/april-2015-stats-roundup/";s:7:"attribs";a:0:{}s:8:"xml_base";s:0:"";s:17:"xml_base_explicit";b:0;s:8:"xml_lang";s:0:"";}}s:11:"description";a:1:{i:0;a:5:{s:4:"data";s:2934:"<p>April turned out to be a slow month in Akismetland. The highest number of spam comments we saw come in this month on a given day was about 177 million. The total amount of spam we saw come through this month is 23% less than last month, and 33% less than April of last year.</p>
<p>Here&#8217;s a chart showing the number of spam and ham comments we saw come through each day this month:</p>
<p><img class="alignnone size-large wp-image-1840" src="https://akismet.files.wordpress.com/2015/05/akismet-spam-and-ham-stats-april-2015.png?w=700&h=438" alt="graph of akismet spam and ham daily stats April 2015" /></p>
<div id="attachment_1841" class="wp-caption alignright"><img class="size-medium wp-image-1841" src="https://akismet.files.wordpress.com/2015/05/time_machine.jpg?w=300&h=252" alt="This image, .Time Machine. by Sachin Sandhu, is licensed under CC BY 2.0" width="300" height="252" /><p class="wp-caption-text">This image, <a href="https://www.flickr.com/photos/sachin_sandhu/2711789618">.Time Machine.</a> by <a href="https://www.flickr.com/photos/sachin_sandhu/">Sachin Sandhu</a>, is licensed under <a href="https://creativecommons.org/licenses/by/2.0/">CC BY 2.0</a></p></div>
<p>The total number of spam comments this month is <strong>4,167,247,500</strong> &#8211; just over four billion, which is still a big number even though it&#8217;s a slow month 