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:70:"WPTavern: NextGEN Gallery Patches Critical SQL Injection Vulnerability";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:29:"https://wptavern.com/?p=66611";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:"https://wptavern.com/nextgen-gallery-patches-critical-sql-injection-vulnerability";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:2804:"<p><a href="https://blog.sucuri.net/author/slavco/">Slavco Mihajloski</a>, security researcher at <a href="https://sucuri.net/">Sucuri</a>, <a href="https://blog.sucuri.net/2017/02/sql-injection-vulnerability-nextgen-gallery-wordpress.html">has discovered</a> a critical SQL injection vulnerability in <a href="https://wordpress.org/plugins/nextgen-gallery/">NextGEN Gallery</a>, a popular WordPress plugin that&#8217;s active on more than a million sites.</p>
<p>Mihajloski gives the vulnerability a 9 out of 10 on Sucuri&#8217;s DREAD scale. Dread stands for Damage, Reproducibility, Exploitability, Affected Users, and Discoverability.</p>
<p>Each category receives a score between 0 and 10. The <a href="https://blog.sucuri.net/2015/03/understanding-wordpress-plugin-vulnerabilities.html">DREAD score</a> is obtained by adding the totals from each category and then dividing by five. The higher the score, the more severe the vulnerability.</p>
<p>The SQL injection vulnerability affects NextGEN Gallery versions 2.1.77 and below. Version 2.1.79 is patched and was released four days ago. Those who use NextGEN basic tagcloud gallery or allow visitors to submit posts to be reviewed by contributors are especially at risk.</p>
<p>&#8220;This vulnerability allows an unauthenticated user to grab data from the victim’s website database, including sensitive user information,&#8221; Mihajloski said.</p>
<p>&#8220;This issue existed because NextGEN Gallery allowed improperly sanitized user input in a WordPress prepared SQL query, which is basically the same as adding user input inside a raw SQL query. Using this attack vector, an attacker could leak hashed passwords and WordPress secret keys, in certain configurations.&#8221;</p>
<p>Although 2.1.79 patches the vulnerability, the <a href="https://wordpress.org/plugins/nextgen-gallery/changelog/">plugin&#8217;s changelog</a> doesn&#8217;t indicate a critical security issue was fixed. Eric Danzer, Founder and CEO of Imagely, makers of NextGEN Gallery, <a href="https://twitter.com/ErickDanzer/status/836315264002232321">explained on Twitter</a> why it&#8217;s not mentioned in the changelog.</p>
<blockquote class="twitter-tweet">
<p lang="en" dir="ltr"><a href="https://twitter.com/perezbox">@perezbox</a> <a href="https://twitter.com/jeffr0">@jeffr0</a> We just wanted updates underway before drawing attention. We'll update changelog for accuracy in a subsequent release.</p>
<p>&mdash; Erick Danzer (@ErickDanzer) <a href="https://twitter.com/ErickDanzer/status/836315264002232321">February 27, 2017</a></p></blockquote>
<p></p>
<p>Users are strongly encouraged to update <a href="https://wordpress.org/plugins/nextgen-gallery/">NextGEN Gallery</a> to version 2.1.79 as soon as possible.</p>
<div id="epoch-width-sniffer"></div>";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, 27 Feb 2017 23:05:31 +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: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:121:"WPTavern: Linus Torvalds Shares Lessons from 25 Years of Open Source Project Maintainership, Decries Tech Innovation Hype";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:29:"https://wptavern.com/?p=66408";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:131:"https://wptavern.com/linus-torvalds-shares-lessons-from-25-years-of-open-source-project-maintainership-decries-tech-innovation-hype";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:6230:"<p><a href="https://i0.wp.com/wptavern.com/wp-content/uploads/2017/02/linus-torvalds-open-source-summit.png?ssl=1"><img /></a></p>
<p>Linux creator Linus Torvalds joined Jim Zemlin, executive director of the Linux Foundation, on stage at the <a href="http://events.linuxfoundation.org/events/open-source-leadership-summit" target="_blank">Open Source Leadership Summit</a> for a candid conversation on maintaining open source projects. After 25 years of maintaining the Linux kernal, Torvalds has developed a network of trust that enables the project to iterate quickly with its 2.5 month release cycle.</p>
<p>The current pace of Linux development sees 10K lines of code added, 8K lines subtracted, and 1800 lines modified every single day. Torvalds described how Linux contributors learned to modularize the code and development model so they can accomplish more in parallel, while working independently. He used to read through all the patches but quickly found himself becoming a bottleneck to progress. Ensuring code quality on the project is no longer about micromanaging all the patches but about finding the people Torvalds can trust.</p>
<p>&#8220;We have a very strong network and that&#8217;s why we can have 1,000 people involved in every release,&#8221; Torvalds said. &#8220;There&#8217;s this whole human potential there that we use very extensively to make sure the process works. And it&#8217;s taken 25 years to get to where we are on a process level, too.&#8221;</p>
<p>Torvalds described how the project revolves around individual contributors building a trusted reputation with maintainers and how one moves from casual contributor status to become part of the network of trust.</p>
<p>&#8220;When people move between companies, the trust does not stay with the company,&#8221; Torvalds said. &#8220;The trust stays with the person. Obviously people do not stay around forever. People come and go. One of the reasons people sometimes think it&#8217;s hard to get into the kernel, is because you think you can just come in and shoot off a patch and go away, but that&#8217;s not how it works. What really takes time is to shoot off a lot of small patches until you reach the point where the maintainers trust you and at that point you have become something more than the guy who sends patches. You&#8217;ve become part of the whole network of trust.&#8221;</p>
<p>Increasing levels of trust among contributors allows maintainers to oversee a rapid pace of development. Ten years ago, when Torvalds wanted to move an 8-week release schedule, he said everyone knew he was pushing for something unrealistically short. They have been cranking out releases every 2.5 months since then and Torvalds said it &#8220;solved so many things we didn&#8217;t even know needed to be solved.&#8221; Linux maintainers found their way to a successful development model by experimenting until it clicked.</p>
<p>&#8220;If you want to do something new, something that is really pushing the envelope, nobody can really say &#8216;This is the way to do it,'&#8221; Torvalds said. &#8220;What you need to do is a lot of trial and error. I often compare software development to biological processes where really it is evolution. It is not intelligent design. I&#8217;m there in the middle of the thing and I can tell you, it is absolutely not intelligent design. You have a lot of people with ideas of where things need to go and then you need to have a marketplace where you can try them out. And that&#8217;s what open source allows &#8211; all these different groups to go off, do their own thing, and then come back and say I did this, and it actually worked.&#8221;</p>
<p>Zemlin asked him if he ever experienced an &#8220;a-ha moment&#8221; where he realized that Linux was much bigger than what he thought he started. Torvalds said that although a couple of moments have taken him by surprise, the biggest moment was six months after releasing it when it went past being a personal project. He suddenly didn&#8217;t even know the people sending him patches. Twenty five years later, it&#8217;s the people doing the work who still inspire him.</p>
<p>&#8220;I&#8217;m a huge believer in the 99% perspiration, 1% inspiration thing,&#8221; Torvalds said. &#8220;The innovation that this industry talks about so much is bullshit. Anybody can innovate. Don&#8217;t do this big, &#8216;Think different&#8217; innovation thing. Screw that; it&#8217;s meaningless. 99% of it is &#8216;Get the work done.&#8217; That&#8217;s my least favorite part of the technology news cycle: the constant innovation and new ideas, &#8216;<em>This will revolutionize</em>,&#8217; all that hype &#8211; that&#8217;s not where the real work is. The real work is in the details.&#8221;</p>
<p>Not all open source projects could be successful with the same model and leadership that Torvalds has brought to Linux development, but the kernel is arguably one of the most active and successful GPL-licensed projects. Zemlin noted that nearly 900 organizations participate in all the different Linux Foundation programs, creating code in almost every aspect of computing from mobile phones to cars to home appliances. It wouldn&#8217;t be possible without Torvalds&#8217; laser focus on continuing the work he started.</p>
<p>&#8220;I&#8217;m obviously one of those people who likes to concentrate on one project,&#8221; Torvalds said. &#8220;I don&#8217;t like flitting from one idea to another. You need the people who just flutter about and come up with ideas, but they&#8217;re not the really useful ones. They end up being the ones who maybe give the ideas to the ones doing the work. What anybody should take away from this talk &#8211; the people who actually do the work are the ones you should really listen to. These days I don&#8217;t actually do the work anymore &#8211; I merge other people&#8217;s work. But I would like conferences, too, to be less about the visionary innovation thing and more about the day-to-day what are my problems and how do I want to solve them.&#8221;</p>
<p>Check out the video below to watch the full session with Linus Torvalds and Jim Zemlin:</p>
<div class="embed-wrap"></div>
<div id="epoch-width-sniffer"></div>";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, 27 Feb 2017 20:15: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:"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: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:84:"WPTavern: Learn How to Find and Exploit XSS Vulnerabilities with Google’s XSS Game";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:29:"https://wptavern.com/?p=66571";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:92:"https://wptavern.com/learn-how-to-find-and-exploit-xss-vulnerabilities-with-googles-xss-game";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:3105:"<p>In 2016, Acunetix, a UK-based security firm, found that <a href="http://www.acunetix.com/blog/articles/33-websites-webapps-vulnerable-xss/" target="_blank">33% of websites and web apps are vulnerable to XSS</a>. This number is down 5% from the company&#8217;s findings for the previous year, but it&#8217;s still one of the most common vulnerabilities. In fact, every WordPress security release for the past year has included patches for <a href="https://en.wikipedia.org/wiki/Cross-site_scripting" target="_blank">cross-site scripting</a> (XSS) vulnerabilities, including 4.5.2, 4.5.3, 4.6.1, 4.7.1, 4.7.2, and many other previous releases.</p>
<p>Google has created a fun and educational <a href="https://xss-game.appspot.com/" target="_blank">XSS game</a> that teaches new bug hunters how to find and exploit XSS vulnerabilities. Each challenge teaches students how to inject a script to pop up an alert() within the training application. The first few levels are fairly easy and it gets progressively more difficult.</p>
<p><a href="https://i2.wp.com/wptavern.com/wp-content/uploads/2017/02/xss-game-level-1.png?ssl=1"><img /></a></p>
<p>It was designed for developers who work on web apps but do not specialize in security. Google&#8217;s goal with the game is to help developers get better at recognizing the vulnerabilities in their own code:</p>
<blockquote><p>This security game consists of several levels resembling real-world applications which are vulnerable to XSS &#8211; your task will be to find the problem and attack the apps, similar to what an evil hacker might do. </p>
<p>XSS bugs are common because they have a nasty habit of popping up wherever a webapp deals with untrusted input. Our motivation is to highlight common coding patterns which lead to XSS to help you spot them in your code.</p></blockquote>
<p>The intro to the game tempts new recruits to hone their skills with promises to pay mercenaries up to <a href="https://www.google.com/about/appsecurity/reward-program/index.html#rewards" target="_blank">$7,500 for discovering XSS bugs</a> in the Google&#8217;s most sensitive products. It gives a nice introduction to common attack vectors for XSS vulnerabilities and congratulates winners with a cake and a <a href="http://Google's application security resource" target="_blank">link to more in-depth XSS documentation</a> from Google&#8217;s collection of application security resources.</p>
<p><a href="https://i0.wp.com/wptavern.com/wp-content/uploads/2017/02/xss-game-cake-complete.png?ssl=1"><img /></a></p>
<p>The <a href="https://xss-game.appspot.com/" target="_blank">XSS game</a> has been around for a few years and provides a fun way to start your XSS learning if you have a few minutes over the weekend. With the constant stream of security updates for WordPress core, plugins, and themes, it&#8217;s good to get a basic understanding of what many of these patches are for. After a little bit of study and practice, you may be able to find XSS vulnerabilities in applications and help make the internet more secure.</p>
<div id="epoch-width-sniffer"></div>";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, 25 Feb 2017 19:31: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: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:63:"Post Status: Running a successful regional agency, with Ben May";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=34480";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:66:"https://poststatus.com/running-successful-regional-agency-ben-may/";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:1736:"<p>Welcome to the Post Status <a href="https://poststatus.com/category/draft">Draft podcast</a>, which you can find <a href="https://itunes.apple.com/us/podcast/post-status-draft-wordpress/id976403008">on iTunes</a>, <a href="https://play.google.com/music/m/Ih5egfxskgcec4qadr3f4zfpzzm?t=Post_Status__Draft_WordPress_Podcast">Google Play</a>, <a href="http://www.stitcher.com/podcast/krogsgard/post-status-draft-wordpress-podcast">Stitcher</a>, and <a href="http://simplecast.fm/podcasts/1061/rss">via RSS</a> for your favorite podcatcher.</p>
<p><span>In this episode, Brian interviews Ben May to talk about running <a href="https://thecode.co/">The Code Company</a>, a semi-remote agency based in Queensland, Australia. The Code Company works primarily with long term clients and repeat work, and they’ve grown from just Ben to a team of 11 almost entirely by referrals for new customers.</span></p>
<p><!--[if lt IE 9]><script>document.createElement('audio');</script><![endif]-->
<a href="https://audio.simplecast.com/61169.mp3">https://audio.simplecast.com/61169.mp3</a><br />
<a href="https://audio.simplecast.com/61169.mp3">Direct Download</a></p>
<h3>Links</h3>
<ul>
<li><a href="https://thecode.co/">The Code Company</a></li>
</ul>
<h3>Sponsor: WooCommerce</h3>
<p><span>This episode of the Draft podcast is sponsored by <a href="https://woocommerce.com/">WooCommerce</a>. WooCommerce makes the most widely used eCommerce platform on the web, and has the power and flexibility you need to power your store. For more information on how to run your store with WordPress and WooCommerce, check out <a href="https://woocommerce.com/">their website</a> and thank you to WooCommerce for being a Post Status partner. </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:"Sat, 25 Feb 2017 18:41:29 +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:14:"Katie Richards";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:71:"WPTavern: FOSSA Raises $2.2M to Automate Open Source License Compliance";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:29:"https://wptavern.com/?p=66487";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:"https://wptavern.com/fossa-raises-2-2m-to-automate-open-source-license-compliance";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:4631:"<p>Kevin Wang and his team at <a href="http://fossa.io/" target="_blank">FOSSA</a> have carved out a niche for themselves in the open source product space with the launch of their license compliance and dependency analysis tool. The company <a href="https://medium.com/fossa/announcing-fossa-public-beta-funding-8cf56cf8ebc6#.3titvmvwe" target="_blank">announced a $2.2 million seed round</a> this week after completing a year-long private beta period with Fortune 500 companies. FOSSA continuously scans dependencies and offers reports at each commit to help companies meet the legal obligations of compliance as they are incorporating open source libraries.</p>
<p>The <a href="http://fossa.io/pricing/" target="_blank">public beta</a> is now free and open to anyone, offering support for up to 5 public/private repos and scanning three levels deep with open source reports. A $499/repo per month commercial option is also available with unlimited scan depth and customizable open source reports.</p>
<p>&#8220;It’s mind-boggling that in 2017, software companies don’t really know what’s in their code,&#8221; Wang said. &#8220;90% of it now comes from third parties like open source (OSS) codebases. Although it sounds trivial, it’s actually really difficult to keep track of what your developers use. Most of this code isn’t explicitly included — instead it’s brought in automatically by complex tool behavior or one of the million ways developers <a href="https://medium.com/fossa/you-cant-get-around-code-scanning-if-you-care-about-open-source-licenses-2db1fde43fb5#.pb9mtykaf" target="_blank">casually share code</a>.&#8221;</p>
<p>FOSSA can detect license and policy violations and unlicensed dependencies before an expensive mistake is fully integrated into a project. The real-time feedback forces developers to consider how they are using the libraries they are building into their software.</p>
<p><a href="https://i1.wp.com/wptavern.com/wp-content/uploads/2017/02/fossa-example.jpeg?ssl=1"><img /></a></p>
<p>Competitors like <a href="https://www.whitesourcesoftware.com/" target="_blank">WhiteSource</a> and <a href="https://www.blackducksoftware.com" target="_blank">Black Duck Software</a>, which offer open source risk management tools, detect and display licenses for components and dependencies for applications but seem more focused on bugs and vulnerability reporting. FOSSA is solely focused on OSS license compliance and automating disclosure and attribution.</p>
<p>Compliance is becoming increasingly difficult as developers can easily execute a few commands and import dozens of npm modules that inherit licensing obligations from a myriad of different sources. Even governments and large companies with plenty of resources struggle to keep track of all the open source requirements of the software they are using.</p>
<p>In 2013, <a href="https://www.techdirt.com/articles/20131018/13291924928/healthcaregov-violates-open-source-license.shtml" target="_blank">Healthcare.gov violated an open source license</a> when it used the DataTables jQuery plugin without the required attribution. Last year, <a href="http://venturebeat.com/2016/05/10/oracle-vs-google-in-9-billion-retrial-over-use-of-java-in-android/" target="_blank">Google was embroiled in a court battle with Oracle</a> over the use of Java in Android.</p>
<p>A tool like FOSSA could have helped Wix catch its <a href="https://wptavern.com/wix-removes-gpl-licensed-wordpress-code-from-mobile-app-forks-original-mit-library" target="_blank">violation of the GPL in 2016</a> when the company used GPL-licensed code from the WordPress mobile app and distributed it in its proprietary app. FOSSA aims to catch licensing issues before they become expensive problems for developers to rework and lawyers to settle.</p>
<p>A few years before beginning work on FOSSA, Wang built <a href="https://tldrlegal.com/" target="_blank">tl;drLegal</a>, a site that explains software licenses in plain English. The free resource received backing from the Open Source Initiative and has been used by more than a million developers. Wang said he &#8220;sees FOSSA as an attempt to tackle similar problems in a commercial scenario.&#8221;</p>
<p>FOSSA will be expanding its pricing options later this year. At the moment, the free beta and the $499/month commercial options leave a gaping hole that excludes smaller organizations. Wang replied to pricing questions on ProductHunt, saying that they are targeting enterprise customers first but plan to introduce more options for small teams and individuals.</p>
<div id="epoch-width-sniffer"></div>";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, 25 Feb 2017 00:21: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: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:92:"WPTavern: Discourse Creates Encouragement Fund to Pay Contributors for Mission Critical Work";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:29:"https://wptavern.com/?p=66145";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:103:"https://wptavern.com/discourse-creates-encouragement-fund-to-pay-contributors-for-mission-critical-work";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:2486:"<p><a href="https://www.discourse.org">Discourse</a> is free, open-source discussion software created by Jeff Atwood in 2013.&nbsp;In addition to celebrating its fourth birthday, the team <a href="https://blog.discourse.org/2017/02/the-discourse-encouragement-fund/">announced</a> the Discourse Encouragement Fund. The fund allows the development team to pay contributors for critical work.</p>
<p>In the course of a year, Discourse has paid 16 different developers a total of $17,000 to work on tasks. All of their work is open source and two of the contributors&nbsp;<a href="https://blog.discourse.org/2017/02/discourses-fourth-birthday/">joined the team</a> as full-time employees.</p>
<p>Discourse&nbsp;shared its 7-step process for rewarding contributors and the one that&nbsp;sticks out to me is number four: &#8220;We choose who, what and when.&#8221;</p>
<p>&#8220;At first we tried to put tasks &#8216;up for grabs&#8217;, but this method didn’t work too well,&#8221; Erlend Sogge Heggen, Community Advocate at Discourse said. &#8220;You end up with multiple takers and you have to pick one and let others down.&#8221;</p>
<p>&#8220;Instead, we approach developers individually, one at a time. Since we’re an open source project we know fairly well who’s capable of what, so we’ll tap our top prospect, present the task and &#8216;bounty&#8217;, and get a yes or no.</p>
<p>&#8220;If no, we move on to the next good prospect. If we run out of good prospects for a specific task, we’ll either do it ourselves or put it on hold.&#8221;</p>
<p>Heggen says the program has worked well thus far and will continue indefinitely. &#8220;As much as we’d like to, we can’t put every one of our contributors on a steady payroll,&#8221; he said.</p>
<p>&#8220;What we can do is remind them that the work they’re doing is valuable, in every sense of the word, and that there is money to be made from specializing in Discourse.&#8221;</p>
<p>The program is funded by customers who purchase <a href="https://discourse.org/buy">hosting plans</a>, &#8220;The general idea is that paying customers help improve Discourse, both for themselves, and for the greater open source community at large,&#8221; Atwood said.</p>
<p>Introducing money into an open source project can be <a href="http://david.heinemeierhansson.com/2013/the-perils-of-mixing-open-source-and-money.html">risky </a>but so far, Discourse has found a way to make it work.</p>
<div id="epoch-width-sniffer"></div>";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, 24 Feb 2017 19:20:08 +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: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:53:"WPTavern: Cloudflare Memory Leak Exposes Private Data";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:29:"https://wptavern.com/?p=66488";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:64:"https://wptavern.com/cloudflare-memory-leak-exposes-private-data";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:5730:"<p><a href="https://www.cloudflare.com/">Cloudflare</a>, a content distribution network used by many popular sites, <a href="https://blog.cloudflare.com/incident-report-on-memory-leak-caused-by-cloudflare-parser-bug/">published detailed information</a> about a security vulnerability that leaked user information, some of which was private, including passwords, private messages, etc. The vulnerability was <a href="https://bugs.chromium.org/p/project-zero/issues/detail?id=1139#c19">discovered</a> by security researcher <a href="https://twitter.com/taviso">Tavis Ormandy,</a> a member of Google&#8217;s <a href="https://googleprojectzero.blogspot.co.uk/">Project Zero</a> team.</p>
<p>The issue stems from a memory leak in an HTML parser named cf-html that was created to replace an older parser based on <a href="https://en.wikipedia.org/wiki/Ragel">Ragel.</a></p>
<p>&#8220;It turned out that the underlying bug that caused the memory leak had been present in our Ragel-based parser for many years but no memory was leaked because of the way the internal NGINX buffers were used,&#8221; John Graham-Cumming, <span class="st">Chief Technology Officer at Cloudflare</span> said. &#8220;Introducing cf-html subtly changed the buffering which enabled the leakage even though there were no problems in cf-html itself.&#8221;</p>
<p>The earliest date information was leaked was September 22nd, 2016 when <a href="https://support.cloudflare.com/hc/en-us/articles/227227647-How-do-I-use-Automatic-HTTPS-Rewrites-">Automatic HTTP Rewrites</a> were enabled. This was the first of three features introduced that used the parser. The other two are <a href="https://support.cloudflare.com/hc/en-us/articles/200170016-What-is-Email-Address-Obfuscation-">email obfuscation</a> and <a href="https://support.cloudflare.com/hc/en-us/articles/200170036-What-does-Server-Side-Excludes-SSE-do-">Server-side Excludes</a>.</p>
<p>The greatest period of impact was between February 13th and February 17th. The leaked information ended up in publicly available cached webpages. Cloudflare worked with major search engine providers to have the cached pages scrubbed before publicly announcing details of the bug.</p>
<p>&#8220;With the help of Google, Yahoo, Bing and others, we found 770 unique URIs that had been cached and which contained leaked memory,&#8221; Graham-Cumming said. &#8220;Those 770 unique URIs covered 161 unique domains. The leaked memory has been purged with the help of the search engines. We also undertook other search expeditions looking for potentially leaked information on sites like Pastebin and did not find anything.&#8221;</p>
<h2>1Password is Not Affected</h2>
<p>Earlier reports indicated that 1Password was among the sites affected. Jeffrey Goldberg, a 1Password employee, <a href="https://blog.agilebits.com/2017/02/23/three-layers-of-encryption-keeps-you-safe-when-ssltls-fails/">assured users</a> that the Cloudflare data leak does not affect 1Password.</p>
<p>&#8220;At the moment, we want to assure and remind everyone that we designed 1Password with the expectation that SSL/TLS can fail,&#8221; Goldberg said. &#8220;Indeed it is for incidents like this that we deliberately made this design.&#8221;</p>
<p>&#8220;No secrets are transmitted between 1Password clients and 1Password.com when you sign in and use the service. Our sign-in uses <a href="https://en.wikipedia.org/wiki/Secure_Remote_Password_protocol">SRP</a>, which means that server and client prove their identity to each other without transmitting any secrets. This means that users of 1Password do not need to change their Master Passwords.&#8221;</p>
<h2>Change Your Passwords</h2>
<p><a href="https://twitter.com/thesquashsh">Nick Sweeting</a> has used a number of web scrapers to compile a list of sites that use Cloudflare. The list is available on <a href="https://github.com/pirate/sites-using-cloudflare">GitHub</a> and currently contains 4,287,625 domains that are possibly affected. Popular domains in the list include:</p>
<ul>
<li>authy.com</li>
<li>coinbase.com</li>
<li>digitalocean.com</li>
<li>patreon.com</li>
<li>bitpay.com</li>
<li>news.ycombinator.com</li>
<li>producthunt.com</li>
<li>medium.com</li>
<li>4chan.org</li>
<li>yelp.com</li>
<li>okcupid.com</li>
</ul>
<p>The bug also affects mobile apps as HTTP header data for apps such as Discord, FitBit, and Uber have been discovered in search engine caches. NowSecure <a href="https://www.nowsecure.com/blog/2017/02/23/cloudflare-cloudbleed-bugs-impact-mobile-apps/">published a list</a> that includes 200 iOS apps that use Cloudflare services.</p>
<p>Users are strongly encouraged to change their passwords regardless if a site uses Cloudflare or not. Those who use Cloudflare should generate new API keys and consider forcing a password change to users.</p>
<p>Two factor authentication should be enabled where possible so that the password is not the only credential needed to access an account. Mobile users should log out of mobile applications and log back in to create a new active token. To force all users on a WordPress site to logout and re-login, <a href="https://wpstudio.com/cloudflare-security-precaution-alert/">WPStudio recommends</a> changing the salt keys in wp-config.php.</p>
<p>Although major search engines are actively scrubbing cached pages, the leaks have been occurring for at least four months. There&#8217;s no telling who may have already scraped those pages and archived the data. There&#8217;s also the possibility that someone discovered the vulnerability before Ormandy and has been parsing cached pages for months. This is why it&#8217;s important that at a minimum, you change your passwords.</p>
<div id="epoch-width-sniffer"></div>";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, 24 Feb 2017 19:03:25 +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:86:"WPTavern: Google’s New Perspective Project Filters Online Comments Based on Toxicity";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:29:"https://wptavern.com/?p=66464";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:"https://wptavern.com/googles-new-perspective-project-filters-online-comments-based-on-toxicity";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:5970:"<a href="https://i0.wp.com/wptavern.com/wp-content/uploads/2017/02/mobile-reading.jpg?ssl=1"><img /></a>photo credit: <a href="https://stocksnap.io/photo/RY5J4XBYJV">Martino Pietropoli</a>
<p>Online harassment is a hot topic right now, as Twitter&#8217;s perennial battle with trolls heats up, forcing the company to develop new features to combat abuse. Technology companies are scrambling to create solutions that will make their communities safer for users and now Google is taking on the challenge of online harassment as part of its <a href="https://jigsaw.google.com" target="_blank">Jigsaw</a> technology incubator. Jigsaw&#8217;s engineers and researchers tackle geopolitical problems like attacks on free speech, injustice, corruption, and violent extremism.</p>
<p><a href="https://www.perspectiveapi.com/" target="_blank">Perspective</a> is Jigsaw&#8217;s latest project aimed at improving the comment sections of websites, which can become hotbeds of harassment when left unmoderated. It turns out that eliminating the darker aspects of human behavior, especially when combatting those operating under the cloak of online anonymity, has proven to be an exquisite challenge best suited to the bots.</p>
<p>The Perspective project uses machine learning to identify and filter comments for toxicity. Its API scores comments based on &#8220;the perceived impact a comment might have on a conversation.&#8221; Publishers can then use that information to offer real-time feedback to commenters and speed up moderation. The <a href="https://www.perspectiveapi.com/" target="_blank">live demo</a> allows readers to filter the comments based on a sliding scale of toxicity that they are willing to engage.</p>
<p><a href="https://i0.wp.com/wptavern.com/wp-content/uploads/2017/02/google-jigsaw-perspective-project.png?ssl=1"><img /></a></p>
<p>The Perspective site also includes a Writing Demo that delivers real-time feedback for the toxicity level as you type. The model defines toxic as &#8220;a rude, disrespectful, or unreasonable comment that is likely to make you leave a discussion.&#8221;</p>
<h3>Developers Can Request Access to the Perspective API and Major Publications are Already Experimenting with It</h3>
<p>Toxic commenting and trolls are especially rampant on news sites, requiring moderators to be constantly vigilant and ready to neutralize threats to civil discourse. This is why the New York Times employs 14 full-time moderators to manually review the 11,000 comments that come in each day. Despite the efforts of this dedicated team, commenting is only available on 10% of Times articles due to the moderation load.</p>
<p>As a partner on this project, the New York Times <a href="http://www.nytco.com/the-times-is-partnering-with-jigsaw-to-expand-comment-capabilities/" target="_blank">open sourced 10 years of moderated comment archives</a> to help the Jigsaw team build the machine learning models that will improve conversations on the web. The publication is currently creating an open source moderation tool to expand community discussion to other areas of the Times.</p>
<p>The Wikimedia Foundation is also <a href="https://meta.wikimedia.org/wiki/Research:Detox" target="_blank">collaborating with Jigsaw</a> to develop tools for automating detection of toxic comments and analyzing their impact in discussions at scale. These tools are aimed at mitigating the personal attacks levied at volunteer editors in an effort to improve overall community health.</p>
<p>The Perspective project is still in its early days of research and development, but developers can <a href="https://groups.google.com/forum/#!forum/perspective-announce/join" target="_blank">sign up</a> to request an API key. Google will be open sourcing the experiments, models, and research data gained from testing machine learning as a tool for improving online discussion.</p>
<p>As WordPress powers more than 27% of all websites, a plugin built with the Perspective API could have a major impact on raising the standard of discourse for a large segment of comment-enabled sites. Many publications that might otherwise value thoughtful discussion, have resorted to turning comments off entirely because of the burden of moderation.</p>
<p>Those who rattle off the tired internet maxim that says &#8220;<em>Never read the comments</em>&#8221; speak to the pervasive toxicity that has invaded online discourse, but they also betray their own fragility in engaging commenters who sabotage discussions with incivility. Readers don&#8217;t always have the emotional energy to deal with rude comments that slipped through moderation. While some may find Reddit-style wild west commenting to be spirited and amusing, there are plenty of others who find it demoralizing.</p>
<p>One thing I appreciate about the Perspective project&#8217;s demo is that its aim isn&#8217;t to edit or change the comments to be less toxic but rather it offers the reader a way to filter based on the individual&#8217;s comfort level. With clear warnings in place and a default view set on the safer side, the publication is no longer obligated to overly-censor comments for the lowest threshold of offense.</p>
<p>The Perspective project is experimenting with using machine learning to wrangle the human factor of interacting online. It&#8217;s come to the point that moderating comments and weeding out toxicity has become overwhelming for those trying to run a publication. The most encouraging aspect of this experiment is that Google put engineers, designers, and researchers on this problem because <a href="https://wptavern.com/why-comments-still-matter" target="_blank">comments still matter</a>. This new technology affirms the importance of public discourse on the web and aims to preserve comments as a safe place for conversations. I&#8217;m interested to see what WordPress developers can build with the Perspective API once it is available.</p>
<div id="epoch-width-sniffer"></div>";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, 24 Feb 2017 04:17: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: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:69:"WPTavern: WordPress Community Summit 2017 Set for June 13-14 in Paris";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:29:"https://wptavern.com/?p=66439";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:"https://wptavern.com/wordpress-community-summit-2017-set-for-june-13-14-in-paris";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:3561:"<p>WordPress contributor teams are getting ready for the next <a href="https://make.wordpress.org/core/2017/02/23/planning-for-community-summit-2017/" target="_blank">Community Summit</a>, which will be held in Paris leading up to WordCamp Europe on June 13-14. This is the first time the event will be held outside the United States, making it more accessible to European community members who may have been unable to attend previous summits.</p>
<p>The summit provides an opportunity for those who contribute to WordPress and its surrounding community to tackle difficult topics that require in-person discussion or collaboration. This year the organizing team is <a href="https://wptavern.com/wordpress-community-team-proposes-new-selection-process-for-2017-summit-attendees" target="_blank">trying a new selection process for attendees</a>. Instead of the previous invitation-only system, contributor teams are identifying the challenging issues they want to discuss and then nominating attendees who will represent diverse viewpoints on these particular topics.</p>
<p>For example, a few <a href="https://make.wordpress.org/core/2017/02/23/planning-for-community-summit-2017/" target="_blank">proposed topics for the core team</a> include discussions about the future of JavaScript in core, how to attract more JavaScript-first developers to build on WordPress, and technology version support policies (PHP, MySQL, browsers, etc.) Theme Review Team contributors have <a href="https://make.wordpress.org/themes/2017/02/18/community-submit-2017/" target="_blank">proposed</a> discussion on how to allow for more experimentation and ways to improve the leadership of the team and the theme author and reviewer experiences.</p>
<p>Each of the 16 contributor teams tagged in the announcement has until March 3rd to create a list of topics and representatives, including contributors who are willing to help organize the event. An <a href="https://wceurope.polldaddy.com/s/community-summit-2017-call-for-non-active-contributors" target="_blank">application form</a> is open for those who represent other interests within the WordPress community but are not part of one of the contributor teams. The summit will be limited to 180 attendees (the capacity for the venue).</p>
<p>The call for sponsors will be published next week, but promotional activities will not be incorporated into the event. The organizing team is also working on finding sponsors to cover travel expenses for contributors who have financial barriers to attending.</p>
<p>&#8220;The idea of this event sponsorship is about supporting the project and the community,&#8221; summit organizer Rocio Valdivia said. &#8220;So, there aren’t levels of exposure associated with each price level other than the label that will show up in the make/summit p2 page for it and on the sidebar. We’ll add links to their sites, logos, and a huge thanks at event to all sponsors, regardless how much they’ve sponsored. The sponsorship levels are about the desire and financial ability of the companies to contribute to the summit, not about a marketing thing.&#8221;</p>
<p>The summit is closed to the public and the press, but there is a decent level of transparency around the topics attendees plan to discuss if you peruse the make.wordpress.org blogs. If contributor teams publish notes from the discussions as they have in previous years, the wider community will be able to follow along to see if the summit precipitates meaningful progress for the project.</p>
<div id="epoch-width-sniffer"></div>";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, 23 Feb 2017 22:05: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: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:51:"Akismet: Akismet WordPress Plugin 3.3 Now Available";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=1923";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://blog.akismet.com/2017/02/23/akismet-wordpress-plugin-3-3/";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:1366:"<p>Version 3.3 of <a href="http://wordpress.org/plugins/akismet/">the Akismet plugin for WordPress</a> is available.</p>
<p><a href="https://akismet.files.wordpress.com/2017/02/akismet-3-3-dashboard.png"><img /></a> In addition to a handful of bug fixes, version 3.3 refreshes the Akismet settings page design and adds an improved first-run experience. Now, when you activate Akismet for the first time, it will offer to check your current Pending queue for spam, and for especially large pending queues, it will show a progress indicator.</p>
<p>For full details on all of the changes since version 3.2, see <a href="https://plugins.trac.wordpress.org/log/akismet/trunk?rev=1602266&stop_rev=1501241&verbose=on">the changelog</a>.</p>
<p>To upgrade, visit the Updates page of your WordPress dashboard and follow the instructions. If you need to download the plugin zip file directly, links to all versions are available in <a href="http://wordpress.org/plugins/akismet/">the WordPress plugins directory</a>.</p><br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/akismet.wordpress.com/1923/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/akismet.wordpress.com/1923/" /></a> <img alt="" border="0" src="https://pixel.wp.com/b.gif?host=blog.akismet.com&blog=116920&post=1923&subd=akismet&ref=&feed=1" width="1" height="1" />";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, 23 Feb 2017 18:08: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:17:"Christopher Finke";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:81:"WPTavern: WPWeekly Episode 264 – REST API, Disqus, and Happy Birthday Discourse";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:58:"https://wptavern.com?p=66421&preview=true&preview_id=66421";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:86:"https://wptavern.com/wpweekly-episode-264-rest-api-disqus-and-happy-birthday-discourse";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:4422:"<p>In this episode, Marcus Couch and I discuss the news of the week. We introduce a new segment of the show called &#8220;What&#8217;s on WordPress.tv?&#8221; where we highlight three videos to check out. We also share details of <a href="https://central.wordcamp.org/schedule/">upcoming WordCamps </a>in the month of March.</p>
<h2>Stories Discussed:</h2>
<p><a href="https://halfelf.org/2017/case-rest-api/">A Case for REST API</a><br />
<a href="https://wptavern.com/buddypress-2-8-boosts-minimum-php-requirement-adds-twenty-seventeen-companion-stylesheet">BuddyPress 2.8 Boosts Minimum PHP Requirement, Adds Twenty Seventeen Companion Stylesheet</a><br />
<a href="https://wptavern.com/disqus-hits-sites-with-unwanted-advertising-plans-to-charge-large-publishers-a-monthly-fee-to-remove-ads">Disqus Hits Sites with Unwanted Advertising, Plans to Charge Large Publishers a Monthly Fee to Remove Ads</a><br />
<a href="https://wptavern.com/how-to-check-if-installed-plugins-are-no-longer-in-the-plugin-directory">How to Check if Installed Plugins Are No Longer in the Plugin Directory</a><br />
<a href="https://blog.discourse.org/2017/02/discourses-fourth-birthday/">Happy Fourth Birthday Discourse</a></p>
<h2>What&#8217;s On WordPress.TV?</h2>
<h3>WordCamp Manila 2016</h3>
<p><a href="http://wordpress.tv/2017/02/12/andrew-dela-serna-how-we-work-in-automattic/">Andrew dela Serna: How We Work in Automattic</a></p>
<p>Learn what it’s like to work at Automattic, the tools they use, our culture, the people, how to apply and what’s next for the company.</p>
<h3>WordCamp Waukesha 2017</h3>
<p><a href="http://wordpress.tv/2017/02/09/ryan-erwin-digital-marketing-strategy-and-seo/">Ryan Erwin: Digital Marketing, Strategy and SEO</a></p>
<p>Ryan Erwin discussed digital marketing strategy for business as it relates to on and off page SEO, content marketing, and conversion optimization. He reviews how to plan, implement, and analyze your strategic initiatives.</p>
<h3>WordPress Community Interview Series</h3>
<p><a href="http://wordpress.tv/2017/02/20/wordpress-community-interview-with-isabelle-garcia/">WordPress Community Interview With Isabelle Garcia</a></p>
<p>Isabelle Garcia is a front-end web developer and social media geek. She is a “Digital Nomad” and travels the world working remotely. She has no fixed base, no office. Isabel likes to frequent local libraries, not to borrow books but to take advantage of the quiet atmosphere.</p>
<p>While other digital nomads meet at coffee shops or co-working spaces, she likes to spend entire days and even weekends in the common areas and desks of public libraries.</p>
<h2>Plugins Picked By Marcus:</h2>
<p><a href="https://wordpress.org/plugins/really-simple-click-to-call/">Really Simple Click To Call Bar</a> adds a customizable click-to-call bar to the bottom of the browser window on mobile devices. It enables users to easily call you from their phone and automatically adds events if you&#8217;re using Google Analytics Universal. Perfect for small businesses like restaurants, retail stores, or any lead generation that relies on phone calls.</p>
<p><a href="https://wordpress.org/plugins/html-table/">Responsive tables</a> lets you create and display tables easily on your website with shortcodes. HTML tables can be used to display pricing, comparisons, DBMS tables and much more.</p>
<p><a href="https://wordpress.org/plugins/wp-demo-buddy/">WP Demo Buddy</a> instantly creates a dedicated expiring Demo/Trial instance of WordPress with any WordPress Plugin and Theme to each of your website visitors. Your website visitors can test drive your plugins securely before they buy or test drive the plugins you review/sell on your website.</p>
<h2>WPWeekly Meta:</h2>
<p><strong>Next Episode:</strong> Wednesday, March 1st 3:00 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="https://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 #264:</strong><br />
</p>
<div id="epoch-width-sniffer"></div>";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, 22 Feb 2017 22:29: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: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: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:97:"WPTavern: Zerif Lite Returns to WordPress.org after 5-Month Suspension and 63% Decline in Revenue";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:29:"https://wptavern.com/?p=64347";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:107:"https://wptavern.com/zerif-lite-returns-to-wordpress-org-after-5-month-suspension-and-63-decline-in-revenue";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:7365:"<p><a href="https://i0.wp.com/wptavern.com/wp-content/uploads/2016/09/zerif-lite.png?ssl=1"><img /></a></p>
<p>In October 2016, Zerif Lite was <a href="https://wptavern.com/zerif-lite-suspended-from-wordpress-theme-directory-300k-users-left-without-updates">suspended from the WordPress Themes Directory</a> after failure to comply with the Theme Review Team&#8217;s guidelines. The suspension left 300,000 users (including those using Zerif Lite child themes) without maintenance and security updates.</p>
<p>After five months of fixes and several rounds of review, <a href="https://wordpress.org/themes/zerif-lite/" target="_blank">Zerif Lite</a> has returned to the directory with the same functionality but a significantly altered user experience. Users are now required to install a plugin for the features that were previously deemed to be &#8220;faux custom post types,&#8221; violations of the content vs. presentation guideline for WordPress.org-hosted themes. These include small custom content blocks that appear on the homepage for things like team info and testimonials.</p>
<p>&#8220;We will work on making sure it is all clear for people, but I still don’t understand or agree with the requirement,&#8221; ThemeIsle CEO Ionut Neagu said. &#8220;I think <a href="http://torstenlandsiedel.de/2017/02/21/questions/" target="_blank">Torsten phrased it better</a>: &#8216;Why do the guidelines of the Theme Review Team forbid the usage of Shortcodes/CPTs/etc. due to problems when switching themes, if, in the meantime, the Plugin Review Team explicitly allows those plugins which only work for one theme, which brings the entire idea (function remains intact after switching themes) to absurdity?'&#8221;</p>
<p>At the time of suspension, Neagu estimated that Zerif Lite&#8217;s unavailability on WordPress.org would diminish the company&#8217;s revenue by 50%.</p>
<p>&#8220;What was interesting is that revenue continued to decrease for all those months and we are now at around $45k/month instead of $120k,&#8221; Neagu said. &#8220;That revenue won’t be back as the theme is live. A big part of success/sales before was that we had a great demo, a very easy-to-set-up theme, and ‘better’ upsells.&#8221;</p>
<p>Neagu said the company has seen no significant increase in revenue during the first few days the theme has been back in the directory. His team has considered releasing the theme under a completely different name but is committed to supporting the current version for at least the next two years. Meanwhile, they have built newer themes like <a href="https://themeisle.com/themes/hestia/" target="_blank">Hestia</a> to be capable of importing Zerif content seamlessly into its design to avoid the lock-in effect.</p>
<p>Neagu said the experience of losing so much revenue has not changed the company&#8217;s strategy for distribution. They will continue to add new themes to WordPress.org but Neagu said they would be lucky to add two per year, given the limitation of one theme per account and a 6-7 month waiting period in the queue.</p>
<p>Zerif Lite&#8217;s suspension was a controversial decision. Many who commented on our first <a href="https://wptavern.com/zerif-lite-suspended-from-wordpress-theme-directory-300k-users-left-without-updates" target="_blank">post</a> about the issue were pleased to see the Theme Review Team finally throw the book at ThemeIsle after the company had been allowed to skirt the requirements for more than a year without resolving the issues. Others saw the situation as an opportunity to re-examine the directory&#8217;s requirements.</p>
<p>&#8220;Perhaps the rules surrounding theme submission to the repo should be relaxed for everyone – limited only to security concerns perhaps, let the market sort out the rest,&#8221; <a href="https://twitter.com/bradley_kirby" target="_blank">Bradley Kirby</a>, author of the Wallace theme, said. &#8220;Is it possible that absolute data portability isn’t an expectation or desire from most end users? That they expect to do some manual porting of data when they change themes? That they prize other features like site design and built-in functionality over something like data portability?&#8221;</p>
<p>Zerif Lite has been at the center of the Theme Review Team&#8217;s discussions regarding data portability for the past two years after the team began <a href="https://wptavern.com/wordpress-theme-review-team-is-cracking-down-on-violations-of-the-presentation-vs-functionality-guideline" target="_blank">cracking down on violations of the Presentation vs. Functionality guideline</a>. The spotlight shined on Zerif Lite during that discussion eventually culminated in its suspension, as Neagu was forced to comply or have his theme removed.</p>
<p>&#8220;I think our goal should just be to provide the best experience for the users, not just to comply without thinking about what users want,&#8221; Neagu said. &#8220;At least this is my goal &#8211; to build the best products that will help people to build their sites.&#8221;</p>
<h3>The Risks of Using WordPress.org as a Primary Distribution Channel</h3>
<p>WordPress.org is arguably the most effective way for a theme company to reach mass quantities of users with a freemium theme. The directory lends a great deal of credibility to its listings because of the stringent guidelines and rigorous review process. Failure to comply with these guidelines ultimately ended up sinking ThemeIsle&#8217;s flagship theme and Neagu is not optimistic that the previous revenue will return.</p>
<p>&#8220;During this whole time, a thing that caught me off guard was some of people’s comments wondering if it was even safe to use a theme that was removed from the repo in the first place,&#8221; Neagu said. &#8220;I mean, in the user’s mind, and understandably so, there must have been something wrong with the theme since it got removed, right?&#8221; He said this experience caused him to see things differently.</p>
<p>&#8220;Being listed in the official repository doesn’t only get you downloads and/or sales, but also trust and credibility in the eyes of your potential users,&#8221; Neagu said. &#8220;Unfortunately, most of the users who install themes directly via their WP dashboards are not very experienced, and they have no reason to research the web a bit more to find out what happened to the theme they heard about. In other words, if someone types &#8216;zerif&#8217; into the search field in their dashboard and they find nothing, they just move on.&#8221;</p>
<p>Neagu said that in spite of differences Themeisle has had with the Theme Review Team, the company will continue to contribute and be part of the community. The theme&#8217;s suspension, re-working, and re-installment is an interesting case of what can happen when a company&#8217;s sales strategy is at odds with WordPress.org&#8217;s requirements.</p>
<p>&#8220;Our products are focused towards beginners, being super easy to setup with built-in demo content, so they are not niched products that we can distribute in different communities,&#8221; Neagu said.</p>
<p>&#8220;It is obvious that relying on a third-party marketplace is the worst scenario, but WordPress.org is the default solution: if you want to reach a large mass of people, you need to be there.&#8221;</p>
<div id="epoch-width-sniffer"></div>";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, 22 Feb 2017 21:47:29 +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: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:48:"BuddyPress: BuddyPress 2.8.1 Maintenance Release";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:32:"https://buddypress.org/?p=264058";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:68:"https://buddypress.org/2017/02/buddypress-2-8-1-maintenance-release/";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:536:"<p>BuddyPress 2.8.1 is now available. This maintenance release fixes four bugs, including two regressions in BuddyPress 2.8.0. See the <a href="https://buddypress.trac.wordpress.org/milestone/2.8.1">Trac milestone</a> or the <a href="https://codex.buddypress.org/releases/version-2.8.1/">official changelog</a> for more details.</p>
<p>Version 2.8.1 is a recommended update for all BP installations. Update via the WordPress Dashboard, or download manually from <a href="https://wordpress.org/plugins/buddypress/">wordpress.org</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:"Wed, 22 Feb 2017 19:41:02 +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:12:"Boone Gorges";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:115:"WPTavern: WordPress Core Editor Team Publishes UI Prototype for “Gutenberg,” an Experimental Block Based Editor";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:29:"https://wptavern.com/?p=65960";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:119:"https://wptavern.com/wordpress-core-editor-team-publishes-ui-prototype-for-gutenberg-an-experimental-block-based-editor";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:3690:"<p>In the past few weeks, the WordPress Core Editor team, <a href="https://wptavern.com/matt-mullenweg-announces-tech-and-design-leads-for-new-focus-based-development-cycle">led by</a> Automattic employees Matías Ventura and Joen Asmussen, have been hard at work creating a new <a href="https://make.wordpress.org/core/2017/01/17/editor-technical-overview/">content creation experience</a>. The team recently <a href="https://wordpress.github.io/gutenberg/">published a UI prototype </a>for Gutenberg, an experimental block based editor. The editor displays content-specific toolbars when an element is selected and provides a way to move blocks up and down.</p>
<img />Block Based Editor UI Prototype
<p>While the goal is to reinvent WordPress&#8217; current editor, there&#8217;s no guarantee that the prototype will end up as the final product and is in a high state of flux.</p>
<p>&#8220;The UI prototype exists mostly to serve as a non-static mockup,&#8221; Asmussen said. &#8220;It&#8217;s like a sandbox we&#8217;re building to test some of our mockups and assumptions, to see if they hold water or not. To that extent, it&#8217;s already been successful in informing us of things that worked well, and not so well.&#8221; The code that powers the editor is made up of about 90% JavaScript.</p>
<p>One of the concerns in revamping the editor is accessibility. Joe Dolson <a href="https://make.wordpress.org/accessibility/2017/02/17/revising-the-wordpress-editor-gutenberg-and-accessibility/">highlighted this concern</a> in a post on the Make WordPress Accessible site. Dolson notes that the accessibility team will work in tandem with the editor team to make the new editor as accessible as possible.</p>
<p>&#8220;From an accessibility perspective, this is both an incredible opportunity to build a powerful and flexible experience for all users and an enormous risk that we could end up reducing the effectiveness of the editor for users with disabilities, or require them to use a 2nd-class editor without these enhanced editing capabilities,&#8221; Dolson said.</p>
<p>&#8220;We in the WordPress accessibility community embrace the challenge of creating a great new experience, and want to assure the community that we are going to do everything we can to make sure that any new editor experience is as accessible as we can possibly make it.&#8221;</p>
<p>Although the prototype&#8217;s functionality is limited, the team is interested to hear about your experience and expectations with using the editor. Some questions to consider during testing include:</p>
<ul>
<li>Talk through each step, what does this do?</li>
<li>What does this feel like?</li>
<li>As you use it, what is missing you feel should be there?</li>
</ul>
<p>Many users have already <a href="https://make.wordpress.org/design/2017/02/09/initial-editor-blocks-prototype-editor-testing/">shared their experiences</a>, providing valuable insight that is fueling rapid improvements to the <a href="https://github.com/WordPress/gutenberg/">project</a> on<a href="https://github.com/WordPress/gutenberg/"> GitHub</a>.</p>
<p>The best way to get involved and contribute to this project is to subscribe to the <a href="https://make.wordpress.org/design/">Make WordPress Design</a> blog and provide feedback by commenting on posts. You can also submit pull requests or issues on <a href="https://github.com/WordPress/gutenberg/">GitHub</a>. Weekly meetings dedicated to the Editor component are held on Wednesday at 19:00 CET on <a href="https://make.wordpress.org/chat/">Slack</a> in the <a href="https://make.wordpress.org/design/tag/core-editor/">#core-editor</a> channel.</p>
<div id="epoch-width-sniffer"></div>";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, 22 Feb 2017 18:31:57 +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: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:34:"HeroPress: A Sense Of True Freedom";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:56:"https://heropress.com/?post_type=heropress-essays&p=1610";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:48:"https://heropress.com/essays/sense-true-freedom/";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:9233:"<img width="960" height="480" src="http://20094-presscdn.pagely.netdna-cdn.com/wp-content/uploads/2017/02/022217-1024x512.jpg" class="attachment-large size-large wp-post-image" alt="Pull Quote: At any given time, I am who I want to be, & I'm right where I want to be." /><p>It’s 7:30 in the morning in Rio de Janeiro, Brazil. The hostel’s cat just came to say “Good morning” and I just finished my night shift on the WPMU DEV forum. It’s my third day in Rio after spending the last 40 days in Bogota, Colombia. Traveling is in my blood or at least, it is now.</p>
<p>I’m a full-time digital nomad and I have been for over a year now.</p>
<blockquote><p>I’m single, I’m female and because of WordPress, I can travel around the world and work at the same time.</p></blockquote>
<p>I started using WordPress in 2009, but I like to think that everything started in 2011 when I attended my first WordCamp in Poland. I remember I was extremely shy, scared and bit lost on the first day of WordCamp.</p>
<p>It was a different world to me or at least in contrast to what I had at home – a small city in South East Poland. It was different because for the first time in a long time since college, I felt like I fit in with everyone there. They were a right fit for me and so was that place.</p>
<p>Since that first WordCamp, I also attended many more in Poland as well as in other countries. Later, I went on to be the lead organizer of WordPress meetups in Wrocław and two WordCamps in Poland. I was also a speaker for many Polish events and for one WordCamp Paris.</p>
<p>If not for the WordPress community and the friends I met on that very first WordCamp, I wouldn’t have been able to achieve any of those accomplishments.</p>
<blockquote><p>But how could I have become a full-time digital nomad, you ask?</p></blockquote>
<p>In 2015, I was stuck. I had a great, steady job in Wrocław. I was working with WordPress and everything was perfect, at least, that’s what I thought at the time.</p>
<p>I achieved almost everything that society around me was expecting: a partner, apartment, a great job and the next step would have been getting married and having kids. Suddenly, I was sinking.</p>
<p>For a year, the only moments where I was truly happy was when I was attending WordCamps and WordPress meetups – when I was with my “tribe”, my friends.</p>
<p>Then, in May of 2015, something incredible happened: one of my friends sent me a link to a list of 70 companies which offered positions working remotely. Three of them were related to WordPress: Automattic, OnTheGoSystems and Incsub.</p>
<p>That same day, I feverishly filled out an application for a position as a Support Star at Incsub, the parent company to WPMU DEV.</p>
<p>After a wait full of agonizing anticipation, I finally got the job and six months later, I bought a one-way ticket to Japan, then one to Australia.</p>
<blockquote><p>This was just the start of my life as a digital nomad.</p></blockquote>
<p>Working at WPMU DEV remotely with partial dedicated hours and the rest being flexible allowed me to move and work while traveling.</p>
<p>The people I work with comprise the best team ever. My boss, Tim, is incredibly supportive and is willing to help when something bad happens. I didn’t need to be worried about my job when my plans suddenly made a turn for the worse, which did happen. When I had to fly back to Poland in the middle of the week due to family emergencies, it wasn’t a problem.</p>
<p>I always felt safe in the WordPress community and now I’m grateful to also feel safe with the people I work with even though we’re spread out across the globe and across many cultures.</p>
<p>Even though I’m confident in my choice of being a digital nomad now, that wasn’t always the case. This was especially true since I apparently managed to make quite the big scandal in my hometown because “good girls” don’t run away.</p>
<p>To my dismay, I was constantly told, “Study hard and you will get a nice, steady job in an office with insurance and a guaranteed retirement.”</p>
<p>How could I not want that? After all, that’s supposed to be the dream of every woman, right? That’s what I was constantly told, anyway.</p>
<p>Luckily, my best friend (who I had met at a WordCamp!) was there for me and said, “Don’t let them get to you. You are far away and they can’t hurt you.”</p>
<p>Since then, I stood with my decision to finally be free and happy.</p>
<p>Growing up in small city and being interested in computers and IT was not easy to say the least. Those aren’t traditionally considered subjects that interest girls. It also became all the more difficult when I realized this was something I wanted to do and nothing else.</p>
<p>There weren’t many people around me in my hometown who understood what I wanted to do and even fewer people who would support me. Unfortunately, this is still true. It became tougher when I was diagnosed with heavy bipolar disorder.</p>
<blockquote><p>At that time, everything sucked. I was lost and hopeless.</p></blockquote>
<p>Compounding my stress, it was around then that I realized I also suffered from the impostor syndrome – the belief that you don’t know enough about the industry you’re in to be capable of doing your job and that you never will despite anything you do.</p>
<p>There was an ugly feeling that crept in: I wanted to be somewhere else and I want to be different.</p>
<p>Fortunately, every time I attended a WordCamp or WordPress meetup, these thoughts would melt away because I felt completely supported.</p>
<p>It didn’t matter that I’m a girl or that I’m delightfully weird. What did matter was that I was knowledgeable about WordPress, my skills were growing quickly and that I could contribute to the community using my organizational skills.</p>
<p>During these meetings, I don’t ever remember someone assuming that I’m a graphic designer because I’m a girl and “girls know color.” There’s nothing wrong with being a graphic designer, but assuming someone is based solely on their gender – there’s definitely something wrong with that.</p>
<p>In reality, I’m a theme developer and in the WordPress community, that wasn’t unusual.</p>
<p>It helped me gain confidence in myself and my skills. With that confidence, I found courage to start a life where I’m no longer wanting to be somewhere else or be someone else.</p>
<blockquote><p>At any given time, I am who I want to be and I’m right where I want to be.</p></blockquote>
<p>Solo traveling isn’t always peaches and cream or sunshine, lollipops and rainbows everywhere, especially when I’m sick and inevitably alone. All things considered, I wouldn’t swap it out for what many would consider to be a “normal” life – whatever that is – and instead, I think it&#8217;s important for people to do what makes them happy and not just what others expect of them.</p>
<p>As a digital nomad, I was able to go to WordCamps in Tokyo, Belgrade, the US, Singapore and Vienna. I have met many new people and I have collected incredible memories along the way.</p>
<p>This year and in many more to come, while others may doubt my choices, I’ll be happy, traveling to more WordCamps and enjoying a sense of true freedom just because I can.</p>
<div class="rtsocial-container rtsocial-container-align-right rtsocial-horizontal"><div class="rtsocial-twitter-horizontal"><div class="rtsocial-twitter-horizontal-button"><a title="Tweet: A Sense Of True Freedom" class="rtsocial-twitter-button" href="https://twitter.com/share?text=A%20Sense%20Of%20True%20Freedom&via=heropress&url=https%3A%2F%2Fheropress.com%2Fessays%2Fsense-true-freedom%2F" rel="nofollow" target="_blank"></a></div></div><div class="rtsocial-fb-horizontal fb-light"><div class="rtsocial-fb-horizontal-button"><a title="Like: A Sense Of True Freedom" class="rtsocial-fb-button rtsocial-fb-like-light" href="https://www.facebook.com/sharer.php?u=https%3A%2F%2Fheropress.com%2Fessays%2Fsense-true-freedom%2F" rel="nofollow" target="_blank"></a></div></div><div class="rtsocial-linkedin-horizontal"><div class="rtsocial-linkedin-horizontal-button"><a class="rtsocial-linkedin-button" href="https://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fheropress.com%2Fessays%2Fsense-true-freedom%2F&title=A+Sense+Of+True+Freedom" rel="nofollow" target="_blank" title="Share: A Sense Of True Freedom"></a></div></div><div class="rtsocial-pinterest-horizontal"><div class="rtsocial-pinterest-horizontal-button"><a class="rtsocial-pinterest-button" href="https://pinterest.com/pin/create/button/?url=https://heropress.com/essays/sense-true-freedom/&media=https://heropress.com/wp-content/uploads/2017/02/022217-150x150.jpg&description=A Sense Of True Freedom" rel="nofollow" target="_blank" title="Pin: A Sense Of True Freedom"></a></div></div><a rel="nofollow" class="perma-link" href="https://heropress.com/essays/sense-true-freedom/" title="A Sense Of True Freedom"></a></div><p>The post <a rel="nofollow" href="https://heropress.com/essays/sense-true-freedom/">A Sense Of True Freedom</a> appeared first on <a rel="nofollow" href="https://heropress.com">HeroPress</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:"Wed, 22 Feb 2017 12:00: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:16:"Kasia Świderska";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:66:"WPTavern: Solving the Mystery of How People Actually Use WordPress";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:29:"https://wptavern.com/?p=65557";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:"https://wptavern.com/solving-the-mystery-of-how-people-actually-use-wordpress";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:9727:"<p>I’m in favor of <a href="https://wptavern.com/wordpress-telemetry-proposal-addresses-long-standing-privacy-concerns-as-gdpr-compliance-deadline-looms#comment-208658">WordPress collecting more anonymized usage data</a> that could help make informed decisions on changes or improvements to core, such as tracking changes to the WordPress user interface, which buttons or settings are used most often, etc.</p>
<p>A good example of when this data could have come in handy is the recent <a href="https://wptavern.com/wordpress-4-7-removes-the-underline-and-justify-buttons-from-the-editor">removal of the justify and underline buttons</a> from the editor in WordPress 4.7. During <a href="https://core.trac.wordpress.org/ticket/27159#comment:82">the discussion</a> on whether they should be removed or not, a number of people questioned if there was any user data available that would indicate how much they’re used and help gauge the impact of removing them.</p>
<p>The only data available to help make an informed decision was provided by Mel Choyce. Choyce <a href="https://core.trac.wordpress.org/ticket/27159#comment:29">shared statistics</a> from WordPress.com and its variety of editor interfaces that indicated Bold, Italic, and Links are used the most while Lists and Blockquotes are the second most used buttons.</p>
<p>The Center and Left alignment buttons are used often, but the data doesn’t determine if people are using them to align text or images. Information on which headings are used most was not available. The team did not have any usage data specific to the WordPress core editor.</p>
<p>In the ticket, Andrew Ozz, who maintains the TinyMCE component, <a href="https://core.trac.wordpress.org/ticket/27159#comment:103" rel="nofollow">chimed in</a> and agreed that good user data is needed.</p>
<p>In an effort to obtain usage data before removing the buttons, Ozz <a href="https://core.trac.wordpress.org/ticket/27159#comment:104">created a small plugin</a> to perform testing with five existing and first-time users. Interestingly, he discovered that both types of users clicked on the kitchen sink button to display the second row of buttons and didn&#8217;t click the button to hide them again.</p>
<p>Ozz also shared other results from his limited testing.</p>
<blockquote><p>I know these test results are extremely limited and cannot be used when making a decision, but they are an indication of what &#8216;real&#8217; testing may reveal. In this case it shows that moving buttons to the bottom row will have no effect on the usage of these buttons as they will still be visible at all times.</p>
<p>This super limited testing also indicated another (much bigger) problem: somebody mentioned this some time ago (think it was @mor10), around 20% of the WordPress users don’t even know there is a second editor toolbar, and some feel &#8216;pretty stupid&#8217; after discovering it. I think this is bad UX and something that can be fixed easily by having the second toolbar open by default, and fixing it is more important and will improve the UX for these 20% of users a lot.</p></blockquote>
<p>Imagine how useful it would be for core developers or others if there was usage data like this on a grander scale that could fuel rapid improvements and help discover and eliminate pain points.</p>
<p>Matt Mullenweg, co-creator of the WordPress project, has <a href="https://core.trac.wordpress.org/ticket/38418">closed the ticket</a> with the Telemetry Proposal as it&#8217;s not within the <a href="https://wptavern.com/state-of-the-word-2016-mullenweg-pushes-calypso-as-future-of-wordpress-interface-proposes-major-changes-to-release-cycle">three project focus areas</a> for 2017.</p>
<p>&#8220;There is no part of current or potential WP development that is being held back by the lack of this existing, as there are easy and current ways to answer questions with data to the extent it would inform our decisions,&#8221; Mullenweg said.</p>
<p>Morten Rand-Hendriksen <a href="https://core.trac.wordpress.org/ticket/38418#comment:11">responded to the closure</a> saying that the quantitative user testing falls squarely within the Customizer focus area.</p>
<p>&#8220;I would argue since the release of the Customizer some years back, it has gone through a multi-year large-scale quantitative user test with incremental tweaks and improvements,&#8221; Rand-Hendriksen said.</p>
<p>&#8220;This is in line with standard agile development. At this juncture, the Customizer can be considered mature, and moving a mature solution forward requires hard data on usage, use cases, and user needs. This goes beyond standard user testing to large-scale data collection, which is what this ticket aims at addressing.&#8221;</p>
<h2>Perspective From a WordPress Release Lead</h2>
<p>There are WordPress core developers who have shown interest in a similar system. At the start of the WordPress 4.7 development cycle, Drew Jaynes, who led the WordPress 4.2 release cycle, <a href="https://make.wordpress.org/core/2016/08/17/wordpress-4-7-whats-on-your-mind/#comment-30573">expressed interest</a> in creating an opt-in data collection system.</p>
<p>The idea received positive feedback that included people offering to help. I asked Jaynes what his thoughts are on such a system and how it could benefit core development.</p>
<p>&#8220;There&#8217;s some discussion about what form that collection should take initially, but I think there&#8217;s consensus that it should be opt-in, and take one of two forms (or a hybrid of the two): active (surveys in the admin) or passive (anonymized usage) data collection,&#8221; Jaynes said.</p>
<p>&#8220;Either way, I think having this data available would benefit the entire community, regardless of the obvious practicable application within core development.</p>
<p>&#8220;All of that data can and should be used to inform decision-making in WordPress going forward. The core team really needs to hit the reset button on the concept of the 80/20 rule, including what and whom it represents.</p>
<p>&#8220;We should be building modern WordPress for the modern WordPress user, and resting on Matt&#8217;s instincts coupled with the core team&#8217;s experience is no longer enough to maintain positive forward momentum.&#8221;</p>
<p>Jaynes cites the editor as an example of where having the data would be helpful and that without it, pursuing an idealized &#8216;modern editor&#8217; in WordPress is premature. The data could also help provide insight into improving the new user experience.</p>
<p>&#8220;A common complaint is that the WordPress admin can be really overwhelming to new users,&#8221; Jaynes said. &#8220;Having real data about how frequently the various core screens are used could really inform decisions about maybe paring it down, or hiding some things over time that are used less and less.&#8221;</p>
<p>While collecting data could help with making informed decisions, he doesn&#8217;t think it should stop the core team from experimentation.</p>
<p>&#8220;I think having real, citable data could really reduce the amount of backlash we&#8217;ve seen with a few releases in the last couple of years,&#8221; Jaynes said. &#8220;Areas where core team decisions left some group of users feeling jilted.&#8221;</p>
<p>&#8220;It&#8217;s worth mentioning that there&#8217;s absolutely value in allowing the core team to experiment, as long as we&#8217;re careful not to latch onto something that got merged as the only way we&#8217;ll ever need to solve that problem; that&#8217;s where we get into trouble.&#8221;</p>
<h2>Who Are The 80/20 Users of WordPress?</h2>
<p>The most striking statement in Rand-Hendriksen&#8217;s proposal is that WordPress development is occurring without having any idea who the 80% or 20% of users are.</p>
<p>&#8220;During the development of WordPress 4.7, I was involved in several conversations centered around <em>assumed use</em> of features,&#8221; Rand-Hendriksen said.</p>
<p>&#8220;The general argument was that based on the 80/20 rule, certain features should be added while others should be removed. I kept bringing up the well-known fact we don’t have a clue what features 80%, or even 20%, of WordPress users actually use so any claim of validity in the 80/20 rule is guesswork at best.&#8221;</p>
<p>Collecting usage data is standard practice. Microsoft Windows, Mozilla Firefox, Chrome, iOS, and a number of other software projects have opt-in data collection systems that are used to improve the product. They also provide insight into how customers are using their products.</p>
<p>WordPress development on the other hand relies on the support forums, data collected from WordPress.com, limited user testing, verbal feedback at WordCamps, and other small data points. Collecting usage data from WordPress could show trends and provide evidence for changes related to the <a href="https://wordpress.org/about/philosophy/">decisions not options philosophy</a> of WordPress development.</p>
<p>Collecting usage data isn&#8217;t going to solve all of WordPress&#8217; woes but having it available to make more informed decisions is better than not having any data at all. Although an opt-in data collection system in WordPress won&#8217;t be a core focus any time soon, it&#8217;s encouraging to see the idea has merit and is something some core developers are interested in seeing become a reality.</p>
<p>I&#8217;d gladly opt-in and share my usage data with WordPress.org as long as it was anonymized and displayed publicly in aggregate. Would you?</p>
Note: There is a poll embedded within this post, please visit the site to participate in this post's poll.
<div id="epoch-width-sniffer"></div>";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, 21 Feb 2017 02:07:48 +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:99:"WPTavern: BuddyPress 2.8 Boosts Minimum PHP Requirement, Adds Twenty Seventeen Companion Stylesheet";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:29:"https://wptavern.com/?p=66090";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:"https://wptavern.com/buddypress-2-8-boosts-minimum-php-requirement-adds-twenty-seventeen-companion-stylesheet";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:2774:"<p><a href="https://buddypress.org/2017/02/buddypress-2-8-0-san-matteo/" target="_blank">BuddyPress 2.8</a> “San Matteo,” was released last week, led by long-time BuddyPress contributor Slava Abakumov. The release was named for <a href="http://www.sanmatteopanuozzo.com/" target="_blank">San Matteo Panuozzo</a>, an NYC pizza restaurant that specializes in panuozzo, a more portable pizza-sandwich hybrid. Following suit with the previous release, 2.8 focuses on improvements for developers and site builders, the project&#8217;s new target audience as of 2016.</p>
<p>As part of an effort to modernize the plugin&#8217;s codebase and prepare it for better integration with the BP REST API project, this release <a href="https://codex.buddypress.org/getting-started/buddypress-2-8-will-require-php-5-3/" target="_blank">boosts the minimum PHP requirement to 5.3</a>. In BuddyPress versions 2.7+, the plugin will display a notice in the dashboard if it detects that the server doesn&#8217;t meet the minimum requirements for running 2.8. The change is not likely to affect many BuddyPress sites as only a small sliver (5.7%) of WordPress sites are running on PHP 5.2.</p>
<p>This release also adds a companion stylesheet for <a href="https://wordpress.org/themes/twentyseventeen/" target="_blank">Twenty Seventeen</a>. This stylesheet is important for providing a good first impression of BuddyPress for those who are trying try out the plugin with WordPress&#8217; latest default theme. A <a href="https://codex.buddypress.org/themes/bp-theme-compatibility-and-the-wordpress-default-themes/twenty-seventeen-theme/" target="_blank">new BP codex page</a> gives sample code for changing Twenty Seventeen&#8217;s default two-column layout to be a full-width layout.</p>
<p><a href="https://i1.wp.com/wptavern.com/wp-content/uploads/2017/02/buddypress-twenty-seventeen.png?ssl=1"><img /></a></p>
<p>The 2.8 release brings improvements to the “Activate Pending Accounts” screen, making it easier for site managers to confirm or reject new registrants. Clicking on the username of a pending account will now display profile data that the user entered at signup.</p>
<p>Other improvements for developers include the following:</p>
<ul>
<li>New filters and actions for the Messages component</li>
<li>Support for List-Unsubscribe header in emails</li>
<li>More flexible Group search</li>
<li>New filter enables choice of which PHPMailer should be used when sending BuddyPress emails</li>
</ul>
<p>BuddyPress 2.8 was made possible by 44 volunteer contributors. For a full list of all the changes in this release, check out the official <a href="https://codex.buddypress.org/releases/version-2-8-0/" target="_blank">2.8.0 changelog</a>.</p>
<div id="epoch-width-sniffer"></div>";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, 21 Feb 2017 00:33: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: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:67:"WPTavern: Composing a WordPress Development Environment with Docker";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:29:"https://wptavern.com/?p=66335";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:78:"https://wptavern.com/composing-a-wordpress-development-environment-with-docker";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:6432:"<p><a href="https://i2.wp.com/wptavern.com/wp-content/uploads/2015/03/petersuhm.jpeg?ssl=1"><img /></a>This post was contributed by guest author <a href="http://petersuhm.com/" target="_blank">Peter Suhm</a>. Peter is a web developer from the Land of the Danes. He is the creator of <a href="https://wptavern.com/wp-pusher-aims-to-provide-pain-free-deployment-of-wordpress-themes-and-plugins-from-github" target="_blank">WP Pusher</a> and a huge travel addict, bringing his work along with him as he goes.<br />
&nbsp;</p>
<hr />
<p>In the last few years, a wave of virtualization technologies have swept through our WordPress development environments. The one that&#8217;s sounded the most promising to me has been Docker: lightweight and flexible. Yet, until recently, getting Docker up and running was an overwhelming task &#8211; especially on a non-Linux machine. If you managed to get it up and running in a virtual machine (using Vagrant or similar), getting port-forwarding to work would make you give up and just use Vagrant instead.</p>
<p>Now it&#8217;s different.</p>
<p>With (a stable) Docker for Mac and Windows and <a href="https://docs.docker.com/compose/" target="_blank">Docker Compose</a> at hand, getting Docker up and running is easy and pain-free. With Docker Compose you can tell Docker exactly what you want your WordPress development environment to look like and it will take care of it.</p>
<h3>What is Docker?</h3>
<p>Docker is a technology that makes it really simple to create isolated containers for your applications and websites to run in. These containers can be combined and modified to fit the needs of your applications. Docker is utilizing the Linux Containers technology (LXC) where multiple isolated environments can share the same Linux kernel &#8211; making it very lightweight compared to something like Vagrant.</p>
<p>The Docker ecosystem is built around containers. In the Docker Hub, you can find an endless number of containers that other people have built or you can build your own using a Dockerfile. When building your own, you can start from scratch using the base Ubuntu image or extend someone else&#8217;s image.</p>
<p>You can share local directories with your containers and link the networks, so they can talk to each other &#8211; just like you know it from other virtualization technologies. However, this is where it gets complicated which leads me to Docker Compose:</p>
<h3>What is Docker Compose?</h3>
<p>Docker Compose is what makes Docker available to mortals like you and me. As the name implies, Docker Compose is a tool for composing Docker containers. That means defining your services (containers), setting up the network between them, sharing local directories with them, and a few more things.</p>
<p>With Docker Compose you create a simple file in the root of your project that describes the setup required by your application/website. For a WordPress theme that might mean a container to run WordPress, a container to run MySQL and a container to run Gulp or Grunt. This can very easily be defined in a docker-compose.yml file that can then be shared with your team members. This means that you can now share your WordPress theme, including an isolated WordPress environment to run it in. Hurray for virtualization!</p>
<h3>Why use Docker?</h3>
<p>There are a few reasons why Docker is an attractive technology for me. Here are the most important requirements I have for my development environment and how Docker solves them:</p>
<ul>
<li><strong>Clean Mac:</strong> In an ideal world, I prefer not to install anything related to my development environment directly on my Mac. I work on so many different projects that this gets unmanageable. When one thing works, another doesn&#8217;t. I also travel a lot and should something happen to my computer, I want to be able to set up a new machine in minutes.</li>
<li><strong>Shareable:</strong> I often work in teams, so sharing my development environment with teammates is crucial. This is possible with Vagrant, but it&#8217;s still very tricky to keep environments in sync across teams.</li>
<li><strong>Lightweight:</strong> This is important, especially when on the road. Try running a few Vagrant boxes compared to a few Docker containers and see what I mean.</li>
<li><strong>Extendable:</strong> Extending Docker is very easy. For example, I could extend the official WordPress container and build it with WP Pusher pre-installed, since I (obviously) always use it.</li>
<li><strong>Mirror production:</strong> My development environment needs to be as close to production as possible. With Docker this is easy, since Docker can be used in production as well.</li>
</ul>
<h3>My Docker development environment</h3>
<p>This is the very simple Docker setup I use for development of my WP Pusher plugin: A WordPress and a MySQL container. Both of them use the official Docker Hub images, so setting it up is very easy.</p>
<p>My <code>docker-compose.yml</code> file looks like this:</p>
<p></p>
<p>It describes two services: a MySQL 5.7 database and WordPress running on PHP 5.6 and Apache. The database is using a volume on my local machine, so data will be persisted every time I shut off the container. My current directory (in this case a plugin) is mounted into the <code>wp-content/plugins</code> directory. This allows me to work on my plugin in a completely isolated WordPress environment &#8211; without installing anything, besides Docker, on my Mac. The WordPress container forwards port 80 to my local machine, so I can access it as &#8220;localhost&#8221; in my browser.</p>
<p>If you want to try it for yourself, and have Docker installed on your machine, just add the file to your plugin (or theme) and run:</p>
<p><code>$ docker-compose up -d</code></p>
<p>In order to see which containers are running, just run:</p>
<p><code>$ docker ps</code></p>
<p>This a very simple setup that is easy to extend and build upon.</p>
<p>I hope this post made you curious about Docker and WordPress. Thanks for reading along!</p>
<h3>Links</h3>
<ul>
<li><a href="https://docs.docker.com/compose/" target="_blank">Docker Compose</a></li>
<li><a href="https://hub.docker.com/" target="_blank">Docker Hub</a></li>
<li><a href="https://blog.wppusher.com/the-easiest-way-to-use-docker-for-wordpress-development/" target="_blank">My Docker setup for WP Pusher</a></li>
</ul>
<div id="epoch-width-sniffer"></div>";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, 20 Feb 2017 18:23: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: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:115:"WPTavern: Disqus Hits Sites with Unwanted Advertising, Plans to Charge Large Publishers a Monthly Fee to Remove Ads";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:29:"https://wptavern.com/?p=66098";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:125:"https://wptavern.com/disqus-hits-sites-with-unwanted-advertising-plans-to-charge-large-publishers-a-monthly-fee-to-remove-ads";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:7974:"<p>When Disqus <a href="https://blog.disqus.com/our-plans-for-2017" target="_blank">announced</a> it would be releasing new, subscription-based versions later this year, users didn&#8217;t expect to have the new advertising model injected into their sites without notice. Disqus CEO Daniel Ha said the company would release finalized pricing and provide more details well in advance of its planned March release, but users are reporting that the advertising has already been forced into their comments without warning.</p>
<blockquote class="twitter-tweet">
<p lang="en" dir="ltr">Why did <a href="https://twitter.com/disqus">@disqus</a> just add a bunch of ads to my site without my permission? <a href="https://t.co/CzXTTuGs67">https://t.co/CzXTTuGs67</a> <a href="https://t.co/y2QbFFzM8U">pic.twitter.com/y2QbFFzM8U</a></p>
<p>&mdash; Harry Campbell (@TheRideShareGuy) <a href="https://twitter.com/TheRideShareGuy/status/826921387273052160">February 1, 2017</a></p></blockquote>
<p></p>
<p>&#8220;We are one of the lucky 5% who now has to pay if we don&#8217;t want really irrelevant and horribly spammy links just plopped on our site with zero warning,&#8221; BabyCenter Social Media Manager Dina Vernon Freeman said. &#8220;Unless our users (mainly millennial parents) should care about overpaying for dentures! We&#8217;re looking for other platforms ASAP.&#8221;</p>
<p>Brian O&#8217;Neill, who manages Slugger O&#8217;Toole, a site with more than 70,000 readers, was also hit with unwanted advertising on his site.</p>
<p>&#8220;Disqus has started to put ads into our comments section of our site without even telling us,&#8221; O&#8217;Neill said in a <a href="https://sluggerotoole.com/2017/02/02/bear-with-us-as-we-try-to-remove-those-terrible-disqus-ads-from-the-comments-area/" target="_blank">post</a> explaining the new ads to the site&#8217;s readers. &#8220;As you can imagine I am extremely annoyed at this – I hate crappy online ads as much as you do. Supposedly we can remove the ads if we pay them $10 a month, but as yet there is no mechanism on their site to do this.&#8221; O&#8217;Neill said he is also exploring alternative commenting systems if he is unable to remove the advertising.</p>
<p>Disqus responded to user complaints with a post to clarify that <a href="https://blog.disqus.com/advertising-will-remain-optional-for-over-95-of-sites-on-disqus" target="_blank">advertising will remain optional for more than 95% of the sites on Disqus</a>.</p>
<p>&#8220;Larger, commercial, sites that elect to use the free version of Disqus will be supported by configurable advertising and have the option to earn revenue through the Reveal program,&#8221; Disqus Marketing Manager Mario Paganini said. &#8220;For small, non-commercial sites, advertising will be optional. These sites will be able to use Disqus’ ads-optional subscription, free of charge.&#8221;</p>
<p>Publishers asked in the comments when the option to pay to remove ads will become available, as an option to pay isn&#8217;t currently in place.</p>
<p>&#8220;Larger sites will be able to run a paid subscription version of Disqus that includes the ability to remove ads along with additional features,&#8221; Paganini said. &#8220;We are aiming to have this available in the next couple of months. We will be making periodic updates on our blog and talking to publishers in the meantime.&#8221;</p>
<p>Disqus is moving to focus on its larger publishers but has already attracted angry criticism from publishers that were not properly informed of the changes. Over the years the company has experimented with different ways of monetizing the commenting platform, often frustrating users in the process of making important changes.</p>
<p>In 2014, Disqus began experimenting with advertising in the form of &#8220;Sponsored Comments&#8221; that users could not turn off without contacting support. This move drew <a href="https://ma.tt/2014/11/disqus-spam-ads/" target="_blank">criticism from WordPress co-founder Matt Mullenweg</a> who essentially called out the ads as little more than comment spam. After a negative reaction from its community, Disqus quietly discontinued the Sponsored Comments and scrubbed the <a href="https://blog.disqus.com/heads-up-were-testing-a-new-form-of-advertising" target="_blank">announcement post</a> from the internet.</p>
<h3>Disqus Delivers Low-Quality Ads</h3>
<p>Disqus has struggled to land on an effective advertising model that will convince users to get on board. Its <a href="https://help.disqus.com/customer/portal/articles/2069645-reveal-f-a-q-" target="_blank">Reveal advertising program</a> is notorious for serving low-quality ads and has inspired little confidence in users who have tried it. The following is one of the tamer examples:</p>
<p><a href="https://i1.wp.com/wptavern.com/wp-content/uploads/2017/02/disqus-ads.png?ssl=1"><img /></a></p>
<p>&#8220;I think if you had somewhat decent advertising you might convince people that it&#8217;s worth it, but I had to yank it from one of my sites because it was all &#8216;Ron Paul wants you to buy gold!&#8217; and &#8217;22 times the photos showed too much!'&#8221; Paul King, an author who writes for multiple publications, commented on Disqus&#8217; most recent advertising announcement. &#8220;Just put in a tier of non-spam advertising that&#8217;s actually relevant or charge based on comments or something.&#8221;</p>
<p>Twitter is filled with complaints from users who are dissatisfied with the questionable quality of Disqus&#8217; advertising. Many are searching for alternatives.</p>
<blockquote class="twitter-tweet">
<p lang="en" dir="ltr"><a href="https://twitter.com/disqus">@disqus</a> We've disabled ads straight away (they are literally ALL scams) &#8211; if you force those ads on us, we're dropping you like a hot potato</p>
<p>&mdash; That's Nonsense (@thatsnonsense) <a href="https://twitter.com/thatsnonsense/status/828739990486208512">February 6, 2017</a></p></blockquote>
<p></p>
<blockquote class="twitter-tweet">
<p lang="en" dir="ltr">Why <a href="https://twitter.com/disqus">@disqus</a> think it's acceptable to serve disgusting, misogynistic ads (OR ANY ADS) on people's blogs without asking is beyond me.</p>
<p>&mdash; Rosie (@RosieLondoner) <a href="https://twitter.com/RosieLondoner/status/828642646478426112">February 6, 2017</a></p></blockquote>
<p></p>
<blockquote class="twitter-tweet">
<p lang="en" dir="ltr">I'm removing <a href="https://twitter.com/hashtag/disqus?src=hash">#disqus</a> from <a href="https://t.co/PSlovlA6Tm">https://t.co/PSlovlA6Tm</a> since they've suddenly turned on (notably creepy) ads with no warning.</p>
<p>&mdash; James Britt <img src="https://s.w.org/images/core/emoji/2.2.1/72x72/1f3a7.png" alt="🎧" class="wp-smiley" /> (@jamesbritt) <a href="https://twitter.com/jamesbritt/status/826922670407172096">February 1, 2017</a></p></blockquote>
<p></p>
<p>This recent move to turn on advertising without publishers&#8217; permission is another communication blunder in the same vein as the previous attempt at Sponsored Comments. Disqus has failed to find a communication strategy that respects users&#8217; content while leading the company towards its goals at the same time. With spam-quality ads deploying network-wide, the company can certainly expect that some users will be willing to pay the $10/month to turn them off. Sadly, the experience of paying to turn off offensive ads feels more like getting mugged on your way to work than upgrading your service.</p>
<p>The <a href="https://wordpress.org/plugins/disqus-comment-system/" target="_blank">Disqus Comment System</a> plugin has been hovering around 200,000 active sites for the past two years and its ratings continue to plummet on WordPress.org. Unless Disqus is able to dramatically improve its advertising network before its official March release, we may see a mass exodus to other commenting systems.</p>
<div id="epoch-width-sniffer"></div>";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, 18 Feb 2017 00:16:13 +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:81:"WPTavern: How to Check if Installed Plugins Are No Longer in the Plugin Directory";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:29:"https://wptavern.com/?p=66106";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:92:"https://wptavern.com/how-to-check-if-installed-plugins-are-no-longer-in-the-plugin-directory";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:9904:"<p>When we wrote about <a href="https://wptavern.com/why-plugins-sometimes-disappear-from-the-wordpress-plugin-directory">why plugins sometimes disappear</a> from the WordPress plugin directory, it generated a healthy discussion in the comments. One of the topics of discussion brought up is whether or not <a href="https://wptavern.com/why-plugins-sometimes-disappear-from-the-wordpress-plugin-directory#comment-209733">users should be notified</a> when a plugin disappears and if so, how?</p>
<p>Currently, when a plugin is hidden on the directory, users are not notified. If it&#8217;s removed due to a security vulnerability and the author chooses not to fix it or move the plugin somewhere else such as <a href="https://github.com/">GitHub</a>, users are left in the dark.</p>
<p>Donna Cavalier shared a <a href="https://wordpress.org/support/topic/plugin-is-missing-on-the-wordpress-org-directory/">recent example</a> of why users should be notified. Contact Form DB is a popular plugin that saves contact form submissions from many popular Contact Forms plugins to the database. As of <a href="https://web.archive.org/web/20161030050515/https://wordpress.org/plugins/contact-form-7-to-database-extension/">October 30th, 2016</a>, it was actively installed on more than 400K sites.</p>
<p>Approximately <a href="https://wordpress.org/support/topic/plugin-is-missing-on-the-wordpress-org-directory/">one month ago</a>, the plugin was hidden due to a security vulnerability. Instead of releasing a patch, Michael Simpson, creator of Contact Form DB, moved the plugin <a href="https://github.com/mdsimpson/contact-form-7-to-database-extension/releases">to GitHub</a> and subsequently released a <a href="https://github.com/mdsimpson/contact-form-7-to-database-extension/releases/tag/v2.10.30">new version</a> that patched the vulnerability. Simpson says the person on the plugin review team that he spoke with was condescending, unprofessional, and rubbed him the wrong way.</p>
<p>&#8220;I’m happy to address any issues and meet any standards, but I’m at the limit of my patience,&#8221; Simpson said.</p>
<p>&#8220;I try to be a good citizen and give back to the community. I’ve put in countless hours for close to seven years now. When I’m treated like this, it seems WordPress doesn’t value me or my contribution to its community.</p>
<p>&#8220;Anyway, I put the code on GitHub and I will continue to support it. But at this point I’m not sure I want to deal with people like this to re-list the plugin on this site. I don’t need the frustration.&#8221;</p>
<p><strong>If you use Contact Form DB, please <a href="https://github.com/mdsimpson/contact-form-7-to-database-extension/releases/tag/v2.10.30">update to 2.10.30</a> as soon as possible as it contains the aforementioned security fix.</strong></p>
<p>It&#8217;s impossible for Contact Form DB users to automatically install updates from GitHub without installing an <a href="https://wptavern.com/github-updater-4-1-to-add-remote-installation-for-wordpress-plugins-and-themes">updater plugin</a>. This leaves thousands of sites at risk.</p>
<h2>How to Know When Installed Plugins Are No Longer in the Directory</h2>
<p>In the comments of <a href="https://wptavern.com/why-plugins-sometimes-disappear-from-the-wordpress-plugin-directory">our article</a>, Tavern reader Central Geek <a href="https://wptavern.com/why-plugins-sometimes-disappear-from-the-wordpress-plugin-directory#comment-209776">shared links</a> to a couple of plugins aimed at providing useful information such as, whether a <a href="https://wordpress.org/plugins/vendi-abandoned-plugin-check/">plugin has been abandoned</a> and <a href="https://wordpress.org/plugins/better-plugin-compatibility-control/">better plugin compatibility information</a>.</p>
<p>One of the plugins he mentions is called <a href="https://wordpress.org/plugins/no-longer-in-directory/">No Longer in Directory, </a>developed by <a href="https://profiles.wordpress.org/whitefirdesign/">White Fir Design</a>. The plugin adds a page to the WordPress backend that informs users if any of the plugins that are installed are available in the plugin directory. It also separately lists installed plugins that haven&#8217;t been updated in two years or more.</p>
<p><img /></p>
<p>The check is performed using the plugin directory&#8217;s folder name. The author notes that this could lead to plugins that have never been in the plugin directory to be flagged if they use the same name as a plugin that was in the directory in the past. If you encounter this situation, you&#8217;re encouraged to create a new thread on the <a href="https://wordpress.org/support/plugin/no-longer-in-directory">plugin&#8217;s support forum</a>.</p>
<p>So far, No Longer in Directory is actively installed on more than 1K sites. Out of a total of <a href="https://wordpress.org/support/plugin/no-longer-in-directory/reviews/">six reviews</a>, its average rating is 4.8 out of 5 stars. I tested the plugin with WordPress 4.8 alpha and didn&#8217;t encounter any issues.</p>
<p>If this is a feature you&#8217;d like to see implemented in WordPress, consider <a href="https://wordpress.org/ideas/topic/alert-when-installed-plugins-have-been-removed-from-the-plugin-directory">voting for it</a>. So far, the idea has 43 votes with a five-star average rating. <a href="https://profiles.wordpress.org/ipstenu">Mika Epstein</a>, Plugin Directory Representative, <a href="https://wordpress.org/ideas/topic/alert-when-installed-plugins-have-been-removed-from-the-plugin-directory#post-22481">responded to the idea</a> four years ago noting that it was being worked on.</p>
<p>As Epstein mentioned in our previous article, explaining WHY a plugin has been closed is complex.</p>
<p>“Obviously the last thing we want are people getting hacked, but it presents us with a few options and they all have flaws,&#8221; she said.</p>
<p>&#8220;We’ve not been able to determine a way to tell people ‘This plugin is gone, don’t use it’ and ‘This plugin is gone, but use it if you want.’ without putting users at risk.”</p>
<h2>If a Plugin Is Permanently Removed From the Directory, Users Should Be Notified</h2>
<p>I believe users should be informed if a plugin is permanently removed from the directory. It doesn&#8217;t make sense to notify users if it&#8217;s temporarily hidden due to violating a guideline or a security issue. Plus, between upgrade and admin notices, users are receiving enough notifications as it is.</p>
<p>I&#8217;m unsure if the notification should be an admin notice as we&#8217;ve <a href="https://wptavern.com/please-stop-abusing-wordpress-admin-notices">already documented</a> how plugin authors are using them to advertise. Users are increasingly getting annoyed by them and they&#8217;re usefulness is in decline.</p>
<p>There&#8217;s also the question as to who is responsible for informing users. This responsibility should fall squarely on the plugin author. If I was a plugin author and not interested in someone <a href="https://wptavern.com/adopt-me-plugin-tag-is-now-in-use-on-wordpress-org">adopting my plugin</a> and wanted it removed from the directory, I&#8217;d do so by pushing out one last update.</p>
<p>I&#8217;d explain in the plugin&#8217;s description and changelog that support and updates would no longer occur and that users should seek alternatives. I might even suggest a few that come to mind. Then, after about a month, I&#8217;d submit a request to the plugin review team to permanently remove it.</p>
<p>This would give users a heads up and plenty of time to seek out an alternative. The Post Template plugin is a good example of this idea in action. Here is the notice it displayed on all of its settings pages before it disappeared.</p>
<blockquote><p><strong>Since version 4.0.0, the plugin has been released under a commercial license. New features such as addition of custom fields to the templates have been added. Furthermore, this version is discontinued, which means that no further bug fixes, new features and compatibility fixes for new WordPress versions will be implemented. If you want to buy the latest version of Post Template, please visit the plugin web page.</strong></p></blockquote>
<p>By notifying users ahead of time, the responsibility shifts to the user to find an alternative.</p>
<p><a href="https://wordpress.org/support/topic/plugin-is-missing-on-the-wordpress-org-directory/page/2/#post-8726059">Simpon </a>said he&#8217;ll work to get the plugin re-listed but it may take some time as he&#8217;s swamped with work. At the time of publishing, <a href="https://wordpress.org/plugins/contact-form-7-to-database-extension/">the plugin</a> is not available on WordPress.org.</p>
<h2>An Unfortunate Situation for Users of Contact Form DB</h2>
<p>While <a href="https://wordpress.org/support/topic/plugin-is-missing-on-the-wordpress-org-directory/page/2/">users sympathized</a> with Simpson over his decision, I think it&#8217;s partly irresponsible. If a plugin has a security vulnerability, patching it and making it available as soon as possible should take precedence over how one feels about a situation.</p>
<p>Instead of putting aside differences and pushing out an update to patch a security vulnerability, Simpson chose to move the plugin and the patched version to GitHub. The decision not to work with the plugin review team has put thousands of sites at risk with no easy way for users to update.</p>
<p>Hopefully, Simpson will work with the team to get a patched version of Contact Form DB back onto the directory as soon as possible. Until then, if you use Contact Form DB, please <a href="https://github.com/mdsimpson/contact-form-7-to-database-extension/releases/tag/v2.10.30">update to 2.10.30</a> manually as it patches the security vulnerability.</p>
<div id="epoch-width-sniffer"></div>";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, 17 Feb 2017 08:52:15 +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: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:87:"WPTavern: WPWeekly Episode 263 – Plugins Disappearing, WordCamp Miami, and OSTraining";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:58:"https://wptavern.com?p=66103&preview=true&preview_id=66103";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:92:"https://wptavern.com/wpweekly-episode-263-plugins-disappearing-wordcamp-miami-and-ostraining";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:3129:"<p>In this episode, <a href="http://marcuscouch.com/">Marcus Couch</a> and I discuss the news making headlines including, WordCamp Miami in its 9th year, OSTraining partnering with GoDaddy to release training videos, and why plugins sometimes disappear from the WordPress plugin directory. We also provide an update on the REST API vulnerability that is actively being exploited to deface webpages.</p>
<h2>Stories Discussed:</h2>
<p><a href="https://wptavern.com/wordpress-rest-api-vulnerability-exploits-continue">WordPress REST API Vulnerability Exploits Continue</a><br />
<a href="https://wptavern.com/google-changes-the-wording-of-its-wordpress-update-notifications">Google Webmaster Tools Fixes Confusing Messages About Updating WordPress</a><br />
<a href="https://wptavern.com/wordcamp-miami-2017-to-host-javascript-track-ama-spots-and-2-day-kids-camp">WordCamp Miami 2017 to Host JavaScript Track, AMA Spots, and 2-Day Kids’ Camp</a><br />
<a href="https://wptavern.com/ostraining-partners-with-godaddy-to-launch-free-wordpress-beginner-course-on-youtube">OSTraining Partners with GoDaddy to Launch Free WordPress Beginner Course on YouTube</a><br />
<a href="https://wptavern.com/why-plugins-sometimes-disappear-from-the-wordpress-plugin-directory">Why Plugins Sometimes Disappear From the WordPress Plugin Directory</a></p>
<h2>Plugins Picked By Marcus:</h2>
<p><a href="https://wordpress.org/plugins/mobile-featured-image/">Mobile Featured Image</a> allows users to add a featured image specifically for mobile devices. The new image can be a resized version of your featured image or an entirely new image targeted especially at mobile viewers.</p>
<p><a href="https://wordpress.org/plugins/fb-messenger-bot/">FB Messenger Bot for WooCommerce</a> automatically messages clients from your Facebook page, WooCommerce, or Gravity Forms. The plugin creates a &#8216;send to Facebook&#8217; button at the end of the WooCommerce Sales process or on the Gravity Forms thank you page.</p>
<p><a href="https://wordpress.org/plugins/restrict-new-users-by-domain/">Restrict New Users by Domain </a>makes it easy to whitelist or blacklist email domains that new users can use when registering. If using the whitelist, only new users who enter an email domain on the whitelist will be allowed to create an account. If using the blacklist, a user who enters an email domain on the blacklist will be unable to register.</p>
<h2>WPWeekly Meta:</h2>
<p><strong>Next Episode:</strong> Wednesday, February 22nd 3:00 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="https://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 #263:</strong><br />
</p>
<div id="epoch-width-sniffer"></div>";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, 16 Feb 2017 23:01: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:"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: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:31:"Post Status: LoopConf in 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:58:"https://poststatus.com/?post_type=poststatus_notes&p=33889";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:32:"https://poststatus.com/loopconf/";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:46039:"<p><a href="https://loopconf.com/">LoopConf</a> is a developer centric conference, and LoopConf &#8220;2.1&#8221; took place in Salt Lake City in early February. This second iteration of the event was a great one, with informative, diverse talks, a laid back atmosphere, and it was very well organized &#8212; which is especially impressive considering the challenges that mother nature caused. As an added bonus, you can now <a href="https://www.youtube.com/playlist?list=PLod7ww284cBH0DZshlVXRR5XtpaIZXfTF">watch all the talks for free</a>.</p>
<p>Originally planned for Miami last year, LoopConf was postponed due to a hurricane in southern Florida &#8212; hence the &#8220;.1&#8221; above &#8212; and rescheduled closer to organizer Ryan Sullivan&#8217;s home in Salt Lake City. Despite the postponement, most attendees were still able to make it, and some folks (like me) could only go to the newly scheduled event.</p>
<p>Salt Lake City was unseasonably warm, making it a pleasant few days, mixed with great food and company. It was also a pleasure to be able to meet more people from local companies, including the newly minted BlueHost and MOJO headquarters downtown.</p>
<p>Post Status was at LoopConf as a media partner, and <a href="https://poststatus.com/profiles/brian-richards/">Brian Richards</a> and I took a lot of pictures, as well as several video interviews.</p>
<h3>What to know about LoopConf</h3>
<p>In our first video interview, Ryan talked about the origins of LoopConf, and described what he hoped attendees would get out of the event:</p>
<p></p>
<p>I hope to see a future LoopConf 3, and I think the venue and atmosphere worked really well in Salt Lake City.</p>
<h3>A small sampling of valuable talks</h3>
<p>There were many great talks. I didn&#8217;t attend them all, as I was working on other stuff for much of the two days, but the feedback was pretty universally positive, and every talk I did attend, I found valuable.</p>
<h4>The competitive landscape for WordPress</h4>
<p><img /></p>
<p>The first day kicked off with a great talk by Pantheon co-founder Josh Koenig, who spoke on the <a href="https://youtu.be/BsKkFf4vDyw?list=PLod7ww284cBH0DZshlVXRR5XtpaIZXfTF">competitive landscape for WordPress</a>, including opportunities and risks. It was a really excellent start to the event.</p>
<h4>Empathetic communication</h4>
<p><img /></p>
<p>I met Sharon Steed prior to her talk, and she spoke about <a href="https://www.youtube.com/watch?v=Ke9hfBKebxc">empathetic communication</a>. And due to her own journey as a communicator, going through life with a stutter, it has impacted how she thinks about communication and how she advises her clients.</p>
<p>There were two quotes I loved: &#8220;Technology cannot replace the social aspect of face-to-face communication.&#8221; And, &#8220;Silence kills collaboration.&#8221; I think greater empathy in our ecosystem and society in general is pivotal.</p>
<h3>Put an &#8220;S&#8221; on it</h3>
<p><img /></p>
<p>I don&#8217;t know anyone who knows more about HTTPS than Zack Tollman, who directed the effort to make WIRED&#8217;s website fully HTTPS. They learned many lessons, and he <a href="https://youtu.be/McAzEj2iXaA?list=PLod7ww284cBH0DZshlVXRR5XtpaIZXfTF">shares them in his outstanding talk</a>.</p>
<h4>Bootstrapping a WordPress business</h4>
<p><img /></p>
<p>The <a href="https://poststatus.com/jason-cohen-wp-engine-founder/">most recent podcast</a> episode featured a video interview and extended audio interview with <a href="https://wpengine.com">WP Engine</a> founder and LoopConf keynote speaker Jason Cohen, which I highly recommend you check out. Jason is full of knowledge, and my interview with him pairs well with his keynote talk.</p>
<p>Jason&#8217;s talk will certainly get you thinking about whether you should raise your prices, that&#8217;s for sure.</p>
<h4>Watch them all!</h4>
<p>Don&#8217;t take my word for which talks to see. I just feature these because I got a lot out of them in the moment. However, in general I found this lineup to be one of the most proficient groups of speakers I&#8217;ve seen yet at a WordPress event.</p>
<p>Check out <a href="https://www.youtube.com/playlist?list=PLod7ww284cBH0DZshlVXRR5XtpaIZXfTF">the whole playlist</a>.</p>
<h3>Pictures</h3>
<p>Here are pictures from the three days of workshops and talks.</p>

<a href="https://poststatus.com/loopconf/loopconf2-0004/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0004-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0008/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0008-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0011/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0011-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0017/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0017-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0018/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0018-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0019/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0019-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0021/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0021-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0028/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0028-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0033/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0033-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0036/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0036-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0039/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0039-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0051/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0051-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0052/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0052-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0053/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0053-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0056/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0056-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0057/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0057-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0062/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0062-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0063/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0063-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0068/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0068-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0075/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0075-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0077/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0077-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0079/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0079-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0086/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0086-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0087/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0087-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0088/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0088-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0091/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0091-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0115/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0115-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0129/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0129-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0135/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0135-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0136/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0136-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0146/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0146-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-0149/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-0149-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1735/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1735-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1746/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1746-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1757/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1757-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1775/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1775-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1778/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1778-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1795/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1795-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1808/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1808-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1809/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1809-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1812/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1812-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1818/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1818-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1819/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1819-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1824/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1824-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1826/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1826-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1831/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1831-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1836/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1836-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1841/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1841-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1854/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1854-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1856/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1856-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1862/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1862-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1868/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1868-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1894/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1894-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1897/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1897-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1911/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1911-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1921/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1921-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1928/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1928-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1936/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1936-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1937/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1937-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1954/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1954-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1968/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1968-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1978/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1978-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1979/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1979-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1983/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1983-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1986/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1986-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1991/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1991-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-1996/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-1996-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2005/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2005-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2015/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2015-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2030/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2030-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2042/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2042-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2043/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2043-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2049/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2049-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2062/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2062-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2079/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2079-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2080/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2080-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2093/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2093-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2103/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2103-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2106/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2106-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2119/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2119-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2151/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2151-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2163/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2163-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2172/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2172-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2180/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2180-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2194/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2194-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2215/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2215-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2240/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2240-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2253/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2253-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2290/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2290-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2291/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2291-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2293/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2293-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2311/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2311-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2330/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2330-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2334/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2334-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2370/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2370-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2377/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2377-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2380/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2380-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2390/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2390-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2413/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2413-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2447/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2447-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2466/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2466-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2487/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2487-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2511/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2511-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2515/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2515-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2517/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2517-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2521/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2521-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2528/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2528-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2531/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2531-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2532/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2532-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2533/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2533-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2536/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2536-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2538/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2538-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2541/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2541-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2542/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2542-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2546/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2546-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2561/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2561-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2570/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2570-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2590/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2590-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2597/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2597-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2599/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2599-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2615/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2615-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2617/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2617-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-2652/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-2652-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9825/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9825-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9826/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9826-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9828/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9828-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9830/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9830-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9831/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9831-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9833/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9833-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9835/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9835-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9837/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9837-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9839/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9839-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9846/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9846-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9848/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9848-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9850/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9850-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9851/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9851-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9859/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9859-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9863/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9863-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9866/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9866-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9868/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9868-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9876/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9876-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9879/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9879-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9885/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9885-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9887/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9887-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9888/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9888-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9892/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9892-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9895/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9895-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9904/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9904-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9905/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9905-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9911/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9911-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9914/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9914-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9929/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9929-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9933/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9933-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9940/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9940-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9941/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9941-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9949/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9949-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9953/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9953-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9956/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9956-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9960/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9960-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9962/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9962-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9965/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9965-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9967/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9967-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9969/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9969-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9970/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9970-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9971/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9971-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9976/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9976-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9993/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9993-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9986/"><img width="100" height="150" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9986-100x150.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>
<a href="https://poststatus.com/loopconf/loopconf2-9981/"><img width="150" height="100" src="https://cdn.poststatus.com/wp-content/uploads/2017/02/loopconf2-9981-150x100.jpg" class="attachment-thumbnail size-thumbnail" alt="" /></a>

<p>You are welcome to use these pictures however you wish. If you&#8217;d like to credit Brian Richards or myself, or Post Status, we&#8217;d appreciate it &#8212; but it&#8217;s not required. Pictures he took show Canon 6D in the meta description, and pictures I took show Canon 70D in the description.</p>
<h3>More interviews from LoopConf</h3>
<p>I&#8217;ll have more interviews from LoopConf over the coming days and weeks. I chatted with several core contributors and developers about specific experiences they&#8217;ve had with WordPress. Keep an eye out for those!</p>
<h3>A fun, niche event with a lot of value</h3>
<p>LoopConf was pretty laid back, and did a lot of things really well.</p>
<p>For one, I&#8217;m super jealous of how quickly they got the videos uploaded, and they&#8217;ve generously made them available for free for everyone. Also, there were no noticeable event hiccups, and the team was always available to help with whatever attendees may need.</p>
<p>The venue itself was really nice, as you can hopefully see in the pictures, and the whole place was laid out in a way that made both the talks and the hallway track highly accessible. And sponsors were in the center of the whole event, which was great.</p>
<p>I found that the size of the event (I&#8217;d guess around 200 people) made it so that conversations were easy to have, and we were able to go in-depth. And because everything from breakfast to dinner to the after party were at the venue, it made everything super convenient.</p>
<p>If and when there&#8217;s a LoopConf 3, you should go! I&#8217;ve also found this general theme to be true at other niche WordPress events &#8212; including <a href="https://adayofrest.hm">A Day of REST</a> (specific to the REST API in WordPress, which you should go to next month!) and <a href="https://pressnomics.com">PressNomics</a> (a WordPress business event, which you should go to in April!), and even my own <a href="https://poststatus.com/publish">Publish</a> event (which may have a second iteration later this year).</p>
<p>To learn more about LoopConf, <a href="https://loopconf.com/">check out the website</a>. And definitely take advantage of all of those <a href="https://www.youtube.com/playlist?list=PLod7ww284cBH0DZshlVXRR5XtpaIZXfTF">free videos</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:"Thu, 16 Feb 2017 20:00:13 +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: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:125:"WPTavern: Matt Mullenweg Responds to Security Rant: Digital Signatures for WordPress Updates Are Important but Not a Priority";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:29:"https://wptavern.com/?p=66076";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:135:"https://wptavern.com/matt-mullenweg-responds-to-security-rant-digital-signatures-for-wordpress-updates-are-important-but-not-a-priority";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:8422:"<p>Scott Arciszewski, Chief Development Officer for Paragon Initiative Enterprises, who is most widely known for his <a href="https://paragonie.com/blog/2017/02/cryptographically-secure-php-development">cryptography engineering work</a>, published a post on Medium criticizing Matt Mullenweg, co-creator of the WordPress open-source software project, for not caring enough about security. Arciszewski has since retracted the post but you can <a href="http://web.archive.org/web/20170214062414/https://medium.com/@CiPHPerCoder/stopmullware-on-the-security-of-27-of-the-websites-on-the-internet-298a7e5b6871">read it</a> via the Wayback Machine.</p>
<p>Arciszewski is working on a project known as <a href="https://download.libsodium.org/doc/">libsodium</a>, a core extension to PHP 7.2 which allows for encryption, decryption, signatures, password hashing and more. Its goal is to enable developers to build higher-level cryptographic tools.</p>
<p>WordPress&#8217; automatic update system is handled through api.wordpress.org. Since updates do not have a digital signature, if api.wordpress.org were compromised, attackers could send malicious updates to thousands or millions of sites. This scenario was at the forefront of people&#8217;s minds late last year after Wordfence <a href="https://www.wordfence.com/blog/2016/11/hacking-27-web-via-wordpress-auto-update/">published details</a> of a complex security vulnerability that could have compromised the update servers.</p>
<p>Arciszewski suggests offline code signing and elliptic curve cryptography as solutions, &#8220;The key that can produce a valid signature for a file isn’t stored on the server (only the file itself and a valid signature are), so even if the server gets hacked, attackers can’t just add trojan horse malware to the file,&#8221; he said.</p>
<p><a href="http://php.net/manual/en/book.openssl.php">OpenSSL</a> is an extension of PHP and is commonly used as public-key cryptography but it only supports RSA which Arciszewski deems inadequate. Since WordPress is written in PHP and supports versions 5.2-7+, Arciszewski needed to create a solution that was as compatible. This inspired him to create <a href="http://web.archive.org/web/20170214062414/https://github.com/paragonie/sodium_compat">sodium_compat</a> that adds <a href="https://ed25519.cr.yp.to/">Ed25519 signature verification</a> to WordPress&#8217; automatic updater.</p>
<p>Arciszewski submitted a number of patches to WordPress but was told by Dion Hulse, WordPress core developer, that the sodium_compat library could not be merged into core until it passed a security audit by a third-party. Audits can cost a lot of money so Arciszewski&#8217;s plan was to see if Automattic could take on some of the cost or crowd-source the funds. However, his project was put on hold after Mullenweg informed Hulse to stop working on the feature as it&#8217;s not related to the three core focus areas of the Editor, Customizer, and the REST API.</p>
<p>Arciszewski described the decision as irresponsible and that every user has a reason to be alarmed, &#8220;The WordPress team has shown that they are not responsible enough to govern their impressive ownership of the Internet (with the exception of some folks powerless to correct the organization’s course),&#8221; he said. &#8220;This act of negligence <em class="markup--em markup--p-em">will</em> put the rest of the web in harm’s way.&#8221;</p>
<h2>Update Signing is Important but Not a Priority</h2>
<p>Mullenweg <a href="https://medium.com/@photomatt/wordpress-and-update-signing-51501213e1">responded to the post</a> on Medium.com with one of his own and reiterated the WordPress development team&#8217;s commitment to security.</p>
<p>&#8220;Everyone involved takes their responsibility very seriously, and the growth of WordPress has meant many thoughtful, hard-working people have gotten involved and think of the security of WP sites holistically, from every angle,&#8221; he said.</p>
<p>Mullenweg also clarified what attacks would be stopped by implementing digital signatures to WordPress updates.</p>
<p>&#8220;It could stop a man in the middle attack, where someone modifies the update files on the network in between your blog and WordPress.org, or it could stop a situation where the part of .org that serves the update is compromised but the signing part isn’t, and someone decided to send out updates even though they know they’ll be rejected,&#8221; he said.</p>
<p>The team is unaware of any WordPress sites that have been attacked this way. While the possibility exists, the extent of the damage would likely be limited. The update servers are monitored around the clock and since many large webhosting companies automatically scan their customer&#8217;s sites for malware, the malicious update would likely be discovered quickly.</p>
<p>Mullenweg describes what would happen if an update server was compromised.</p>
<p>&#8220;We would turn it off really quickly, notify the world there was an issue, fix the problem, turn it back on, and notify the specific sites or hosts as able,&#8221; he said. Although WordPress <a href="https://w3techs.com/technologies/details/cm-wordpress/all/all">powers 27.5%</a> of the top 10 million sites tracked by Alexa, it&#8217;s highly unlikely that number of sites would be compromised.</p>
<p>He goes on to say that there are easier ways to compromise a WordPress site and listed the biggest issues to WordPress security based on impact.</p>
<ol class="postList">
<li id="6e1f" class="graf graf--li graf-after--p">Sites not updating core.</li>
<li id="8121" class="graf graf--li graf-after--li">Sites not updating plugins.</li>
<li id="9cf6" class="graf graf--li graf-after--li">Sites not updating themes.</li>
<li id="0f5b" class="graf graf--li graf-after--li">Weak passwords, without brute-force protection or two-factor authentication.</li>
<li id="9601" class="graf graf--li graf-after--li">Hosts (professional or ad-hoc) not scanning and fixing sites.</li>
<li id="3b2e" class="graf graf--li graf-after--li">Hypothetical issues not seen in practice, which distract from the above existing priorities.</li>
</ol>
<p>Mullenweg confirms that he offered to donate to the audit of sodium_compat a day before Arciszewski published his post. Even if the library passed an audit, the code couldn&#8217;t immediately be added to core, &#8220;You would also need to do some significant work on the server-side to isolate the signing from the update server, so it’s worthwhile in the first place,&#8221; he said.</p>
<p>And if the code were added to core, only the sites that updated to the version that has the cryptographic library and the update checking would be able to take advantage of it. WordPress.org would still need to send updates to older versions that don&#8217;t have update checking. These sites would still be vulnerable to receiving a malicious update.</p>
<p>Mullenweg says that digital signatures and update signing will end up in WordPress eventually but it&#8217;s not a priority as there are other security issues in front of it, &#8220;We are prioritizing those issues above a nice-to-have, defense in-depth effort,&#8221; he said.</p>
<p>&#8220;A good approach would be to build the server-side first, because doing that properly, say with an <a href="https://en.wikipedia.org/wiki/Hardware_security_module">HSM</a>, is the difficult and important part; then get the packages signed; then test out verification in a plugin because we don’t want to break auto-updates; and then finally merge into core and set the client to reject non-signed updates. On the client side we need to pick a cryptography library, and get it audited.&#8221;</p>
<p>Mullenweg ended his post explaining why he published his response on Medium instead of his <a href="http://ma.tt">personal site</a>. &#8220;Seems to be the most popular place for rants like this. I also wanted to try out the famous Medium editor,&#8221; he said.</p>
<h2>What&#8217;s Next For sodium_compat</h2>
<p>While the prospects don&#8217;t look good for his library being added to WordPress in 2017, Arciszewski says there are plenty of other PHP projects that could benefit from it, &#8220;For their sake, I’m still strongly inclined to pursue an independent third-party cryptography audit, and attempt to crowd-fund the cost,&#8221; he said.</p>
<div id="epoch-width-sniffer"></div>";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, 15 Feb 2017 23:48:41 +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: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:49:"BuddyPress: BuddyPress 2.8.0 – “San Matteo”";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:32:"https://buddypress.org/?p=263791";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:59:"https://buddypress.org/2017/02/buddypress-2-8-0-san-matteo/";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:8634:"<p>BuddyPress 2.8.0 &#8220;San Matteo&#8221; is now available for download from the WordPress.org plugin repository, or right from your WordPress Dashboard. &#8220;San Matteo&#8221; focuses on various improvement for developers, site builders and site managers.</p>
<h2 class="headline-title">For Developers &amp; Site Builders</h2>
<h3 class="headline-title">Modernizing the Codebase</h3>
<p>To continue the migration of legacy code to modern standards and techniques necessary for the <code>BP REST API</code> project and other new features moving forward, <a href="https://codex.buddypress.org/getting-started/buddypress-2-8-will-require-php-5-3/">BuddyPress 2.8 requires at least PHP 5.3</a>. This will allow us to build better, robust, and secure code, benefiting developers and users now and in the future.</p>
<h3 class="feature-title">More helpful &#8220;Activate Pending Accounts&#8221; screen</h3>
<p><img class="size-full wp-image-263800 aligncenter" src="https://buddypress.org/wp-content/uploads/1/2017/02/pending-accounts.png" alt="" width="800" height="500" /></p>
<p>When you click on the username on the &#8220;Users &gt; Manage Signups&#8221; page, you can now view profile data entered by the user at the time of registration.</p>
<h3 class="feature-title">Support for <code>List-Unsubscribe</code> header in emails</h3>
<p><img class="size-full wp-image-263802 aligncenter" src="https://buddypress.org/wp-content/uploads/1/2017/02/list-unsubscribe.png" alt="" width="800" height="500" /></p>
<p>Allow users to unsubscribe from BuddyPress email notifications in some email clients such as Gmail (web), when properly configured.</p>
<h3 class="feature-title">Twenty Seventeen Companion Style sheet</h3>
<p><img class="size-full wp-image-263803 aligncenter" src="https://buddypress.org/wp-content/uploads/1/2017/02/twenty-seventeen.png" alt="" width="800" height="500" /></p>
<p>BuddyPress looks great in WordPress&#8217;s latest default theme with the new Twenty Seventeen companion style sheet.</p>
<p>To change the default two-column page layout to a full-width layout as seen in the image, add the <a href="https://codex.buddypress.org/themes/bp-theme-compatibility-and-the-wordpress-default-themes/twenty-seventeen-theme/">following code</a> to the <code>functions.php</code> file of your Twenty Seventeen child theme.</p>
<h4 class="feature-title">More hooks for Messages</h4>
<p>We&#8217;ve added new filters and actions for different methods throughout the Messages component.</p>
<h4 class="feature-title">A more flexible Group search</h4>
<p>The new <code>search_column</code> parameter allows developers to specify which columns should be matched, as well as where wildcard characters should be placed, when searching via <code>BP_Groups_Group::get()</code>.</p>
<h4 class="feature-title">Alphabetical sorting for Groups widget</h4>
<p>The groups widget can now be sorted alphabetically, in addition to sorting the results by recently active, popular, and newest groups.</p>
<h4 class="feature-title">Enable choice of <code>PHPMailer</code></h4>
<p>Developers can specify which <code>PHPMailer</code> should be used when sending BuddyPress with a new filter.</p>
<h4 class="title">Localization Improvements</h4>
<p>We continue to improve our localization internals, making it easier for translation editors to ensure that BuddyPress will be available for everyone in their own language.</p>
<h4 class="title">Developer Reference</h4>
<p>Regular updates to inline code documentation make it easier for developers to understand how BuddyPress works.</p>
<h4 class="title">Accessibility Upgrades</h4>
<p>Continued improvements for universal access help make BuddyPress back- and front-end screens usable for everyone (and on more devices).</p>
<p><strong>…and much more!</strong></p>
<p>Read about all the bug fixes and feature enhancements introduced in BuddyPress 2.8.0 at our <a href="https://codex.buddypress.org/releases/version-2-8-0/">official 2.8.0 changelog</a>.</p>
<p><strong>Thank You to Our Contributors</strong></p>
<p>Many, many thanks to all those who contributed during this development cycle. This is a volunteer-run project, and these contributors freely gave of their time and expertise to make BuddyPress better than ever:</p>
<p><a href="https://profiles.wordpress.org/dontdream/">Andrea Tarantini (dontdream)</a>, <a href="https://profiles.wordpress.org/ankit-k-gupta/">Ankit K Gupta (ankit-k-gupta)</a>, <a href="https://profiles.wordpress.org/angeljs/">angeljs</a>, <a href="https://profiles.wordpress.org/boonebgorges/">Boone B Gorges (boonebgorges)</a>, <a href="https://profiles.wordpress.org/thebrandonallen/">Brandon Allen (thebrandonallen)</a>, <a href="https://profiles.wordpress.org/bhargavbhandari90/">Bunty (bhargavbhandari90)</a>,<a href="https://profiles.wordpress.org/ketuchetan/">chetansatasiya (ketuchetan)</a>, <a href="https://profiles.wordpress.org/chiragpatel/">Chirag Patel (chiragpatel)</a>, <a href="https://profiles.wordpress.org/danbp/">danbp</a>, <a href="https://profiles.wordpress.org/dcavins/">David Cavins (dcavins)</a>, <a href="https://profiles.wordpress.org/wpdennis/">Dennis (wpdennis)</a>, <a href="https://profiles.wordpress.org/Dianakc/">Diana K. Cury (Dianakc)</a>, <a href="https://profiles.wordpress.org/finzend/">finzend</a>, <a href="https://profiles.wordpress.org/hnla/">Hugo (hnla)</a>,<a href="https://profiles.wordpress.org/jdgrimes/">J.D. Grimes (jdgrimes)</a>, <a href="https://profiles.wordpress.org/johnjamesjacoby/">John James Jacoby (johnjamesjacoby)</a>, <a href="https://profiles.wordpress.org/jonas-lundman/">Jonas Lundman (jonas-lundman)</a>, <a href="https://profiles.wordpress.org/jonieske/">jonieske</a>, <a href="https://profiles.wordpress.org/jreeve/">jreeve</a>, <a href="https://profiles.wordpress.org/lakrisgubben/">lakrisgubben</a>, <a href="https://profiles.wordpress.org/Offereins">Laurens Offereins (Offereins)</a>, <a href="https://profiles.wordpress.org/lgreenwoo/">lgreenwoo</a>,<a href="https://profiles.wordpress.org/maccast/">maccast</a>, <a href="https://profiles.wordpress.org/imath/">Mathieu Viet (imath)</a>, <a href="https://profiles.wordpress.org/mchansy/">mchansy</a>, <a href="https://profiles.wordpress.org/mercime/">mercime</a>, <a href="https://profiles.wordpress.org/tw2113/">Michael Beckwith (tw2113)</a>, <a href="https://profiles.wordpress.org/modemlooper/">modemlooper</a>, <a href="https://profiles.wordpress.org/m_uysl/">Mustafa Uysal (m_uysl)</a>, <a href="https://profiles.wordpress.org/nickmomrik/">Nick Momrik (nickmomrik)</a>, <a href="https://profiles.wordpress.org/DJPaul/">Paul Gibbs (DJPaul)</a>,<a href="https://profiles.wordpress.org/pareshradadiya/">paresh.radadiya (pareshradadiya)</a>, <a href="https://profiles.wordpress.org/petya/">Petya Raykovska</a>, <a href="https://profiles.wordpress.org/r-a-y/">r-a-y</a>, <a href="https://profiles.wordpress.org/rekmla/">rekmla</a>, <a href="https://profiles.wordpress.org/espellcaste/">Renato Alves (espellcaste)</a>, <a href="https://profiles.wordpress.org/rogercoathup/">Roger Coathup (rogercoathup)</a>, <a href="https://profiles.wordpress.org/DarkWolf/">Salvatore (DarkWolf)</a>,<a href="https://profiles.wordpress.org/sanket.parmar/">Sanket Parmar (sanket.parmar)</a>, <a href="https://profiles.wordpress.org/slaffik/">Slava Abakumov (slaffik)</a>, <a href="https://profiles.wordpress.org/stagger-lee/">Stagger Lee (stagger-lee)</a>, <a href="https://profiles.wordpress.org/netweb/">Stephen Edgar (netweb)</a>, <a href="https://profiles.wordpress.org/mahype/">Sven Wagener (mahype)</a>, <a href="https://profiles.wordpress.org/wordpressrene/">wordpressrene</a>.</p>
<h2>PanuozzoPress</h2>
<p>BuddyPress 2.8 is called &#8220;San Matteo&#8221; after <a href="http://www.sanmatteopanuozzo.com/">a great pizza restaurant</a> in New York City. San Matteo specializes in the &#8220;panuozzo&#8221;, a pizza-sandwich hybrid native to Salerno, Italy. The proprietor of San Matteo is a friendly fellow who insists on speaking Italian even to customers who don&#8217;t understand a word of it. If you find yourself in the neighborhood, be sure to stop by for a great pizza.</p>
<h2>Time to Go Get 2.8.0!</h2>
<p>Grab BuddyPress 2.8.0 &#8220;San Matteo&#8221; from the <a href="https://wordpress.org/plugins/buddypress/">wordpress.org plugin repository</a>, or right from your WordPress Dashboard.</p>
<p><strong>Questions, comments, feature requests, or bug reports?</strong> Please use our <a href="https://buddypress.org/support/">support forums</a> or our <a href="https://buddypress.trac.wordpress.org/">development tracker</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:"Wed, 15 Feb 2017 22:38:53 +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:14:"Slava Abakumov";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:38:"HeroPress: Not every hero wears a cape";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:56:"https://heropress.com/?post_type=heropress-essays&p=1605";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:55:"https://heropress.com/essays/not-every-hero-wears-cape/";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:8188:"<img width="960" height="480" src="http://20094-presscdn.pagely.netdna-cdn.com/wp-content/uploads/2017/02/021517-1024x512.jpg" class="attachment-large size-large wp-post-image" alt="Pull Quote: Sometimes the biggest heroes are the people who notice that someone else feels out of place, extend their hand, and welcome them in." /><h3>I almost didn’t go to my first WordCamp</h3>
<p>I started working with WordPress in 2010. A client requested I use WordPress and a Revolution theme they’d purchased to build their new site. When I was done, I submitted it to the theme showcase, and Brian Gardner reached out to tell me how much he’d liked it.</p>
<p>I continued working with Brian and his themes as Revolution became Revolution 2, and then StudioPress and Genesis. That led to me designing and developing Family Tree, one of the first commercial themes targeted at women entrepreneurs. It was released in May of 2011.</p>
<p>Right around the release of my first theme, Brian asked if I was going to be at WordCamp San Francisco. There was going to be a Genesis Connect event there, and he wanted me to be there. I really wanted to go, but didn’t know how I was going to pull it off.</p>
<p>See, after a years long struggle I had recently been diagnosed with bipolar disorder.</p>
<blockquote><p>I was trying to rebuild my design career with WordPress, but I was really struggling.</p></blockquote>
<p>I felt like flying to San Francisco to see my internet friends was a luxury I couldn’t afford.</p>
<p>But when I mentioned it to my wife, she told me we’d find a way. She started hitting travel sites and found a cheap airline ticket. Then she went on AirBnB and booked me a couch in the lobby of an art gallery in the Tenderloin&#8211;it was the cheapest thing we could find. I left on August 11, 2011, three days before my 40th birthday.</p>
<h3>My first day of WordCamp SF was a nightmare</h3>
<p>I have pretty severe social anxiety, so my plan was to maintain a low profile and keep to myself until I could meet up with some of my Genesis friends. About 20 minutes into the first talk I went to I was totally lost, so I thought I’d sneak out and hit lunch early. It seemed like a solid plan.</p>
<p>My foot had fallen asleep during the presentation, though, and as I stood up to sneak out my ankle buckled and I fell. Every head in the auditorium whipped around to stare at me slowly rolling down the aisle. It was painfully obvious to me that not only did I not belong, but I had just made a very public ass of myself and was mortified.</p>
<h3>Then the WordPress Community stepped in</h3>
<p>There was already a huge crowd in the courtyard when I managed to slink out of the auditorium. I felt like someone had dropped me back into my junior high cafeteria. I stood in the massive line, wanting nothing more than to find a quiet corner to nurse my wounded pride, call my wife, maybe cry a little, and tell her that coming had been a huge waste of time and money.</p>
<blockquote><p>If that’s how my day had panned out, my WordPress story might have been a lot different. Instead, I ran into my first ambassador of the WordPress community.</p></blockquote>
<p>This kind of goofy guy in front of me started chatting me up.</p>
<p>I told him it was my first WordCamp. He asked me where I was from, and we discovered we lived maybe an hour away from each other: me in San Diego, him in Orange County. He invited me to eat lunch with his group. And that’s how I wound up sitting at a table eating lunch with Steve Zehngut and his crew.</p>
<p>These people were more like me: marketers and designers, theme authors and SEO specialists, food bloggers and digital nomads. I started to feel like I might belong there, after all. The phone call I made to my wife after lunch was about how much fun I was having, and how many cool people I was meeting.</p>
<p>Later that day I went to dinner with the crew from Genesis and met even more amazing people I’d only known online. After that, there was a huge Genesis Connect happy hour. The more people I met and talked to, the more friends I made. On Sunday, before one of the final presentations, an auditorium of my new friends sang “Happy Birthday” to me. (I won’t lie&#8211;it was cool but also almost as embarrassing as falling down the first day, lol!)</p>
<h3>One person can make a difference</h3>
<p>If Steve hadn’t asked me to eat lunch with his group that day, I might have never gone to another WordCamp. Instead, when WordCamp San Diego 2012 came around Dre Armeda encouraged me to submit a speaker application, and I gave my first talk. For six years now I’ve spoken at every local WordCamp that’s accepted my speaker application, trying to inspire other people to get and stay involved in our community.</p>
<p>I spent some time looking at the 2011 WCSF attendees list when I was writing this essay. Some of my best friends (and best WordCamp stories) can be directly linked to that list. Even the people I may not have met at that event came into my life because of that event.</p>
<h3>Six degrees of a lunch invitation</h3>
<p>I don’t remember whether or not I met Alex Vasquez in San Francisco, but he’s one of the people who actually wants an honest answer when he asks how I’ve been. I’m pretty sure I didn’t meet Andy Stratton there, but I eventually travelled to Baltimore to speak at the WordCamp he and Drew Poland organized. I’m positive I didn’t cross paths with Karim Marucchi, but he eventually became my boss, mentor, and go-to puppy picture friend. And those are just the connections from one event that happened 6 years ago.</p>
<blockquote><p>WordCamp San Francisco taught me that being a hero doesn’t have to be a huge, dramatic thing.</p></blockquote>
<p>Sometimes the biggest heroes are the people who notice that someone else feels out of place, extend their hand, and welcome them in. Of all of the lessons I’ve learned in WordPress, that’s the most important one. Thanks, Steve!</p>
<p><em>(P.S. If anyone knows where I can find some adult Superman Underoos in stock, LMK. WordCamp San Diego is coming up at the end of March, and I never got Steve a proper thank you gift.)</em></p>
<div class="rtsocial-container rtsocial-container-align-right rtsocial-horizontal"><div class="rtsocial-twitter-horizontal"><div class="rtsocial-twitter-horizontal-button"><a title="Tweet: Not every hero wears a cape" class="rtsocial-twitter-button" href="https://twitter.com/share?text=Not%20every%20hero%20wears%20a%20cape&via=heropress&url=https%3A%2F%2Fheropress.com%2Fessays%2Fnot-every-hero-wears-cape%2F" rel="nofollow" target="_blank"></a></div></div><div class="rtsocial-fb-horizontal fb-light"><div class="rtsocial-fb-horizontal-button"><a title="Like: Not every hero wears a cape" class="rtsocial-fb-button rtsocial-fb-like-light" href="https://www.facebook.com/sharer.php?u=https%3A%2F%2Fheropress.com%2Fessays%2Fnot-every-hero-wears-cape%2F" rel="nofollow" target="_blank"></a></div></div><div class="rtsocial-linkedin-horizontal"><div class="rtsocial-linkedin-horizontal-button"><a class="rtsocial-linkedin-button" href="https://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fheropress.com%2Fessays%2Fnot-every-hero-wears-cape%2F&title=Not+every+hero+wears+a+cape" rel="nofollow" target="_blank" title="Share: Not every hero wears a cape"></a></div></div><div class="rtsocial-pinterest-horizontal"><div class="rtsocial-pinterest-horizontal-button"><a class="rtsocial-pinterest-button" href="https://pinterest.com/pin/create/button/?url=https://heropress.com/essays/not-every-hero-wears-cape/&media=https://heropress.com/wp-content/uploads/2017/02/021517-150x150.jpg&description=Not every hero wears a cape" rel="nofollow" target="_blank" title="Pin: Not every hero wears a cape"></a></div></div><a rel="nofollow" class="perma-link" href="https://heropress.com/essays/not-every-hero-wears-cape/" title="Not every hero wears a cape"></a></div><p>The post <a rel="nofollow" href="https://heropress.com/essays/not-every-hero-wears-cape/">Not every hero wears a cape</a> appeared first on <a rel="nofollow" href="https://heropress.com">HeroPress</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:"Wed, 15 Feb 2017 12:00: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:10:"Chris Ford";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:86:"WPTavern: Open Source Leadership Summit to Live Stream Keynote Sessions February 14-16";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:29:"https://wptavern.com/?p=66058";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:97:"https://wptavern.com/open-source-leadership-summit-to-live-stream-keynote-sessions-february-14-16";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:1865:"<p><a href="https://i2.wp.com/wptavern.com/wp-content/uploads/2017/02/open-source-leadership-summit.png?ssl=1"><img /></a></p>
<p>The Linux Foundation&#8217;s <a href="http://events.linuxfoundation.org/events/open-source-leadership-summit" target="_blank">Open Source Leadership Summit</a> is happening in Lake Tahoe, CA, February 14-16, 2017. The invitation-only event brings together open source technology leaders to collaborate across different projects and share best practices.</p>
<p>The organizers will be live streaming all of the <a href="https://osleadershipsummit2017.sched.com/overview/type/Keynote" target="_blank">keynote sessions</a> for free throughout the three-day event for a total of 17 presentations. A few sample topics and speakers include:</p>
<ul>
<li>State of the Union &#8211; Jim Zemlin, Executive Director of the Linux Foundation</li>
<li>A Conversation with Linus Torvalds (with Jim Zemlin)</li>
<li>State of Blockchain &#8211; Christopher Ferris, CTO of Open Technology, IBM</li>
<li>Security and Privacy in a Hyper-connected World &#8211; Bruce Schneier, Security Expert</li>
<li>Building and Motivating Engineering Teams &#8211; Camille Fournier, Senior Thinker and Raconteur</li>
<li>How Cross-Foundation Collaboration is a Win for Open Source &#8211; Abby Kearns, Executive Director, Cloud Foundry Foundation</li>
</ul>
<p>Anyone who wants to join the keynote sessions via live stream will need to <a href="http://events.linuxfoundation.org/events/open-source-leadership-summit/program/live-video-stream" target="_blank">sign up</a> ahead of the event. The keynotes will be broadcast in Pacific Daylight Time and viewers can return to the signup page to watch live. Viewers are encouraged to use the event&#8217;s official #lfosls hashtag to tweet about the sessions as they are watching.</p>
<div id="epoch-width-sniffer"></div>";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, 14 Feb 2017 06:32:29 +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:77:"WPTavern: Why Plugins Sometimes Disappear From the WordPress Plugin Directory";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:29:"https://wptavern.com/?p=66033";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:"https://wptavern.com/why-plugins-sometimes-disappear-from-the-wordpress-plugin-directory";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:4548:"<p>Nearly 50K publicly available plugins call the <a href="https://wordpress.org/plugins/">WordPress plugin directory</a> home but once in awhile a few of them seem to disappear. There is usually a good reason for why this happens but the only information available to the public is a page that says the plugin cannot be found. If the plugin is popular enough, concerned users will <a href="https://wptavern.com/contact-me">contact us</a> and ask to investigate what happened.</p>
<p><a href="https://profiles.wordpress.org/ipstenu">Mika Epstein</a>, Plugin Directory Representative, says there are a number of reasons for why a plugin can end up hidden from view, &#8220;The most well-known, but not the most common, is security issues,&#8221; Epstein said.</p>
<p>&#8220;Plugins are removed and, by default, hidden mostly because we&#8217;re on bbPress 1.0 and there is not as granular a control with post statuses when compared to WordPress itself.&#8221;</p>
<p>The plugin review team has three options to choose from when altering a plugin&#8217;s visibility, active, closed, and disabled. Although rarely used, when a plugin is disabled, it is hidden from view but updates are able to be pushed out.</p>
<p>I asked Epstein why there&#8217;s not more detailed information when a plugin is hidden and the answer is complex, &#8220;The lack of information is partly technical as bbPress 1.0 is limited and partly because we can&#8217;t all agree on the <em>right</em> way to disclose, when to disclose, and when <em>not</em> to disclose,&#8221; she said.</p>
<p>&#8220;Obviously the last thing we want are people getting hacked, but it presents us with a few options and they all have flaws. We&#8217;ve not been able to determine a way to tell people &#8216;This plugin is gone, don&#8217;t use it&#8217; and &#8216;This plugin is gone, but use it if you want.&#8217; without putting users at risk.&#8221;</p>
<p>Epstein uses WooCommerce and Jetpack as examples, &#8220;Let&#8217;s say I close Jetpack today and tell people &#8216;WordPress decided not to support it anymore.&#8217; But tomorrow I close WooCommerce and tell people &#8216;I can&#8217;t tell you why.&#8217; That means an intelligent person knows that WooCommerce is <em>probably</em> vulnerable.&#8221;</p>
<p>It&#8217;s a conundrum without an easy solution. The team typically closes plugins which makes the plugin&#8217;s page disappear. This has the added benefit of making it more difficult to determine if the plugin ever existed. Then the team contacts and works with the developer directly.</p>
<p>Most closures are done with the knowledge of the plugin author as they are often the ones who request that their plugins be closed.</p>
<h2>The New WordPress Plugin Directory Will Modernize Plugin Administration</h2>
<p><a href="https://wptavern.com/new-wordpress-plugin-directory-now-in-open-beta">Announced</a> at WordCamp Europe 2016, the WordPress plugin directory redesign has been in <a href="https://wordpress.org/plugins-wp/">open beta</a> for about eight months.</p>
<img />WordPress Plugin Directory Redesign
<p>In addition to bringing a fresh new look to plugin pages, the migration away from bbPress to WordPress will help make the plugin review team&#8217;s job easier, &#8220;Like far too many things in Plugin Land, everything depends on modernizing the backend to something that is functional.&#8221; Epstein said.</p>
<p>&#8220;Once the new directory is out and I have some more people trained to do reviews properly, then we&#8217;ll have the bandwidth to sit down and really figure out a <strong>best</strong> solution.</p>
<p>&#8220;A stopgap might be making the page say &#8216;This plugin is no longer available.&#8217; But I&#8217;m personally not sure if that would make FUD better or worse.&#8221;</p>
<p>If you discover that a plugin you rely on has suddenly vanished from the directory, don&#8217;t panic. Depending on the issue, plugins usually reappear within a week unless the author has requested that it be closed.</p>
<p>To learn what&#8217;s involved and how the plugin review team does its job, listen to <a href="https://wptavern.com/wpweekly-episode-231-an-inside-look-at-the-plugin-review-process-with-mika-epstein">episode 231</a> of WordPress Weekly. I also encourage you to read our <a href="https://wptavern.com/behind-the-scenes-in-the-wordpress-plugin-directory-with-mika-epstein">detailed interview</a> with Epstein published in 2014, in which most of the information is still accurate.</p>
<div id="epoch-width-sniffer"></div>";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, 14 Feb 2017 03:37: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:"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: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:60:"WPTavern: WordPress REST API Vulnerability Exploits Continue";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:29:"https://wptavern.com/?p=66011";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:71:"https://wptavern.com/wordpress-rest-api-vulnerability-exploits-continue";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:10607:"<a href="https://i2.wp.com/wptavern.com/wp-content/uploads/2014/04/emergency.jpg?ssl=1"><img /></a>photo credit: <a href="https://flic.kr/p/dLUWMb">Code &#038; Martini</a> by <a href="https://www.flickr.com/photos/ivanavasilj/">Ivana Vasilj</a> &#8211; cc license
<p>It has been nearly two weeks since the WordPress security team <a href="https://make.wordpress.org/core/2017/02/01/disclosure-of-additional-security-fix-in-wordpress-4-7-2/" target="_blank">disclosed</a> an unauthenticated privilege escalation vulnerability in a REST API endpoint in 4.7 and 4.7.1. The vulnerability was patched silently and disclosure was delayed for a week to give WordPress site owners a head start on updating to 4.7.2. Last week <a href="https://wptavern.com/wordpress-rest-api-vulnerability-is-being-actively-exploited-hundreds-of-thousands-of-sites-defaced" target="_blank">hundreds of thousands of vulnerable sites had already been defaced</a> and the damage reports are still rolling in.</p>
<p>Over the weekend the attacks increased and WordPress security firms have seen more attempts blocked by their firewalls. <a href="https://sucuri.net/" target="_blank">Sucuri</a>, the website security firm that reported the vulnerability to WordPress, was tracking the &#8220;Hacked by w4l3XzY3&#8221; campaign last week and estimated 66,000 defacements. That particular campaign has now passed 260,000 pages indexed by Google. It is one of nearly two dozen defacement campaigns targeting the vulnerability.</p>
<p>&#8220;During the past 24 hours we have seen an average growth in defaced pages per campaign of 44%,&#8221; Wordfence CEO Mark Maunder <a href="https://www.wordfence.com/blog/2017/02/rapid-growth-in-rest-api-defacements/" target="_blank">said</a> on Friday. &#8220;The total number of defaced pages for all these campaigns, as indexed by Google has grown from 1,496,020 to 1,893,690. That is a 26% increase in total defaced pages in just 24 hours.&#8221;</p>
<p>Maunder referenced a <a href="https://www.google.com/trends/explore?date=2017-01-01%202017-12-31&q=%22Hacked%20By%20MuhmadEmad%22,%22Hacked%20By%20SA3D%20HaCk3D%22,%22by%20w4l3XzY3%22,%22Hacked%20By%20Imam%22,%22Hacked%20By%20BALA%20SNIPER%22" target="_blank">Google Trends chart</a> which he said demonstrates the success the defacement campaigns have had over the past week. The spike began on the day WordPress disclosed the vulnerability.</p>
<p> &q;</p>
<p>However, White Fir Design, another company that offers security services, <a href="https://www.whitefirdesign.com/blog/2017/02/10/unreliable-claim-that-1-5-million-wordpress-pages-defaced-is-reminder-of-the-terribleness-of-security-companiesjournalists/" target="_blank">disputes Wordfence&#8217;s claims</a> that 1.8 million pages were hacked. The ~2  million pages figure is cited in reports from <a href="http://www.bbc.com/news/technology-38930428" target="_blank">BBC</a>, <a href="http://www.theinquirer.net/inquirer/news/3004423/wordpress-hacking-spree-sees-15-million-web-pages-defaced" target="_blank">The Enquirer</a>, <a href="https://arstechnica.com/security/2017/02/virally-growing-attacks-on-unpatched-wordpress-sites-affects-2m-pages/" target="_blank">Ars Technica</a>, <a href="http://www.cio.com/article/3168761/security/recent-wordpress-vulnerability-used-to-deface-1-5-million-pages.html" target="_blank">CIO.com</a>, and other publications. White Fir Design contends that the hacked pages that have been indexed by Google are not an accurate representation.</p>
<p>Sucuri CTO Daniel Cid also does not fully agree with Wordfence&#8217;s assessment of the situation. After doing some research over the weekend, Sucuri estimates more than 50,000 sites hacked with 20-30 pages per site defaced. This would be roughly a million on the lower end of the estimate and ranges up to 1.5 million.</p>
<p>Sucuri is also starting to see more serious attempts on the REST API vulnerability in the form of <a href="https://blog.sucuri.net/2017/02/rce-attempts-against-the-latest-wordpress-rest-api-vulnerability.html" target="_blank">remote code execution (RCE) attacks</a> on sites using plugins that allow for PHP execution from within posts and pages. One such campaign attempts to inject a PHP include to add content from a compromised site and then inject a backdoor hidden in /wp-content/uploads.</p>
<p>&#8220;Defacements don’t offer economic returns, so that will likely die soon,&#8221; Cid said. &#8220;What will remain are attempts to execute commands (RCE) as it gives the attackers full control of a site – and offers multiple ways to monetize – and SPAM SEO / affiliate link / ad injections. We are starting to see them being attempted on a few sites, and that will likely be the direction this vulnerability will be misused in the coming days, weeks and possibly months.&#8221;</p>
<p>Hackers are targeting any sites that haven&#8217;t updated to 4.7.2 &#8211; there doesn&#8217;t seem to be any pattern among them. A quick look at the Google results for the most active campaigns shows that compromised sites include blogs, media, government, education, sports, medical, and technology websites.</p>
<h3>Why the REST API is Enabled by Default</h3>
<p>The WordPress REST API is enabled by default, as the plan is for more admin and plugin functionality to rely on the REST API in the future. After the recent attacks, several users <a href="https://make.wordpress.org/core/2017/02/01/disclosure-of-additional-security-fix-in-wordpress-4-7-2/#comment-32110" target="_blank">commented</a> on the vulnerability disclosure to ask why it is enabled by default.</p>
<p>&#8220;The security issue is in a feature I do not use on any of my sites (REST API) and yet still, this feature is first enabled by default and second since WordPress 4.7 you even need a plugin – which could introduce further security issues – to disable the feature?&#8221; one user (@helios2121) <a href="https://make.wordpress.org/core/2017/02/01/disclosure-of-additional-security-fix-in-wordpress-4-7-2/#comment-32123" target="_blank">commented</a> on the post. &#8220;Please rethink your approach to security. Make features that not everyone needs opt-in. Or <em>at least</em> give a way to opt out without requiring additional plugins.&#8221;</p>
<p>Morten Rand-Hendriksen opened a trac ticket to discuss <a href="https://core.trac.wordpress.org/ticket/39806#ticket" target="_blank">disabling the REST API by default</a> and only enabling it when the site admin requests it, or a theme or plugin is dependent on it.</p>
<p>Core Committer Sergey Biryukov confirmed that the plan is to introduce more core functionality that relies on REST API. &#8220;Turning off the REST API is like turning off admin-ajax.php — both will break your site,&#8221; Biryukov said.</p>
<p>Rand-Hendriksen asked why the content endpoints cannot be protected by default while allowing the REST API to be on by default for admin purposes. Another user asked why the Users endpoint isn&#8217;t protected by default (i.e. <a href="https://news.microsoft.com/wp-json/wp/v2/users" target="_blank">https://news.microsoft.com/wp-json/wp/v2/users</a> or <a href="https://www.obama.org/wp-json/wp/v2/users" target="_blank">https://www.obama.org/wp-json/wp/v2/users</a>), which &#8220;makes it easier than ever to get all the usernames&#8221; on any site using 4.7+.</p>
<p><a href="https://i2.wp.com/wptavern.com/wp-content/uploads/2017/02/users-endpoint.png?ssl=1"><img /></a></p>
<p>&#8220;If you really want to disable the REST API on your site(s), this is our current recommendation: restrict it to authenticated users,&#8221; Core Committer James Nylen said. &#8220;However, we want to continue to increase adoption and usage of the REST API, and I expect that even this modification will break more and more WP functionality as time goes on, such as API-driven themes and embeds.&#8221;</p>
<p>Nylen recommends the <a href="https://wordpress.org/plugins/disable-json-api/" target="_blank">Disable JSON API</a> plugin for those who want to follow that recommendation on sites using WordPress 4.7+. The plugin currently has more than 10,000 active installs.</p>
<p>The WordPress security team worked diligently to mitigate the attacks by helping hosts and security firms put protections in place before the issue was made public. However, the <a href="https://make.wordpress.org/core/2017/02/01/disclosure-of-additional-security-fix-in-wordpress-4-7-2/" target="_blank">full disclosure of the vulnerability</a> was buried on the Make/Core blog, a site that is not widely read among regular WordPress site owners. The link to the disclosure was published as an addendum to <a href="https://wordpress.org/news/2017/01/wordpress-4-7-2-security-release/" target="_blank">the previous post</a> on the WordPress news blog a week later.</p>
<p>&#8220;While I appreciate the responsible disclosure of this issue and the effort to resolve it, I hope you consider making future announcements via a new post on the WordPress News site, rather than just appending an update to a previous post,&#8221; user @johnrork <a href="https://make.wordpress.org/core/2017/02/01/disclosure-of-additional-security-fix-in-wordpress-4-7-2/#comment-32105" target="_blank">commented</a> on the official disclosure. &#8220;I am probably not the only one who could have avoided being compromised had this shown up as a new item in my RSS reader on Wednesday.&#8221;</p>
<p>Those who read the Make blogs had a head start on fixing their own sites and/or their clients&#8217; sites. Those who depend on the WordPress news blog for information on security updates probably read the post when it was initially published and never returned to see the update a week later. An issue this severe warranted WordPress&#8217; transparency in a new post on its news blog. This would have also automatically sent out a tweet to more than half a million followers on the official WordPress account and the Facebook account which has more than a million likes.</p>
<p>Fortunately, the number of vulnerable sites that also have plugins that could allow attackers to piggyback on this vulnerability is a much smaller number. Defaced sites are embarrassing but easy to fix. In most cases administrators need only update to 4.7.2 and roll back the defaced posts to the most recent revision. Most site owners have no idea how fast exploits begin to pop up after public disclosure, but this situation provided a gentle reminder of the importance of updating WordPress and the benefit of leaving automatic updates on.</p>
<div id="epoch-width-sniffer"></div>";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, 13 Feb 2017 22:59:41 +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:86:"WPTavern: 10up Unveils ElasticPress.io: Elasticsearch as a Service for WordPress Sites";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:29:"https://wptavern.com/?p=65981";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:96:"https://wptavern.com/10up-unveils-elasticpress-io-elasticsearch-as-a-service-for-wordpress-sites";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:7053:"<p><a href="https://i0.wp.com/wptavern.com/wp-content/uploads/2017/02/elasticpress-logo.png?ssl=1"><img /></a></p>
<p><a href="https://10up.com" target="_blank">10up</a> launched <a href="https://www.elasticpress.io/" target="_blank">ElasticPress.io</a> this week, its new Elasticsearch SaaS product with plans starting at $299/month. <a href="https://github.com/elastic/elasticsearch" target="_blank">Elasticsearch</a> is an open source, distributed search engine that speeds up searching by using JSON documents to store data in indices. The indices store mapping fields to the corresponding documents and the engine searches the index instead of a site&#8217;s entire database.</p>
<p>Elasticsearch can perform near-real-time searches and is highly scalable, but the setup is technically demanding. It is used by many large companies, such as GitHub, Soundcloud, Etsy, Netflix, Cisco, and Samsung. It is also one of the most popular enterprise search engines for WordPress sites, as searching WordPress tables with thousands or even millions of records is simply not going to be fast.</p>
<p>The WordPress plugin directory has a dozen plugins for using and extending Elasticsearch but 10up&#8217;s <a href="https://wordpress.org/plugins/elasticpress/" target="_blank">ElasticPress</a> is by far the most popular with more than a thousand installs. After supporting the plugin for several years, along with many enterprise clients using Elasticsearch, 10up decided to create a hosted service that integrates with ElasticPress.</p>
<p>&#8220;The reason we created this solution for our clients, and that we’re now making this public, is that we don’t think anyone has provided a super easy, end-to-end (plugin to hosted service) that offers all of the benefits of Elasticsearch and our ElasticPress plugin, while being completely agnostic to your site hosting,&#8221; 10up founder Jake Goldman said.</p>
<p><a href="https://i0.wp.com/wptavern.com/wp-content/uploads/2017/02/elasticpress.png?ssl=1"><img /></a></p>
<p>ElasticPress.io is an end-to-end solution that is specifically tailored for those using the ElasticPress plugin. This is one of the key differences between managing your own Elasticsearch infrastructure with a service like AWS. ElasticPress.io controls both the hosting and the plugin, allowing the service to optimize performance for both.</p>
<p>&#8220;There are a number of really neat use cases for ElasticPress on our roadmap that add either risk (security) or headaches (complicated setup and management procedures) if you can’t control both ends,&#8221; Goldman said. &#8220;For instance, there are optional Elasticsearch modules (just like there are optional Apache and Nginx modules) for features like indexing media that many hosted Elastic services don’t enable by default or support. We also want to be able to index and handle content that isn’t public, and many hosted Elastic services aren’t locked down / secured end-to-end with the website by default.&#8221;</p>
<h3>How ElasticPress.io&#8217;s Pricing Compares to Competitors</h3>
<p><a href="https://www.elastic.co/" target="_blank">Elastic</a>, the creators of Elasticsearch were one of the first companies to launch Elasticsearch as a service in 2012. Two years later the company raised $70 million in a Series C funding round. Dozens of other Elasticsearch as a service companies have sprouted up since then, with pricing ranging from under $20 to tens of thousands of dollars depending on the resources offered.</p>
<p>The ElasticPress.io service is the first of its kind in the WordPress ecosystem. Most hosting companies do not have it built into their enterprise level plans. WordPress.com VIP is one of the few that offers Elasticsearch for sites on its <a href="https://vip.wordpress.com/our-services/#hosting-plans" target="_blank">plans</a> which range from $5,000 &#8211; $25,000 per month. WP Engine has an Elasticsearch solution as part of its <a href="https://wpengine-labs.com/" target="_blank">Labs program</a>, which is based on a fork of ElasticPress. However, the solution has not yet been officially added to the company&#8217;s enterprise plans.</p>
<blockquote class="twitter-tweet">
<p lang="en" dir="ltr"><a href="https://twitter.com/10up">@10up</a> <a href="https://twitter.com/mgibbs189">@mgibbs189</a> <a href="https://twitter.com/cabgfx">@cabgfx</a> <a href="https://twitter.com/sbangnielsen">@sbangnielsen</a> <a href="https://twitter.com/SearchWP">@SearchWP</a> ElasticPress plus lower cost providers is still extremely powerful for under $12 a month</p>
<p>&mdash; Scott Kingsley Clark (@scottkclark) <a href="https://twitter.com/scottkclark/status/830165095045033984">February 10, 2017</a></p></blockquote>
<p></p>
<p>For the most part, developers who have to implement Elasticsearch for a WordPress site are faced with hosting their own instance and managing it themselves. This is the most cost effective option but comes with a great deal more responsibility.</p>
<p>&#8220;Elasticsearch is a quickly evolving platform, and they don’t exactly have the same commitment to infinite backwards compatibility that WordPress has these days,&#8221; Goldman said. &#8220;Major Elasticsearch upgrades can break old integrations. That means the site owner needs to either worry about automatic version upgrades breaking their site, or has to manage their upgrades carefully. By controlling the integration with Elastic on the website site and controlling the hosting, we can carefully handle version upgrades for customers while making sure nothing breaks.&#8221;</p>
<p>10up is aiming at the higher end of the market where customers are looking for convenience and access to the creators of ElasticPress for support. Goldman anticipates many of those customers will be similar to the product&#8217;s existing customers who simply need a robust keyword search or related content engine that will &#8220;just work.&#8221; ElasticPress.io is also targeting smaller and mid-tier businesses that are experiencing performance bottlenecks with WordPress&#8217; native query engine.</p>
<p>&#8220;Those customers are typically relying on rather complicated faceting / filtering of content, the classic use-case being a WooCommerce store where customers are constantly filtering on a handful of unique (unique = hard to cache) meta data all the time,&#8221; Goldman said. &#8220;That’s where ElasticPress really shines: our native WooCommerce support and optimization take those very taxing queries and makes them lightning fast.&#8221;</p>
<p>As the service is fairly unique in the WordPress space, ElasticPress.io&#8217;s <a href="https://www.elasticpress.io/#pricing" target="_blank">pricing</a> has room to evolve as 10up learns from its customers. The plans currently range from $299 &#8211; $999 per month with increasing storage space and tiered support response times. Goldman said they haven&#8217;t ruled out other pricing points and may explore more pricing options in the future.</p>
<div id="epoch-width-sniffer"></div>";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, 11 Feb 2017 06:33:32 +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:29;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:94:"Post Status: Jason Cohen, founder of WP Engine, on growing your company well — Draft Podcast";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=33802";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:53:"https://poststatus.com/jason-cohen-wp-engine-founder/";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:2420:"<p>Welcome to the Post Status <a href="https://poststatus.com/category/draft">Draft podcast</a>, which you can find <a href="https://itunes.apple.com/us/podcast/post-status-draft-wordpress/id976403008">on iTunes</a>, <a href="https://play.google.com/music/m/Ih5egfxskgcec4qadr3f4zfpzzm?t=Post_Status__Draft_WordPress_Podcast">Google Play</a>, <a href="http://www.stitcher.com/podcast/krogsgard/post-status-draft-wordpress-podcast">Stitcher</a>, and <a href="http://simplecast.fm/podcasts/1061/rss">via RSS</a> for your favorite podcatcher. In this episode, I interview <a href="https://twitter.com/asmartbear">Jason Cohen</a>, the founder of WP Engine and current CTO.</p>
<p>I talked to Jason about a whole lot of things, mostly to do with growing well. Whether you&#8217;re growing revenue, company size, or personal development &#8212; this is a conversation about growth, and how to do it well.</p>
<p>Unlike many entrepreneurs in the WordPress space, WP Engine isn&#8217;t Jason&#8217;s first business. He&#8217;s done this before, and made plenty of mistakes. He talks about what he&#8217;s done differently at WP Engine and how its made him a happier person.</p>
<p>This interview took place at LoopConf, and <a href="https://www.youtube.com/watch?v=b_CmkUT25BE">Jason was a keynote presenter</a>. His LoopConf talk pairs well with our discussion.</p>
<p>You can catch the first segment on video, and the entire conversation is on the audio podcast.</p>
<p></p>
<a href="https://audio.simplecast.com/60233.mp3">https://audio.simplecast.com/60233.mp3</a>
<p><a href="https://audio.simplecast.com/60233.mp3">Direct Download</a></p>
<h3>Links</h3>
<ul>
<li><a href="https://wpengine.com/">WP Engine</a></li>
<li><a href="https://loopconf.com/">LoopConf</a></li>
<li><a href="https://blog.asmartbear.com/">Jason&#8217;s blog</a></li>
</ul>
<h3>Sponsor: iThemes</h3>
<p>This episode is sponsored by <a href="https://ithemes.com/?utm_source=post_status&utm_medium=banner&utm_campaign=ps_ads">iThemes</a>. The team at iThemes offers WordPress plugins, themes and training to help take the guesswork out of building, maintaining and securing WordPress websites. For more information, check out their <a href="https://ithemes.com/?utm_source=post_status&utm_medium=banner&utm_campaign=ps_ads">website</a> and thank you to iThemes for being a Post Status partner.</p>
<p><em>Photo by Brian Richards for Post Status</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:"Sat, 11 Feb 2017 04:31:32 +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:30;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:44:"WPTavern: In Case You Missed It – Issue 17";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:58:"https://wptavern.com?p=65984&preview=true&preview_id=65984";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:"https://wptavern.com/in-case-you-missed-it-issue-17";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:8994:"<p><a href="https://i2.wp.com/wptavern.com/wp-content/uploads/2016/01/ICYMIFeaturedImage.png?ssl=1" rel="attachment wp-att-50955"><img /></a>photo credit: <a href="http://www.flickr.com/photos/112901923@N07/16153818039">Night Moves</a> &#8211; <a href="https://creativecommons.org/licenses/by-nc/2.0/">(license)</a>There’s a lot of great WordPress content published in the community but not all of it is featured on the Tavern. This post is an assortment of items related to WordPress that caught my eye but didn’t make it into a full post.</p>
<h2>Interviewed for WordPress.tv</h2>
<p>A few weeks ago, Marcus Couch and I were interviewed by John Parkinson. Parkinson is a volunteer moderator and performs community outreach for WordPress.tv. In the interview, we discuss the benefits of WordPress.tv, the WordPress community, WordCamps, and more. I encourage you to check out his <a href="https://blog.wordpress.tv/tag/interview/">other community interviews</a> as well.</p>
<p></p>
<h2 class="selectionShareable">WooCommerce and WordPress Used to Sell Stress Cubes</h2>
<p>CNBC has <a href="http://www.cnbc.com/2017/01/30/a-24-year-old-made-345000-by-beating-kickstarters-to-market.html">an interesting story</a> that features a 24-year-old who made $345K in two months selling <a href="https://stresscube.com/">Stress Cubes</a>, a knock-off of the Fidget Cube. The Fidget Cube raised <a href="https://www.kickstarter.com/projects/antsylabs/fidget-cube-a-vinyl-desk-toy">nearly 6.5M dollars</a> in crowdfunding money.</p>
<p>The Fidget Cube experienced significant delays in shipping due to manufacturing issues. The 24-year-old contacted suppliers in China, purchased 1,000 plastic cubes, created a similar product, and shipped it to market before the Fidget Cube had a chance to reach backers. He used WordPress and WooCommerce to sell Stress Cubes grossing him nearly $350K in two months.</p>
<h2>Why WordPress in Education</h2>
<p>Jared Bennett <a href="https://dev.commons.hwdsb.on.ca/2017/02/08/why-wordpress-in-education/">explains</a> how the <a href="http://www.hwdsb.on.ca/">Hamilton Wentworth District School Board</a> uses WordPress.  &#8220;We run over 100 individual school websites on a WordPress Multisite Network, and back in May of 2011, we launched the HWDSB Commons: a second Multisite Network which now hosts over 8,000 blogs for over 30,000 users,&#8221; Bennett said.</p>
<p>Bennett <a href="https://github.com/hwdsbcommons/">shares links</a> to plugins the team created to solve specific issues such as comment moderation in BuddyPress and blocking specific modules in Jetpack. Since WordPress is free as in beer, it allows his school board to spend public money in a more responsible way.</p>
<p>&#8220;In the WordPress ecosystem we operate in, I pay for functionality to be developed, and I share it openly on platforms like the WordPress plugin repository, or on sites like <a href="https://github.com/hwdsbcommons/">Github,</a>&#8221; Bennett said.</p>
<p>&#8220;The money you would have spent to enable the previously developed functionality, you can now spend on something else, something that I might benefit from. Think about how much more responsible this model is, particularly when we are talking about spending public money.</p>
<p>&#8220;We are all contributing; and the community benefits from those contributions; and our money — and the functionality of our platforms — improves exponentially faster than if we were all spending our money paying the private company over and over for code that has already been paid for by previous customers.&#8221;</p>
<p>To learn more about WordPress in education, listen to <a href="https://wptavern.com/wpweekly-episode-261-wordpress-for-schools-with-cameron-barrett">episode 261</a> of WordPress Weekly where we interview Cameron Barrett, founder of <a href="http://schoolpress.co/">SchoolPresser, LLC</a>. Barrett explains how he negotiated and helped migrate Newark New Jersey’s public school system from a proprietary CMS to WordPress.</p>
<h2>WP101 Plugin Now Has WooCommerce and Jetpack Videos</h2>
<p>The <a href="https://wp101plugin.com/">WP101 plugin</a> has added Jetpack and WooCommerce training videos. This is in addition to the Yoast SEO and WordPress training videos.</p>
<blockquote class="twitter-tweet">
<p lang="en" dir="ltr">Huge update for our WP101 Plugin! It now includes WooCommerce and Jetpack videos. That’s 90 videos for your clients! <a href="https://t.co/6jtzj1JgkC">https://t.co/6jtzj1JgkC</a> <a href="https://t.co/CByYvd61Xi">pic.twitter.com/CByYvd61Xi</a></p>
<p>&mdash; WordPress 101 (@WP101) <a href="https://twitter.com/WP101/status/829455708802408452">February 8, 2017</a></p></blockquote>
<p></p>
<h1 class="entry-title">Adding Meta Fields to a Widget Sidebar Section</h1>
<blockquote class="twitter-tweet">
<p lang="en" dir="ltr">Example for how to add meta fields/controls to a widget sidebar section in the customizer: <a href="https://t.co/aMadLioQn6">https://t.co/aMadLioQn6</a> <a href="https://twitter.com/hashtag/javascript?src=hash">#javascript</a> <a href="https://twitter.com/hashtag/WordPress?src=hash">#WordPress</a></p>
<p>&mdash; Weston Ruter ⚡ (@westonruter) <a href="https://twitter.com/westonruter/status/829799276976828417">February 9, 2017</a></p></blockquote>
<p></p>
<h2>WP Sessions Developer Survey</h2>
<p>WP Sessions is conducting a <a href="http://wpsessions.com/developer-survey/">developer survey</a> to find out about the tools developers use. Results will be anonymized and shared in aggregate in a few weeks.</p>
<h2>Widget Logic Has a New Maintainer</h2>
<p><a href="https://wordpress.org/plugins/widget-logic/">Widget Logic</a>, a popular plugin actively installed on more than 300K sites, has a <a href="https://profiles.wordpress.org/wpchefgadget/">new maintainer</a> named <a href="https://profiles.wordpress.org/wpchefgadget/#content-plugins">WPChef</a>. The plugin was created nine years ago by <a href="https://profiles.wordpress.org/alanft/">Alanft</a>. Prior to WPChef gaining commit access, the last time Widget Logic was updated was <a href="https://plugins.trac.wordpress.org/browser/widget-logic/tags/0.57?rev=1592418">two years ago</a>.</p>
<p>After gaining access, WPChef released Widget Logic 5.7.0. This version fixed a PHP 7 compatibility issue, a conflict with WPML, added a new default load logic point, and a Ukrainian translation. In addition to bug fixes, a global admin notice to install Limit Login Attempts Reloaded was also added. Limit Login Attempts Reloaded is a separate plugin owned and maintained by WPChef.</p>
<p><img />Limit Login Attempts Reloaded Admin NoticeThe wording of the notice and appearing globally caused some users to <a href="https://wordpress.org/support/topic/incorrect-widget-logic-team-security-recommendation/">be concerned</a> or upset. Some users responded to the update by <a href="https://wordpress.org/support/plugin/widget-logic/reviews/?filter=1">writing 1-star reviews</a>. After a user <a href="https://wordpress.org/support/topic/taking-over-and-forking-this-plugin/#post-8781763">described the notice</a> as sounding like fake news, WPChef changed it.</p>
<h2>From SupportPress to Help Scout!</h2>
<p>The WordPress.org community team is moving away from <a href="https://supportpress.com/">SupportPress</a> to Help Scout. The move opens up a number of possibilities as Help Scout offers a lot of features that are non-existent in SupportPress.</p>
<blockquote class="wp-embedded-content"><p><a href="https://make.wordpress.org/community/2017/02/09/moving-from-supportpress-to-help-scout/">Moving from SupportPress to Help Scout</a></p></blockquote>
<p></p>
<h2>Plush Wapuu!</h2>
<p>In what is a traditional part of this series, I end each issue by featuring a Wapuu design. For those who don&#8217;t know, Wapuu is the <a href="http://wapuu.jp/2015/12/12/wapuu-origins/">unofficial mascot</a> of the WordPress project.</p>
<blockquote class="twitter-tweet">
<p lang="en" dir="ltr"><a href="https://twitter.com/hashtag/Wapuu?src=hash">#Wapuu</a> army is taking over <a href="https://twitter.com/hashtag/WordCamp?src=hash">#WordCamp</a> US <img src="https://s.w.org/images/core/emoji/2.2.1/72x72/1f60d.png" alt="😍" class="wp-smiley" /><a href="https://twitter.com/hashtag/wcus?src=hash">#wcus</a> <a href="https://twitter.com/hashtag/wcus2016?src=hash">#wcus2016</a> <a href="https://t.co/Giyt3KFsnF">pic.twitter.com/Giyt3KFsnF</a></p>
<p>&mdash; Musannif (@mzahir) <a href="https://twitter.com/mzahir/status/805133225127510016">December 3, 2016</a></p></blockquote>
<p></p>
<p>This plush Wapuu which was given away at WordCamp US 2016 as part of the event&#8217;s swag was a huge hit with attendees and their children. I have one myself and the quality is superb.</p>
<p>That&#8217;s it for issue seventeen. If you recently discovered a cool resource or post related to WordPress, please share it with us in the comments.</p>
<div id="epoch-width-sniffer"></div>";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, 10 Feb 2017 22:16:03 +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:31;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:48:"BuddyPress: BuddyPress 2.8.0 Release Candidate 1";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:32:"https://buddypress.org/?p=263679";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:68:"https://buddypress.org/2017/02/buddypress-2-8-0-release-candidate-1/";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:1158:"<p>BuddyPress 2.8.0 Release Candidate 1 is now available for testing. Please <a href="https://downloads.wordpress.org/plugin/buddypress.2.8.0-RC1.zip">download the 2.8.0-RC1 zip</a> or get a copy via our Subversion repository.</p>
<p>This is our last chance to find any bugs that slipped through the beta process. So please test with your themes and plugins. We plan to release BuddyPress 2.8.0 next Wednesday, February 15.</p>
<p>A detailed changelog will be part of our official release notes, but you can get a quick overview by reading the post about the <a href="https://buddypress.org/2017/01/buddypress-2-8-0-beta-1/">2.8.0 Beta 1</a> release.</p>
<p>Release Candidate means we are in string freeze, so translators should feel confident in finishing their BuddyPress translations in <a href="https://translate.wordpress.org/projects/wp-plugins/buddypress">GlotPress</a>.</p>
<p>Let us know of any issues you find in <a href="https://buddypress.org/support">the support forums</a> and/or on <a href="https://buddypress.trac.wordpress.org">our development tracker</a>.</p>
<p>Thanks in advance for giving the release candidate a test drive!</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, 10 Feb 2017 20:51:12 +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:14:"Slava Abakumov";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:32;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: Creative Commons’ New Search Tool is Now in Beta, Pulls CC Images from Multiple Sources";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:29:"https://wptavern.com/?p=65809";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:106:"https://wptavern.com/creative-commons-new-search-tool-is-now-in-beta-pulls-cc-images-from-multiple-sources";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:5467:"<p>If you&#8217;ve been wearing out Unsplash images on your blog, it&#8217;s time to take another look at Creative Commons. The site has just <a href="https://creativecommons.org/2017/02/07/new-cc-search/" target="_blank">launched the beta</a> of its new multi-source search interface. Unlike the <a href="https://search.creativecommons.org/" target="_blank">current search tool</a>, which will only search one source by sending the visitor offsite, <a href="https://ccsearch.creativecommons.org/" target="_blank">CC Search</a> loads the results from multiple sources onsite.</p>
<p>The Commons includes approximately 1.1 billion works in various formats &#8211; literary works, videos, photos, audio, scientific research, and other formats. As half of these works are estimated to be images, the prototype for the new search tool focuses on this format.</p>
<p>&#8220;Our goal is to cover the whole commons, but we wanted to develop something people could test and react to that would be useful at launch,&#8221; Creative Commons CEO Ryan Merkley said. &#8220;To build our beta, we settled on a goal to represent one percent of the known Commons, or about 10 million works, and we chose a vertical slice of images only, to fully explore a purpose-built interface that represented one type but many providers.&#8221;</p>
<p>CC Search currently pulls CC-licensed images from Rijksmuseum, Flickr, 500px, the New York Public Library, and the Metropolitan Museum of Art. This includes 200,000 new images from the collection of <a href="https://creativecommons.org/2017/02/07/met-announcement/" target="_blank">375,000 digital works that the Met released under CC0</a> this week.</p>
<p>In addition to the new search interface, the beta includes social tools that allow users to curate and share their own lists, add tags and favorites, and save searches. One-click attribution is built in, making it easy for users to properly attribute the works.</p>
<p><a href="https://i0.wp.com/wptavern.com/wp-content/uploads/2017/02/cc-search.png?ssl=1"><img /></a></p>
<p>As Creative Commons is a small organization and fairly lean on resources, the new search was built by a single contractor over seven months. Software engineer Liza Daly was selected to <a href="https://hackernoon.com/cc-search-developer-notes-and-reflection-418271194682#.6f8mudh02" target="_blank">research and build a proof-of-concept for CC Search</a>, a project which she understood to be &#8220;a front door to the universe of openly licensed content.&#8221;</p>
<p>&#8220;CC Search is meant to make material more discoverable regardless of where it is hosted,&#8221; Daly said. &#8220;For this reason (and for obvious cost-saving objectives), we decided to host only image metadata — title, creator name, any known tags or descriptions — and link directly to the provider for image display and download. A consequence of this is that CC Search only includes images which are currently available on the web; CC is not collecting or archive any images itself.&#8221;</p>
<p>Daly built the search feature on AWS cloud infrastructure using Python, Django, Postgres, and Elasticsearch. The beta has estimated hosting costs of $1,400/month. She opted for Python, because she was most familiar with it.</p>
<p>&#8220;As the prototype evolved, we decided the opportunity for an engaging front door to the Commons lay in curation and personalization,&#8221; Daly said. &#8220;Because of its dedicated maintenance team and frequent patch management, I chose Django as the web framework.&#8221; She chose Elasticsearch over Solr (and other options) primarily because of the AWS’s Elasticsearch-as-a-service.</p>
<p>&#8220;CC Search is not, at this time, a particularly sophisticated search application; image metadata is relatively simple and when dealing with a heterogeneous content set from a diversity of providers, one tends towards a lowest-common-denominator approach — our search can only be as rich as our weakest data source,&#8221; Daly said. &#8220;There is much to be improved here.&#8221;</p>
<p>Daly also described an interesting idea for adding a blockchain-type architecture that would record licensing transactions, sharing, and gratitude in a distributed way. This idea falls outside of the scope of the MVP but may be something the project&#8217;s future developers will consider when implementing the final version.</p>
<p>&#8220;A long-term goal of this project is to facilitate not only search and discovery, but also reuse and &#8216;gratitude,'&#8221; Daly said. &#8220;A frequent complaint about open licenses in general — both for creative works and software code — is that contributing to the commons can be a thankless task. There are always more consumers than contributors, and there’s no open web equivalent to a Facebook &#8216;like.'&#8221;</p>
<p>Other future improvements that the team will consider based on user feedback include adding more content partners, more tools for customizing lists, allowing users to search from their own curated material, and giving trusted users the ability to push metadata back into the collection. Search filters may also be expanded to allow for searching by color, drilling down into tags, and searching public lists.</p>
<p>Check out the beta for the new CC Search at <a href="https://ccsearch.creativecommons.org/" target="_blank">ccsearch.creativecommons.org</a>.</p>
<div id="epoch-width-sniffer"></div>";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, 10 Feb 2017 05:42:08 +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:33;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:82:"WPTavern: Google Webmaster Tools Fixes Confusing Messages About Updating WordPress";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:29:"https://wptavern.com/?p=65787";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:85:"https://wptavern.com/google-changes-the-wording-of-its-wordpress-update-notifications";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:4148:"<p>In 2009, <a href="https://webmasters.googleblog.com/2009/11/new-software-version-notifications-for.html">Google announced</a> it would send notifications via <a href="https://www.google.com/webmasters/tools/">Webmaster Tools</a> to site owners that new versions of software are available E.g. Joomla, Drupal, or WordPress.</p>
<p>WordPress 4.7.2 <a href="https://wordpress.org/news/2017/01/wordpress-4-7-2-security-release/">was released</a> at the end of January. It patched a critical security vulnerability with the REST API that is <a href="https://wptavern.com/wordpress-rest-api-vulnerability-is-being-actively-exploited-hundreds-of-thousands-of-sites-defaced">being actively exploited</a> in the wild. Site owners who updated to 4.7.2 are <a href="https://productforums.google.com/forum/?hl=en#!category-topic/webmasters/QwkXrbyzKBA">receiving Google Alerts</a> that their sites are out of date.</p>
<blockquote><p>Recommended WordPress update available for<span dir="ltr"><a>http://www.example.com/</a></span></p>
<div dir="ltr">
<div>
<p>To: Webmaster of <span dir="ltr"><a>http://www.example.com/</a></span>,</p>
<p>Google has detected that your site is currently running WordPress 4.7.0 or 4.7.1, an older version of WordPress. Outdated or unpatched software can be vulnerable to hacking and malware exploits that harm potential visitors to your site. Therefore, we suggest you update the software on your site as soon as possible.</p>
<p>Following are one or more example URLs where we found pages that have outdated software. The list is not exhaustive.</p>
<p dir="ltr"><a href="https://www.example.com/123/" target="_blank" rel="nofollow">https://www.example.com/123/</a></p>
<p dir="ltr"><a href="https://www.example.com/456/" target="_blank" rel="nofollow">https://www.example.com/456/</a></p>
<p dir="ltr"><a href="https://www.example.com/789/" target="_blank" rel="nofollow">https://www.example.com/789/</a></p>
</div>
</div>
</blockquote>
<p dir="ltr">Some of the people who received notices thought the email was a phishing attempt as WordPress is misspelled using a lower-case p. Others <a href="https://productforums.google.com/d/msg/webmasters/QwkXrbyzKBA/z_4hg5s5BwAJ">expressed confusion and anxiety</a> receiving notices despite having already updated their sites.</p>
<p dir="ltr">WordPress powered sites contain a meta generator that Google uses to detect which version is running.</p>
<p dir="ltr">&lt; meta name=&#8221;generator&#8221; content=&#8221;WordPress 4.7.1&#8243; /&gt;</p>
<p dir="ltr">However, Google does not monitor pages in real-time. If a site owner updates to WordPress 4.7.2 but the page indexed by Google is running 4.7.1, they&#8217;ll receive a notice.</p>
<p dir="ltr">Juan Felipe Rincón, Webmaster Outreach at Google, <a href="https://productforums.google.com/d/msg/webmasters/QwkXrbyzKBA/25QwebHfBwAJ">responded </a>to the forum thread and confirmed the issues reported by users, &#8220;Definitely a problem on our end,&#8221; Rincón said.</p>
<p dir="ltr">&#8220;We&#8217;re sorry for causing confusion in the messaging and for the swirl this created for many of you and your users or client base.&#8221;</p>
<p dir="ltr">Google was aware that notices would be sent to site owners who already updated but chose to send them anyway due to the seriousness of the vulnerability.</p>
<p dir="ltr">&#8220;However, we underestimated the number of sites that had already patched, and our messaging gave no room for interpretation or letting website owners know that if they had already upgraded they could ignore the message safely,&#8221; Rincón said.</p>
<p dir="ltr">Google has implemented the following changes to improve its update notification system:</p>
<ul>
<li dir="ltr">Messages have stopped being delivered for now but will resume shortly.</li>
<li dir="ltr">The messages have been reworded to be clearer.</li>
<li dir="ltr">Additional checks have been added to reduce the number of notifications sent to owners who already updated.</li>
</ul>
<p>If you&#8217;ve updated WordPress to 4.7.2, you can safely disregard the notices.</p>
<div id="epoch-width-sniffer"></div>";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, 09 Feb 2017 23:55:03 +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:34;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: WordCamp Miami 2017 to Host JavaScript Track, AMA Spots, and 2-Day Kids’ Camp";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:29:"https://wptavern.com/?p=65831";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:95:"https://wptavern.com/wordcamp-miami-2017-to-host-javascript-track-ama-spots-and-2-day-kids-camp";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:4451:"<p><a href="https://i0.wp.com/wptavern.com/wp-content/uploads/2017/02/wordcamp-miami-2017.png?ssl=1"><img /></a></p>
<p><a href="https://2017.miami.wordcamp.org/" target="_blank">WordCamp Miami</a> is sporting an 80&#8217;s theme this year for its 9th year running. The team of 12 organizers is expecting more than 800 attendees and will host 60+ local and global speakers, including new speakers from India, Australia, Poland, Canada, and other international locations.</p>
<p>As in previous years, WordCamp Miami is a multi-day smorgasbord of WordPress networking and educational opportunities with workshops for all ages. The event is bringing back the two-day Kids&#8217; Camp and Kids&#8217; Panel it hosted last year. David Bisset, one of the organizers, is expecting approximately 50 attendees and said the team is seeing an even greater increase of parents and kids than previous years, based on more kids&#8217; tickets being purchased earlier.</p>
<p>This year the Kids&#8217; Camp will focus on blogging and coding and children will even get their own attendee bags. Kids will also receive free hosting and a free domain name, thanks to a donation from a sponsor. The <a href="https://2017.miami.wordcamp.org/2017/01/17/speaker-call-opening-for-kids/" target="_blank">call for speakers for kids</a> aged 7-18 is now open.</p>
<p>WordCamp Miami will be hosting three workshops on the Friday leading up to the main event: a Beginner&#8217;s workshop, a Freelance workshop, and the WP REST API / BuddyCamp workshop. This is the fifth consecutive year for BuddyCamp and attendees will have the opportunity to learn more about building mobile applications with BuddyPress and the WordPress REST API.</p>
<p>The &#8220;Learn JavaScript Deeply&#8221; track is returning in 2017, featuring local and international JS developers. So far WordCamp Miami is the only camp to have an entire track devoted to JavaScript. Organizers have designed the format of the track to be duplicated by other camps that want to include more JS content.</p>
<p>The event&#8217;s organizers usually attempt to get &#8220;<a href="https://2017.miami.wordcamp.org/2017/02/03/why-its-important-for-outside-the-bubble-perspectives-at-wordcamps/" target="_blank">outside the WordPress bubble</a>&#8221; by inviting speakers with experience in other platforms to share with attendees. This year&#8217;s lineup includes two sessions from members of the Drupal and Joomla communities. Mike Herchel, a front-end web developer at Lullabot, will present a session titled “WordPress &amp; Drupal: Community and Contribution Differences and Lessons.” Aleksander Kuczek, CEO of Perfect Dashboard and a Joomla Extension Directory team member, will be speaking about how Joomla handles plugin contributions.</p>
<p>Other focus topics during the main event include customizing/extending WordPress, e-commerce, mental health, content marketing, and building a better business (from freelancers to agencies). Organizers have also reduced the time for speakers a little in order to introduce some &#8220;AMA&#8221; spots. The new format will feature prominent people in the community who will be available to simply answer questions from attendees. The guests for the AMA spots are still being finalized, but Bisset said one example is a representative from Sucuri and will be available to answer any questions regarding security.</p>
<p><a href="https://i2.wp.com/wptavern.com/wp-content/uploads/2017/02/rate-my-talk.gif?ssl=1"><img /></a>WordCamp Miami will also debut the &#8220;<a href="http://davidbisset.com/results-of-my-live-rate-my-talk-with-emoji-at-wpcampus/" target="_blank">Rate My Talk With Emoji</a>&#8221; app that Bisset developed for attendees to give &#8220;live speaker feedback&#8221; while sessions are happening. He said the team is hoping to have the speakers decide on which emoji should be available, but if there are problems with pre-event testing they will pre-select emoji. At this time they are not planning on including any negative ones. Speakers will have access to their results after the conference.</p>
<p>WordCamp Miami would not be possible without the event&#8217;s army of volunteers. Bisset said organizers are still looking for <a href="http://davidbisset.us6.list-manage2.com/subscribe?u=8f9242549d66d09eceb714b54&id=046ea0475e" target="_blank">volunteers</a> to help out before and during the event.</p>
<div id="epoch-width-sniffer"></div>";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, 09 Feb 2017 20:22: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:35;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:94:"WPTavern: OSTraining Partners with GoDaddy to Launch Free WordPress Beginner Course on YouTube";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:29:"https://wptavern.com/?p=65805";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:105:"https://wptavern.com/ostraining-partners-with-godaddy-to-launch-free-wordpress-beginner-course-on-youtube";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:4409:"<p><a href="https://i0.wp.com/wptavern.com/wp-content/uploads/2017/02/ostraining-logo.png?ssl=1"><img /></a></p>
<p><a href="https://www.ostraining.com" target="_blank">OSTraining</a> has launched a free <a href="https://www.youtube.com/playlist?list=PLtaXuX0nEZk-rRfsl8lclMY5TncDmAUBm" target="_blank">40-video WordPress Beginner course</a> on YouTube, thanks to a sponsorship from GoDaddy. The open source software education site has created more than 3,000 videos for PHP platforms like WordPress, Joomla, Magento, and Drupal. This particular course, which has all new information for WordPress 4.7, was inspired by the company&#8217;s success in launching a free Drupal 8 course in 2016.</p>
<p>&#8220;The original idea was a happy accident,&#8221; CEO Steve Burge said. &#8220;We did a <a href="https://www.kickstarter.com/projects/stevebure/drupal-8-training-videos-help-us-make-drupal-magic" target="_blank">Kickstarter project</a> based around the launch of Drupal 8. That involved about 200 free videos, spread over several classes. The main class was &#8216;The Drupal 8 Beginner class&#8217; and it went viral, getting over <a href="https://www.ostraining.com/blog/news/1-million/" target="_blank">1 million views in a year</a>.&#8221;</p>
<p>The Kickstarter campaign raised more than $12K towards its $10K funding goal. It was the first time OSTraining produced a free course. Once the videos were released, Burge and his team were amazed by how popular the course became.</p>
<p>&#8220;It led us to re-think our business approach,&#8221; Burge said. &#8220;Rather than putting everything behind a paywall, we realized the power of giving away our best beginner material. From a business perspective, that made sense so long as we could find a sponsor.&#8221;</p>
<p>OSTraining worked with Topher DeRosia to film the WordPress Beginner course after securing a sponsorship from GoDaddy. Although the company has done multiple versions of its beginner class over the years, with updates for changes in each release, WordPress 4.7 presents a new opportunity for content longevity.</p>
<p>&#8220;We hope that by targeting 4.7 this class will last longer than most, because the new release cycle means a new version won&#8217;t be here in a couple of months,&#8221; Burge said.</p>
<p>In addition to beginner topics like how to install WordPress, write posts, and use the media library, the course also includes information on getting started with WordPress plugins like NinjaForms and Jetpack. The last few videos cover more advanced topics like security, spam, staging, and performance.</p>
<p>Although the <a href="https://www.youtube.com/channel/UCpJf6LGZ0a4n9Lj4aVt9spg/" target="_blank">official WordPress YouTube channel</a> doesn&#8217;t have much educational content for beginners, the WordPress community in general is gaining a stronger presence on YouTube. Searching for &#8220;WordPress&#8221; turns up more than five million videos in many different languages. Educational topics like &#8220;How to make a WordPress website&#8221; and other tutorials are the most popular.</p>
<p>WordPress businesses are also starting to see the value of having a solid presence on YouTube. Last year Automattic started beefing up its <a href="https://www.youtube.com/channel/UCvP5cfpfIgkb0Dt8o7Qt21A" target="_blank">channel</a> with a steady stream of new videos, including ads and tutorials for WordPress.com. Other large WordPress companies like <a href="https://www.youtube.com/user/iThemescom" target="_blank">iThemes</a>, <a href="https://www.youtube.com/user/wpbeginner/" target="_blank">WPBeginner</a>, and <a href="https://www.youtube.com/user/yoastcom/" target="_blank">Yoast</a> are publishing hundreds of free videos to YouTube, generating millions of views and thousands of subscribers.</p>
<p>After finding success on YouTube with the free Drupal 8 videos, OSTraining has also launched a free <a href="https://www.youtube.com/playlist?list=PLtaXuX0nEZk9eL59JGE3ny-_GAU-z5X5D" target="_blank">Magento 2</a> course and has a free Joomla course on the way.</p>
<p>&#8220;Getting more than 1 million views of the Drupal class really opened our eyes,&#8221; Burge said. &#8220;It&#8217;s almost like the difference between free, open source software and expensive, closed source software. You can reach so many more people by giving it away free.&#8221;</p>
<div id="epoch-width-sniffer"></div>";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, 09 Feb 2017 05:48:30 +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:36;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:65:"Dougal Campbell: Good Breakdown of Recent WordPress Vulnerability";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:34:"http://dougal.gunters.org/?p=81297";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:91:"http://dougal.gunters.org/blog/2017/02/08/good-breakdown-of-recent-wordpress-vulnerability/";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:2977:"<div class="featured-image align-right"><img width="150" height="150" src="http://dougal.gunters.org/wordpress/wp-content/uploads/2008/10/wordpress-wednesday-150x150.png" class="attachment-post-thumbnail size-post-thumbnail wp-post-image" alt="" /></div><p>The <a href="https://blog.sucuri.net/">Sucuri Blog</a> has a good dissection of the recent critical <a href="https://blog.sucuri.net/2017/02/content-injection-vulnerability-wordpress-rest-api.html">WordPress REST API vulnerability</a>. I won&#8217;t rehash the details here, but I did want to point out that this is why developers should remember to follow these two rules of defensive programming:</p>
<ol>
<li>Sanitize inputs as early as possible</li>
<li>Sanitize outputs as late as possible</li>
</ol>
<p>In this case, there was a failure to follow the first rule. There are a couple of different places where this could have been handled better.</p>
<p>For one, unless there is a good reason to allow <strong><code>GET</code></strong> or <strong><code>POST</code></strong> variables to override a URL placeholder parameter, then that should be handled appropriately. If there is a reason for it, then those values should be forced to comply with the regular expression or data type that is expected.</p>
<p>The other failure, beyond simple sanitizing, is that the logic of the <strong><code>update_item_permission_check()</code></strong> method simply didn&#8217;t properly account for the failure to retrieve a valid result from <strong><code>get_post()</code></strong>. This function will return post data either as an object or an array (depending on parameters), or <strong><code>null</code></strong> upon failure. The logic of the first conditional was looking for a valid post <em>and</em> invalid permissions on the post as an error condition:</p>
<pre><code>if ( $post &amp;&amp; ! $this-&gt;check_update_permission( $post ) ) {
    return new WP_Error( 'rest_cannot_edit', 
        __( 'Sorry, you are not allowed to edit this post.' ), 
        array( 'status' =&gt; rest_authorization_required_code() ) );
}</code></pre>
<p>Instead, it should have reversed the valid post logic, and looked for <em>not</em> a valid post, <em>or</em> invalid permissions:</p>
<pre><code>if ( <strong>! $post ||</strong> ! $this-&gt;check_update_permission( $post ) ) {
    return new WP_Error( 'rest_cannot_edit', 
        __( 'Sorry, you are not allowed to edit this post.' ), 
        array( 'status' =&gt; rest_authorization_required_code() ) );
}</code></pre>
<p>And for good measure, it should probably check whether the return value was an instance of <strong><code>WP_Error</code></strong>, for future-proofing. This small change would have detected an invalid post ID, and still performed a valid permissions check for existing posts.</p>
<p>Okay boys and girls, let&#8217;s say it all together now&#8230; &#8220;Security is hard.&#8221;</p>
<p>&nbsp;</p>
<div class="yarpp-related-rss yarpp-related-none">
</div>";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, 09 Feb 2017 01:46: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:15:"Dougal Campbell";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:37;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: WPWeekly Episode 262 – Interview With Morten Rand-Hendriksen";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:58:"https://wptavern.com?p=65818&preview=true&preview_id=65818";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:79:"https://wptavern.com/wpweekly-episode-262-interview-with-morten-rand-hendriksen";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:2668:"<p>On this episode, <a href="http://marcuscouch.com/">Marcus Couch</a> and I are joined by <a href="https://mor10.com/">Morten Rand-Hendriksen</a> to discuss his <a href="https://mor10.com/the-case-for-wordpress-telemetry/">WordPress Telemetry proposal</a>. We discuss the potential benefits of having an opt-in usage data collection system that could help core developers and others make informed decisions. Rand-Hendriksen also shares what he&#8217;s learned from <a href="https://www.lynda.com/Morten-Rand-Hendriksen/725535-1.html">teaching WordPress</a> at Lynda.com, on how difficult it is for new users to grasp WordPress.</p>
<h2>Stories Discussed:</h2>
<p><a href="https://wptavern.com/blogvault-security-breach-infects-customers-sites-with-malware">BlogVault Security Breach Infects Customers’ Sites With Malware</a><br />
<a href="https://wptavern.com/wordpress-rest-api-vulnerability-is-being-actively-exploited-hundreds-of-thousands-of-sites-defaced">WordPress REST API Vulnerability is Being Actively Exploited, Hundreds of Thousands of Sites Defaced</a><br />
<a href="https://wptavern.com/wp-super-cache-1-4-9-patches-multiple-xss-vulnerabilities">WP Super Cache 1.4.9 Patches Multiple XSS Vulnerabilities</a></p>
<h2>Plugins Picked By Marcus:</h2>
<p><a href="https://wordpress.org/plugins/content-locker/">Content Locker</a> is a tool that allows you to configure content to be behind a paywall. Visitors can pay for content by liking, sharing, or registering an account.</p>
<p><a href="https://wordpress.org/plugins/wp-jump/">WP Jump</a> allows you to bookmark your site in the admin bar. This plugin is useful if you have several, local or online, WordPress installations.</p>
<p><a href="https://wordpress.org/plugins/sidebar-content-clone/">Sidebar Content Clone</a> is a handy solution for easily duplicating or cloning all widgets from one sidebar to another sidebar. It can also clear all widgets from a sidebar with a single click.</p>
<h2>WPWeekly Meta:</h2>
<p><strong>Next Episode:</strong> Wednesday, February 15th 3:00 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="https://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 #262:</strong><br />
</p>
<div id="epoch-width-sniffer"></div>";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, 09 Feb 2017 01:03:30 +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:38;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: WP Super Cache 1.4.9 Patches Multiple XSS Vulnerabilities";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:29:"https://wptavern.com/?p=65664";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:78:"https://wptavern.com/wp-super-cache-1-4-9-patches-multiple-xss-vulnerabilities";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:2318:"<p><a href="https://wordpress.org/plugins/wp-super-cache/">WP Super Cache</a> is a <a href="https://odd.blog/2007/11/05/wordpress-super-cache-01/">nearly 10-year-old</a> plugin that is maintained by <a href="https://odd.blog/">Donncha Ó Caoimh</a> and is actively installed on more than a million sites. Releases have been far and few between, but Ó Caoimh <a href="https://odd.blog/2017/02/03/wp-super-cache-1-4-9/">has released</a> WP Super Cache 1.4.9 that patches cross-site-scripting vulnerabilities on the settings page.</p>
<p>&#8220;Those pages are only accessible by admin users so an anonymous visitor to your site can’t come along and enable it to steal your login cookies but along with those fixes come many bug fixes so it’s worth upgrading if you’re using an old version,&#8221; Ó Caoimh said.</p>
<p>In addition to patching security vulnerabilities, this release also contains a number of bug fixes. There&#8217;s <a href="https://github.com/Automattic/wp-super-cache/pull/174">also a fix</a> in this version for those who host a lot of sites that use WP Super Cache and are running into issues with semaphores due to the possibility of users using file locking.</p>
<p>If you&#8217;re running into this issue and need to disable file locking completely, Ó Caoimh suggests setting the WPSC_DISABLE_LOCKING constant in a global config file. &#8220;The file locking simply slowed down how fast cache files were created and is a hold-over from WP Cache when that plugin used to write directly to the cache files,&#8221; Ó Caoimh said.</p>
<p>&#8220;This plugin writes to temporary files before moving to the final cache files so that locking isn’t really needed, but some sites still use it which is why it’s still around.&#8221;</p>
<p>Ó Caoimh is already hard at work on the next version of WP Super Cache with an effort towards <a href="https://github.com/Automattic/wp-super-cache/pull/177">moving legacy cache files</a> into supercache directories. This will improve performance and make the files easier to maintain.</p>
<p>Users are encouraged to update to 1.4.9 as soon as possible. To see a detailed list of changes and bug fixes, visit the <a href="https://wordpress.org/plugins/wp-super-cache/changelog/">plugin&#8217;s changelog</a>.</p>
<div id="epoch-width-sniffer"></div>";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, 08 Feb 2017 04:26:15 +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:39;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: WordPress for Android Closes Google+ Community for Beta Testers";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:29:"https://wptavern.com/?p=65699";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:"https://wptavern.com/wordpress-for-android-closes-google-community-for-beta-testers";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:2616:"<p>The WordPress mobile app for Android is <a href="https://plus.google.com/u/0/+MaximeBiais/posts/8M796fTin9Q?cfem=1" target="_blank">shutting down its beta testing community</a> that was hosted on Google+ for the past three years. The mobile team switched to a completely open beta last year, enabling them to recruit 1,500 new testers.</p>
<p>The Google+ community, which currently has 1,152 members, has been the main channel for communication to and from the app&#8217;s developers. It was previously used to announce new beta versions and users posted regularly to confirm bugs, leave feedback on their experiences, and ask questions about upcoming features.</p>
<p>&#8220;We kept this Google+ Community opened since then but it became a place for spammers,&#8221; Automattic mobile engineer Maxime Biais said. &#8220;We decided to close it.&#8221;</p>
<p>Beta testers who want to continue participating are encouraged to use the open source project&#8217;s issue tracker on <a href="https://github.com/wordpress-mobile/WordPress-Android" target="_blank">GitHub</a>. Testers can also join the #mobile channel on <a href="https://make.wordpress.org/chat/" target="_blank">WordPress Slack</a>. Any testers who want to lave the beta can visit the app&#8217;s testing page and tap &#8220;<a href="https://play.google.com/apps/testing/org.wordpress.android" target="_blank">Leave the Test</a>,&#8221; followed by uninstalling and then re-installing the app from the Play Store to get the official stable version.</p>
<p>Despite having a healthy troop of beta testers, the open source app rarely receives any contributions from developers outside of Automattic. <a href="https://wptavern.com/wordpress-for-android-5-7-adds-path-to-upgrade-wordpress-com-plan" target="_blank">Recent releases</a> have included an expansion of Automattic&#8217;s monetization path with a link for users to manage and upgrade their WordPress.com plans. This has added fuel to the friction between the needs of self-hosted sites and the presence of WordPress.com features.</p>
<p>Community members who have voiced complaints about the current features and goals of the app are welcome to participate in its development on GitHub. Beta testing is still open to all and new testers can <a href="https://play.google.com/apps/testing/org.wordpress.android" target="_blank">opt in on the Google Play Store testing page</a>. The Google+ Community will close on March 6, 2017, but questions and feedback are welcome in the #mobile Slack channel where the app&#8217;s developers are frequently available.</p>
<div id="epoch-width-sniffer"></div>";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, 08 Feb 2017 03:22:32 +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:40;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:62:"WPTavern: Google Updates AMP to Allow Sharing of Canonical URL";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:29:"https://wptavern.com/?p=65660";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:73:"https://wptavern.com/google-updates-amp-to-allow-sharing-of-canonical-url";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:4925:"<a href="https://i0.wp.com/wptavern.com/wp-content/uploads/2016/04/reading.jpg?ssl=1"><img /></a><a href="https://stocksnap.io/photo/F55691D3FB">RC Cipriano</a>
<p>One of the main drawbacks of Google <a href="https://www.ampproject.org/" target="_blank">AMP</a> has been brand confusion when viewing and sharing articles. Google launched the AMP project to speed up the mobile web, but in exchange publishers have had to give up control of how their AMP&#8217;d content appears. One of the most irksome aspects of interacting with AMP pages is the convoluted URL structure, which causes users to be hesitant to share the content.</p>
<p>AMP appends google.com/amp/ to the beginning of the URL when copying the link, opening it in a browser, or sharing an article. Visitors who want to find the canonical URL have to return to Google to search for it. To the casual observer, it appears the visitor has landed on and is attempting to share a Google story.</p>
<p>After nearly a year, Google is finally looking to remedy this sharing problem with an update to the AMP Viewer header. In a <a href="https://developers.googleblog.com/2017/02/whats-in-amp-url.html" target="_blank">post</a> on the Google Developers blog, the company officially recognized this problem and announced a change that will allow visitors to share the canonical URL:</p>
<blockquote><p>Many users have requested a way to access, copy, and share the canonical URL of a document. Today, we&#8217;re adding support for this functionality in form of an anchor button in the AMP Viewer header on Google Search. This feature allows users to use their browser&#8217;s native share functionality by long-tapping on the link that is displayed.
</p></blockquote>
<a href="https://i1.wp.com/wptavern.com/wp-content/uploads/2017/02/google-amp-sharing-link.png?ssl=1"><img /></a>photo credit: Google
<p>The updated header with the anchor button is already available on the iOS Google app and will be coming to the Android app within a few weeks. Google is also working on using the <a href="https://developers.google.com/web/updates/2016/10/navigator-share" target="_blank">Web Share API</a> to let visitors use the platform&#8217;s native sharing flow with the original URL instead of the AMP viewer URL.</p>
<p>&#8220;A thriving ecosystem is very important to us and attribution, user trust, and ownership are important pieces of this ecosystem,&#8221; Alex Fischer, Google software engineer, said.</p>
<p>The ability to share the canonical URL is good news for existing AMP users but is probably not enough to convince skeptical publishers to start AMPing up their pages. Burying the publisher&#8217;s canonical link is just one of many reasons there has been such strong push back against the AMP project.</p>
<p>Kyle Schreiber, whose post on <a href="https://80x24.net/post/the-problem-with-amp/" target="_blank">the problems with AMP</a> inspired discussions on <a href="https://news.ycombinator.com/item?id=13414570" target="_blank">Hacker News</a> and <a href="https://www.reddit.com/r/programming/comments/5oggtm/the_problem_with_amp/" target="_blank">Reddit</a>, believes that &#8220;AMP is bad for the open web and should be changed or eliminated.&#8221;</p>
<p>Schreiber contends that Google has designed AMP to keep the visitor within its own ecosystem. Publishers get locked in when access to Google&#8217;s news carousel is reserved for AMP&#8217;d sites only.</p>
<p>&#8220;Clicking on an AMP link feels like you never even leave the search page, and links to AMP content are displayed prominently in Google’s news carousel,&#8221; Schreiber said.</p>
<p>Last year the <a href="https://www.wsj.com/articles/google-amp-gets-mixed-reviews-from-publishers-1477648838" target="_blank">Wall Street Journal</a> spoke with publishers who were critical with AMP but reluctant to speak publicly for fear of Google&#8217;s retaliation. Their AMP pages were generating around half as much revenue as pageviews on their full mobile sites due to Google&#8217;s limitations on the type of ad units available for AMP pages. Google&#8217;s response was that the company aims to drive more revenue to non-AMP pages but isn&#8217;t quite there yet.</p>
<p>At the end of February the AMP project experiment will have been publicly launched for a year but many smaller publishers are still hesitant to get on board. They are concerned that AMP oversteps its reach without delivering enough value in return. The strategy of taking an absurd amount of control over publishers&#8217; content and then slowly doling it back out (as with the new button for sharing the canonical URL) demonstrates how easily Google has established itself as the de facto arbiter of the mobile web. If publishers continue to yield control of their mobile content, Google will have every incentive to make AMP support the next official ranking signal.</p>
<div id="epoch-width-sniffer"></div>";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, 07 Feb 2017 18:58:51 +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:41;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:30:"HeroPress: Hitting Rock Bottom";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:56:"https://heropress.com/?post_type=heropress-essays&p=1592";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:49:"https://heropress.com/essays/hitting-rock-bottom/";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:5441:"<img width="960" height="480" src="http://20094-presscdn.pagely.netdna-cdn.com/wp-content/uploads/2017/02/020817-1024x512.jpg" class="attachment-large size-large wp-post-image" alt="Pull Quote: We all need someone to listen. Someone to remind us that it gets better. That we will make it to tomorrow." /><p>I’d never been to The Capital Grille. I’d been to nice steak houses before, but this felt like a big deal. At least it should have. I was too busy freaking out because my wife wasn’t responding to one of my texts. That’s when I knew I hit rock bottom. That mental illness had taken full control. Ruining a $50 steak will make you realize that.</p>
<p>I hit my rock bottom in the middle of WordCamp Orlando 2016. Sitting across from the wonderful Mike Hansen, sharing the best mashed potatoes I’d ever had, I was miserable. Not because Mike was bad company, but because I was so inside my head that I couldn’t control my thoughts. Dark thoughts. Suicidal thoughts. I was a mess, but Mike and the rest of the crew from BlueHost tried to keep me calm and engaged in conversation. I kept apologizing, but they stuck with me. It was pretty obvious I wasn’t okay, and they did their best. That’s what WordPress is. When you hear about “the community,” that’s what we’re really talking about.</p>
<p>The next day, I was originally scheduled to speak, but had already backed out. As an organizer of the event, I felt awful. I know how much of a pain it is to rearrange the schedule last-minute because I’m the one, at least for the past 3 years, has made Orlando’s schedule. But the team rallied around me.</p>
<blockquote><p>They knew I wasn’t okay, and supported me without me needing to ask.</p></blockquote>
<p>But then something amazing happened.</p>
<p>In the confusion of rescheduling speakers &#8211; caused by Hurricane Matthew, not Hurricane Mental Illness &#8211; a replacement speaker for one of our workshops had never actually been notified that he was speaking and didn’t show. Whoops. Even though I’d planned to just lay low in the developer workshop all day, as soon as I got word that a replacement was needed, I grabbed my laptop and headed to the next room. I don’t remember much of what I said, but I gave a talk on themes completely off the top of my head. And then it hit me. I know what I’m doing. I can do this. I’m going to be okay.</p>
<h3>Road To Recovery</h3>
<p>The next day, I went to see my doctor. I was diagnosed as bipolar. The dragon I’d been fighting for 15 years finally had a name. Two prescriptions later and I was on the road to recovery. I’m still on it, but WordPress is helping drive the engine.</p>
<p>Since WordCamp Orlando, my business has taken off. I’ve started and completed more projects in the past 3 months than I did the entire rest of 2016. And all of that was possible because of the support I received that weekend. When we talk about how wonderful the WordPress community really is, we mean it. It saves lives.</p>
<p>There’s a lot more to my story &#8211; coming out as non-binary, a shuttering business partnership to salvage a great friendship &#8211; but I don’t want to ramble.</p>
<blockquote><p>It’s time to pay the support I received forward.</p></blockquote>
<p>We all need someone to listen. Someone to remind us that it gets better. That we will make it to tomorrow.</p>
<p>If you’re struggling, drop me a line on <a href="https://twitter.com/adamsoucie">Twitter</a> or send an email. I’ll be waiting on the other end to lend an ear and a helping hand.</p>
<div class="rtsocial-container rtsocial-container-align-right rtsocial-horizontal"><div class="rtsocial-twitter-horizontal"><div class="rtsocial-twitter-horizontal-button"><a title="Tweet: Hitting Rock Bottom" class="rtsocial-twitter-button" href="https://twitter.com/share?text=Hitting%20Rock%20Bottom&via=heropress&url=https%3A%2F%2Fheropress.com%2Fessays%2Fhitting-rock-bottom%2F" rel="nofollow" target="_blank"></a></div></div><div class="rtsocial-fb-horizontal fb-light"><div class="rtsocial-fb-horizontal-button"><a title="Like: Hitting Rock Bottom" class="rtsocial-fb-button rtsocial-fb-like-light" href="https://www.facebook.com/sharer.php?u=https%3A%2F%2Fheropress.com%2Fessays%2Fhitting-rock-bottom%2F" rel="nofollow" target="_blank"></a></div></div><div class="rtsocial-linkedin-horizontal"><div class="rtsocial-linkedin-horizontal-button"><a class="rtsocial-linkedin-button" href="https://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fheropress.com%2Fessays%2Fhitting-rock-bottom%2F&title=Hitting+Rock+Bottom" rel="nofollow" target="_blank" title="Share: Hitting Rock Bottom"></a></div></div><div class="rtsocial-pinterest-horizontal"><div class="rtsocial-pinterest-horizontal-button"><a class="rtsocial-pinterest-button" href="https://pinterest.com/pin/create/button/?url=https://heropress.com/essays/hitting-rock-bottom/&media=https://heropress.com/wp-content/uploads/2017/02/020817-150x150.jpg&description=Hitting Rock Bottom" rel="nofollow" target="_blank" title="Pin: Hitting Rock Bottom"></a></div></div><a rel="nofollow" class="perma-link" href="https://heropress.com/essays/hitting-rock-bottom/" title="Hitting Rock Bottom"></a></div><p>The post <a rel="nofollow" href="https://heropress.com/essays/hitting-rock-bottom/">Hitting Rock Bottom</a> appeared first on <a rel="nofollow" href="https://heropress.com">HeroPress</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:"Tue, 07 Feb 2017 12:00: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:11:"Adam Soucie";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:42;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:110:"WPTavern: WordPress REST API Vulnerability is Being Actively Exploited, Hundreds of Thousands of Sites Defaced";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:29:"https://wptavern.com/?p=65651";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:120:"https://wptavern.com/wordpress-rest-api-vulnerability-is-being-actively-exploited-hundreds-of-thousands-of-sites-defaced";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:5617:"<a href="https://i0.wp.com/wptavern.com/wp-content/uploads/2017/02/needle.jpg?ssl=1"><img /></a>photo credit: stevendepolo <a href="http://www.flickr.com/photos/10506540@N07/3020361085">hypodermic needle IMG_7418</a> &#8211; <a href="https://creativecommons.org/licenses/by/2.0/">(license)</a>
<p>At the end of January, <a href="https://wordpress.org/news/2017/01/wordpress-4-7-2-security-release/" target="_blank">WordPress 4.7.2</a> was released to fix four security issues, three of which were disclosed at the time of the release. These included a SQL injection vulnerability in WP_Query, a cross-site scripting (XSS) vulnerability in the posts list table, and the Press This feature allowing users without permission to assign taxonomy terms. The fourth and most critical issue, an unauthenticated privilege escalation vulnerability in a REST API endpoint, was fixed silently and <a href="https://make.wordpress.org/core/2017/02/01/disclosure-of-additional-security-fix-in-wordpress-4-7-2/" target="_blank">disclosed a week after the release</a>.</p>
<p>Contributors on the release opted to delay disclosure in order to mitigate the potential for mass exploitation, given that any site running 4.7 or 4.7.1 is at risk. This allowed time for users to update manually and for automatic updates to roll out.</p>
<p>&#8220;We believe transparency is in the public’s best interest,&#8221; WordPress Core Security Team Lead Aaron Campbell said. &#8220;It is our stance that security issues should always be disclosed. In this case, we intentionally delayed disclosing this issue by one week to ensure the safety of millions of additional WordPress sites.&#8221;</p>
<p>WordPress worked with <a href="https://sucuri.net/" target="_blank">Sucuri</a>, the company that discovered the issue, along with other WAF vendors and hosting companies to add protections before the vulnerability was publicly disclosed.</p>
<p>The vulnerability has been public for less than a week and is now being actively exploited. Thousands of WordPress sites have been defaced with messages like “<a href="https://wordpress.org/support/topic/wordpress-4-7-1-hacked-by-ng689skw/" target="_blank">Hacked by NG689Skw</a>” or &#8220;Hacked by w4l3XzY3&#8221; or similar. Googling for information about these particular hacks returns thousands of other hacked sites in the results.</p>
<p>Sucuri founder and CTO Daniel Cid said his team saw exploits in the wild less than 24 hours after the disclosure. The attacks are primarily simple defacements so far.</p>
<p>&#8220;There are some good bad guys updating the post excerpt with the message: &#8216;Update WordPress or you will be hacked,&#8217; which is kind weird,&#8221; Cid said. &#8220;But overall we&#8217;re seeing just simple defacement attempts, using modified versions of the exploit that was shared publicly.&#8221;</p>
<h3>Multiple Campaigns Have Defaced Hundreds of Thousands of WordPress Sites</h3>
<p>Sucuri is monitoring multiple defacement campaigns, each with varying degrees of success. The company <a href="https://blog.sucuri.net/2017/02/wordpress-rest-api-vulnerability-abused-in-defacement-campaigns.html" target="_blank">published an update</a> on the active attacks as well as the IP addresses they are originating from.</p>
<p>&#8220;We are currently tracking four different hacking (defacement) groups doing mass scans and exploits attempts across the internet,&#8221; Cid said. &#8220;We see the same IP addresses and defacers hitting almost every one of our honeypots and network.&#8221;</p>
<p>One defacement campaign Sucuri is tracking already has more than 68,000 pages indexed on Google. After perusing the WordPress.org forums, the problem seems to have a much larger reach than Sucuri&#8217;s network has initially detected. For example, &#8220;Hacked by NG689Skw&#8221; returns approximately 200K indexed results. &#8220;Hacked By SA3D HaCk3D&#8221; returns more than 100K results. There are multiple permutations of this defacement in play on WordPress websites across the web.  Not all results that share this same campaign structure are guaranteed to be associated with this vulnerability, but the few listed above were recent posts on the WordPress.org forum from users who failed to update to 4.7.2 in time.</p>
<p><a href="https://i0.wp.com/wptavern.com/wp-content/uploads/2017/02/hacked-wordpress-sites.png?ssl=1"><img /></a></p>
<p>&#8220;On our end, we are seeing a big growth on exploit attempts, specially for defacement,&#8221; Cid said. &#8220;But SPAM SEO is slowly growing too.&#8221;</p>
<p>Cid said the vulnerability allows attackers to inject content into a post or page by default, but defacement is the easy first step, along with SEO spam. If a site has a plugin like <a href="https://wordpress.org/plugins/insert-php/" target="_blank">Insert PHP</a> or <a href="https://wordpress.org/plugins/php-code-widget/" target="_blank">PHP Code Widget</a> installed, the vulnerability can lead to remote code execution. These two plugins have more than 300K combined active installs and there are others that perform similar functions.</p>
<p>&#8220;The core of the issue is people not updating,&#8221; Cid said. &#8220;Even with auto and simple updates, people still do not update their sites.&#8221;</p>
<p>Needless to say, if you haven&#8217;t updated to 4.7.2 and your site is running 4.7.0 or 4.7.1, you are at risk for  content injection. For most sites that have been defaced, the simplest solution is to update to the latest version of WordPress and rollback the defaced post(s) to a revision.</p>
<div id="epoch-width-sniffer"></div>";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, 07 Feb 2017 00:36: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: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:43;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:75:"WPTavern: BlogVault Security Breach Infects Customers’ Sites With Malware";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:29:"https://wptavern.com/?p=65658";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:"https://wptavern.com/blogvault-security-breach-infects-customers-sites-with-malware";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:2120:"<img />photo credit: Anonymous Account <a href="http://www.flickr.com/photos/37053322@N00/2291139919">Code</a> &#8211; <a href="https://creativecommons.org/licenses/by/2.0/">(license)</a>
<p><a href="https://blogvault.net/">BlogVault</a>, a real-time backup and migration service with a <a href="https://wordpress.org/plugins/blogvault-real-time-backup/">WordPress plugin</a> that&#8217;s active on more than 20K sites, <a href="https://blogvault.net/security-notification/">announced</a> over the weekend that it suffered a security breach that exposed data. Akshat Choudhary, founder of BlogVault, <a href="https://blogvault.net/help/info">explains</a> that some customer sites were accessed without authorization and were infected with malware.</p>
<p>BlogVault is contacting customers whose sites are affected and removing malware to secure the data. According to Choudhary, all backups generated by BlogVault are safe. FTP, login credentials, and payment related data is safe. The service doesn&#8217;t store credit card information as payments are processed through <a href="https://stripe.com/">Stripe</a>.</p>
<p>The service has carried out a series of security precautions including, updating <a href="https://wordpress.org/plugins/blogvault-real-time-backup/">the plugin to 1.45</a>, resetting passwords for all customer accounts, and is meticulously analyzing its systems. Customer passwords were encrypted, making them difficult to retrieve.</p>
<p>BlogVault is sharing information about the breach as it becomes available. &#8220;We understand that it can be frustrating for you; as it is for us, to not have all the information,&#8221; Choudhary said. &#8220;We aim to be comprehensive in our response to the issue. Once we have safeguarded our customers’ data, and our investigation is complete we will be able to share more details.&#8221;</p>
<p>Customers are encouraged to update the BlogVault plugin to 1.45 as soon as possible and to keep an eye on the service&#8217;s <a href="https://blogvault.net/help/info">security updates page</a> for new information.</p>
<div id="epoch-width-sniffer"></div>";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, 06 Feb 2017 22:04:48 +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:44;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:55:"WPTavern: Content Creation Is About More Than an Editor";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:29:"https://wptavern.com/?p=65626";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:66:"https://wptavern.com/content-creation-is-about-more-than-an-editor";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:16655:"<a href="https://i2.wp.com/wptavern.com/wp-content/uploads/2017/02/ReidPeifer.jpeg?ssl=1"><img /></a>Reid Peifer
<p>This is a guest post written by <span class="st"><a href="https://twitter.com/reidpeifer?lang=en">Reid Peifer</a>, Partner and Art Director at <a href="http://tri.be/">Modern Tribe</a>. In this post, Peifer shares his experience, opinions, and things to consider as the content creation experience in WordPress <a href="https://make.wordpress.org/core/2017/01/17/editor-technical-overview/">is revamped</a>.<br />
</span></p>
<hr />
<p>Let’s imagine a world where the tools that we have don’t limit us, but instead enable us to create unique, contextual, and thoughtful content. We don&#8217;t fight with them, we don&#8217;t quibble over line breaks and margins.</p>
<p>We don&#8217;t argue about whether or not two images should line up. We’re not limited to bold, italic, underline, and bullet points to express our ideas. We’re not limited to taxonomies for our organization and obtuse relational algorithms to determine complementary content.</p>
<p>This is the reality that we should have. Content management should be more than TinyMCE and meta boxes. While WordPress has continued to grow into a mature platform, the focus on what should be its core mission has taken a second seat.</p>
<p>We (the WordPress community at large) have gotten so excited about making WordPress awesome, we lost sight of our charge &#8211; to enable WordPress to make awesome things. To democratize publishing. To get the stories out of people&#8217;s heads and hearts and out to the world.</p>
<p>We forgot about content. Without content, WordPress and all its bits and bobs amount to much ado about nothing. While it’s true that WordPress has grown to an almost unimaginable scale, the content it creates today isn’t going to support the needs of tomorrow’s web.</p>
<p>I couldn’t make it to WordCamp US, but I’ll admit that I sat slack-jawed with joy listening to the <a href="https://wordpress.tv/2016/12/07/matt-mullenweg-state-of-the-word-2016/">video</a> calling for a focus on the editor in 2017.</p>
<p>The <a href="https://make.wordpress.org/core/2017/01/17/editor-technical-overview/">initial discussions</a> happening on make.wordpress.org and within slack are incredibly encouraging. The community has taken this charge and is moving forward with a passion that reflects the importance of the task at hand.</p>
<p>While I absolutely applaud their effort, and think the conversation thus far has been valuable &#8211; it immediately went to the editor itself. What makes a good editor? The discussion is focused on the UI, what format the data should be stored in, should shortcodes be used etc. All good questions, but if we answer them first &#8211; we limit the scope of our inquiry.</p>
<p>The first question should be ‘what makes good content’? What is ‘content’? Does content only live on the post or the page? What are its essential elements? How do those elements interact and relate to each other? What’s the life cycle of content? Where and how does it surface throughout the site? Does content behave differently in different scenarios or positions?</p>
<p>If we start with these questions, their answers become our objectives for the UI. The question &#8216;what makes a good editor&#8217; has a clear answer &#8211; one that makes achieving these goals delightful and effortless.</p>
<h2>The Need for a More Robust Content Creation Tool Is Not New</h2>
<p>Years ago, when ‘magazine layout’ was the new hot thing, we had the privilege of working with some large publications. In our design discovery, we learned how they thought about the presentation of their content, how layouts would change based on the content they were presenting that day.</p>
<p>The rigid templates of the web that we were used to building couldn’t possibly meet the strategy that they had employed for ages in print. The sports, business, and lifestyle sections all needed to be able to leverage different layouts and presentation depending on their immediate needs.</p>
<p>They needed to change day after day. We were going to toss out what we knew about building sites in WordPress. We were going to have to ditch the template hierarchy and start from scratch. The taxonomy term page in the admin wasn’t going to cut it.</p>
<p>Meanwhile, ‘art directed’ or ‘editorial posts’ became a thing. Folks like Jason Santa Maria and Trent Walton were pumping out beautiful, bespoke articles rich in editorial design. I’ve never been more excited about the web’s potential than when I saw those first Jason Santa Maria articles &#8211; I’m a sucker for good content design.</p>
<p>At some point shortly thereafter the NY Times published <a href="http://www.nytimes.com/projects/2012/snow-fall/#/?part=tunnel-creek">Snowfall</a>, and everyone we talked to needed ‘long form’ (even if they had no idea why or what that could mean). I ran my own experiments trying to recreate that functionality in WordPress &#8211; at the time that meant full markup and a reams of custom CSS all cooked into the WYSIWYG. Beautiful output, crappy experience.</p>
<p>These are two really common (and old) examples of how the content needs more than the tool can offer.</p>
<p>We toiled away at these challenges over the years and have solved them for our particular use cases. Every project pushes our own solutions forward. Here’s some of what we learned.</p>
<p><em>(So we’re all talking in the same terms, below when I reference Content Creation I mean the act of creating a new piece of content. When I reference content management, I mean both the content model, and the organization and presentation of content throughout the site.)</em></p>
<h2>We Should Learn From Modular Development &amp; Atomic Design</h2>
<p>We should be applying modular development and atomic design principles to both content creation and content management.</p>
<a href="http://bradfrost.com/blog/post/atomic-web-design/"><img /></a>Atomic Design Principle as Explained by Brad Frost
<p>We’ve adopted a modular and systematic thinking to our coding practices, breaking once monolithic templates into smaller reusable parts. We’ve applied design systems thinking and atomic approaches to our UI/UX and visual design work.</p>
<p>Small pieces come together to create components, which come together to create pages which come together to create full experiences. It’s the LEGO blocks school of design and build. This is a refrain that many of us know well.</p>
<h2>Extending That Philosophy to Content Creation and Management</h2>
<p>While we’ve embraced this idea of systemic thinking in how we design and the infrastructure of what we build &#8211; we haven’t gotten to thinking about how to approach content creation and content management (content strategy) in a similarly modular fashion.</p>
<p>This is primarily because our tools won’t let us apply modular thinking to content creation and management. CMSs, including WordPress, are generally limited to predefined structures and organizational models.</p>
<p>The role of templating in the overall CMS architecture limits the flexibility of our content creators. Today, content strategy occurs before, and then is at the mercy of development. In a better world, our content strategy could use design and development to grow, adapt, and change over time gracefully. Our publishing tools could become the method by which our ongoing content strategy evolves.</p>
<h2>Modular Content Creation</h2>
<p>Let’s think about the idea of content on the web. Much of what we see on the web today is a logical baby step forward from print. Titles and headlines, paragraphs of copy, images, pull quotes. Those pieces are a 1:1 analog. Because it’s a digital medium, and we’re oh so clever, we’ve included videos, image galleries, those dang carousels, and whatnots as well.</p>
<p>For most of you, those elements are plopped onto a webpage using a WYSIWYG editor. You fight with TinyMCE for supremacy. Perhaps your theme or plugin has dedicated meta boxes for special elements. There may be a slide show or gallery at the top of the page.</p>
<p>When we look at most executions of content on the web, they are in fact less interesting, less engaging, and less beautiful than what our print counterparts have been doing for ages (and I mean literal ages).</p>
<p>We have all of the advantages but fail at creating anything more interesting than a preformatted spew of content. Our insistence that content and presentation need to be separate is an overstep &#8211; they are related at their very core. Was there an earth shattering news story yesterday? Too bad, you get the same 400px featured image slot that every other story gets.</p>
<p><strong>I refuse to believe this is the best we can do.</strong></p>
<p><strong>TinyMCE is not the pinnacle of content creation tools.</strong></p>
<p>The platform that can figure out how to make content creation engaging and powerful is the platform that is going to continue to grow. While Calypso is an interesting engineering feat and is a helpful model for future development, it did little to push forward what it actually means to create content within the WordPress framework.</p>
<p><strong>Trying to fight this out in a single WYSIWYG sucks</strong></p>
<p>Our content creation tools should allow us to approach content creation the same way that we think about design. What are the atomic elements of my content strategy? How can I remix, reassemble, and work with those elements to create interesting content?</p>
<p>It must be systemic. All of the elements and components must work as part of an overall structure and strategy to form a coherent whole. Just like our design work, and our development work. Our strategy, design, and development process is focused on identifying and creating patterns.</p>
<p>Throughout the content strategy and design portion of the project, we’re focused on identifying what those patterns are at their very core; how do we break them down into their smallest parts? Then, through design and development, we start putting those pieces together in a way that supports internal objectives and end-user objectives.</p>
<ul>
<li>Elements &#8211; the simplest unit. Strings of text, single images, videos, a form input field or button</li>
<li>Components or blocks &#8211; groupings of elements that form a cohesive unit</li>
<li>Modules &#8211; groupings of complementary components to for a larger whole</li>
<li>Pages (or posts, or CPTS or whatever) &#8211; groupings of modules to form a complete piece of content</li>
</ul>
<p>To push WordPress’ content creation tools forward, we must look at what those elements, components, and modules could be, how they relate to each other. Are they created on the fly, are they opinionated or flexible. Then how do we create them. How do they relate to themes and data sanctity. And on and on.</p>
<h2>Modular Content Management (modular content strategy)</h2>
<p>While there are enough visual references to start to imagine what a modular content creation tool looks like, modular content management is a bit tougher to visualize so hang with me.</p>
<p>Within modern CMSs we’ve got a couple of tools at our disposal. Tags and categories, coupled with parent / child relationships, are the primary organization structures cooked into WordPress. Of course those can be extended to include any number of taxonomical structures imaginable.</p>
<p>Tools like Post to Posts (P2P) provide and create an interesting peer-to-peer layer allowing you to create 1:1, 1:many, or many:many relationships.</p>
<p>That’s pretty much it. The mechanics of relationships are defined and subject to code. I can assign content into those defined buckets. I have fixed templates that display those buckets in predetermined ways. If I want to vary from that, if I want to create relationships and remix content as a content manager or a content creator, I’m outta luck.</p>
<p>Think about the category term screen within WordPress. What sort of content management tools do you have at your disposal there? What can you do? What can you <em>manage</em>? Not much at all. Look back over the history of WordPress releases &#8211; when has that screen changed?</p>
<p>We are not living up to our potential if we stop at a taxonomical organization as the be-all-end-all of content management.</p>
<p>The Loop is one of the central concepts of WordPress content management. While it is incredibly powerful and key to understanding how to think about your content, it’s the beginning, not the end, of content management. We cannot stop at the &#8216;list&#8217; as the pinnacle of our content strategy.</p>
<h3>Needs Change Over Time</h3>
<p>We do a lot of work for universities and schools. Each and every one has a category landing page dedicated to current students. Throughout the year, they want to gather and surface all kinds of different elements, pieces of content, and tools for those students.</p>
<p>In WordPress terms, we’ve got pages, blog posts, events, tools, resources, key dates, applications and files, on top of video galleries and who knows what other CPTs your content strategy has formed.</p>
<p>The needs of those students change through the year &#8211; welcome materials in the fall, midterm information in the winter, job support and internship programs in the spring. If our university friends were tied to templates where those needs were articulated in code, they’d need to go back under the hood to update their content strategy and approach it at least quarterly.</p>
<h3>Relationships Should Be Richer Than Taxonomy Terms</h3>
<p>Real content management would enable content creators to package and present the things they’ve made in thoughtful and unique ways&#8211;where the relationships and connections have value beyond each individual piece. Together they become a cohesive whole. That’s a content strategy that’s worth a damn. If you can’t do that, your content strategy is really just a thoughtful list of categories and tags.</p>
<p>Our content management tools should enable and empower you to gather your content and present it how you need to. You shouldn’t be limited solely by lists and algorithms. We want our clients to be able to create unique cross-sections of content where they need, not where they happen to have pre-baked templates that allow them do so.</p>
<p>An example to help visualize: Sticking with our college student, imagine the registrar publishes a deadline for financial aid application. The residential life department has updated forms for getting a spot in the dorms.</p>
<p>The student life department publishes a list of events for new students to meet each other. Each piece of content lives in its own silo in disparate places on the university website. Now imagine you’re in the communications department, and you’ve been charged with ensuring that new students get the information they need.</p>
<p>Do you <strong>A:</strong> manually type excerpts to those pieces of content in a sidebar widget, hardcode some links trying to apply a specific class that makes the links look like buttons but you can’t remember if it’s .btn_round or .btnround or .round_btn_blue_large, and pray it stays in the same place <strong>OR B:</strong> create a &#8216;Key Info for New Students&#8217; module by referencing each piece of content dynamically and dragging it at the top of the homepage displacing the out of date commencement gallery that you forgot to take down last spring?</p>
<p>Old school is option A. New School option B (and it’s not the cool old school, it’s the lame frustrating old school).</p>
<h3>The Way Forward Is Modular</h3>
<p>If you’re new the concept of atomic design, read <a href="http://bradfrost.com/blog/post/atomic-web-design/">this piece</a> by Brad Frost first. If you want to see how we solved some of these problems specifically &#8211; there’s a couple of WordPress.TV talks where I harp on this stuff <a href="https://wordpress.tv/2015/10/26/reid-peifer-reimagining-content-creation/">here</a> and <a href="https://wordpress.tv/2014/05/08/reid-peifer-so-long-fixed-templates-and-thanks-for-all-the-fish-modular-content-with-wordpress/">here</a>.</p>
<p>We’ve got to strive for more than just an updated WYSIWYG editor. We’ve got to aspire to a bigger and broader understanding of what content is and could be. When we’ve got that vision, we’ll be able to build tools to help realize it.</p>
<div id="epoch-width-sniffer"></div>";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, 04 Feb 2017 05:32: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:"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:45;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:55:"WPTavern: More Than 50% of Web Traffic is Now Encrypted";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:29:"https://wptavern.com/?p=65505";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://wptavern.com/more-than-50-of-web-traffic-is-now-encrypted";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:6155:"<a href="https://i1.wp.com/wptavern.com/wp-content/uploads/2017/01/lock.jpg?ssl=1"><img /></a>photo credit: <a href="https://stocksnap.io/photo/550FJBDFSW">Chris Anderson</a>
<p>In October 2016 <a href="https://support.mozilla.org/en-US/kb/share-telemetry-data-mozilla-help-improve-firefox" target="_blank">Mozilla Telemetry</a> showed <a href="https://twitter.com/letsencrypt/status/786977436109934592" target="_blank">more than 50% of page loads were encrypted with HTTPS</a>. This week Let&#8217;s Encrypt is reporting that more than 50% HTTPS page loads is now the norm, a major milestone for HTTPS adoption across the web.</p>
<blockquote class="twitter-tweet">
<p lang="en" dir="ltr">Per <a href="https://twitter.com/firefox">@Firefox</a> Telemetry, more than 50% HTTPS page loads is now the norm! <a href="https://t.co/7mo8VPrpbq">pic.twitter.com/7mo8VPrpbq</a></p>
<p>&mdash; Let's Encrypt (@letsencrypt) <a href="https://twitter.com/letsencrypt/status/826198258355572736">January 30, 2017</a></p></blockquote>
<p></p>
<p><a href="https://www.google.com/transparencyreport/https/metrics/?hl=en" target="_blank">Google&#8217;s Transparency Report</a> shows similar numbers for HTTPS usage, confirming that secure browsing has become the norm. Google found that HTTPS is less prevalent on mobile devices than desktop but the percentage of pages loaded over HTTPS is steadily on the rise across the board.</p>
<p><a href="https://i2.wp.com/wptavern.com/wp-content/uploads/2017/01/percentage-pages-loaded-over-https.png?ssl=1"><img /></a></p>
<p>The launch of <a href="https://letsencrypt.org/" target="_blank">Let&#8217;s Encrypt</a>, the new free and open certificate authority, is one of the main factors causing the rapid rise in secure traffic. Thanks to sponsorships and partnerships with hosting companies and services, Let&#8217;s Encrypt closed out 2016 with more than <a href="https://wptavern.com/lets-encrypt-passes-20-million-active-certificates-in-2016" target="_blank">20 million active certificates</a>.</p>
<p>Google&#8217;s influence has also been one of the driving factors in HTTPS adoption after the search engine <a href="https://webmasters.googleblog.com/2014/08/https-as-ranking-signal.html" target="_blank">announced</a> in 2014 that it was starting to use HTTPS as a ranking signal. As of 2017, Google Chrome is<a href="https://wptavern.com/chrome-to-add-security-warning-to-http-sites-beginning-2017" target="_blank"> adding a prominent security warning for HTTP sites</a>.</p>
<p>Throughout 2016 many major publications moved to HTTPS, including the <a href="https://www.theguardian.com/info/developer-blog/2016/nov/29/the-guardian-has-moved-to-https" target="_blank">Guardian</a>, <a href="https://developer.washingtonpost.com/pb/blog/post/2015/12/10/moving-the-washington-post-to-https/" target="_blank">Washington Post</a>, <a href="https://www.wired.com/2016/09/wired-completely-encrypted/" target="_blank">Wired</a>, <a href="https://www.engadget.com/2016/06/10/engadget-moved-to-https-because-we-love-you/" target="_blank">Engadget</a>, <a href="https://arstechnica.com/information-technology/2017/01/ars-announces-https-by-default-finally/" target="_blank">Ars Technica</a>, and <a href="https://open.blogs.nytimes.com/2017/01/10/https-on-nytimes-com/?_r=0" target="_blank">New York Times</a>, to name a few. Nearly all of them publicly documented the challenges and triumphs of their HTTPS transitions.</p>
<p>In July 2016, security researcher Scott Helme crawled the Alexa Top 1 million sites to measure how security is progressing on the web. In his previous scans, which included August 2015 and February 2016, the top million sites saw a 42% increase in HTTPS adoption. <a href="https://scotthelme.co.uk/alexa-top-1-million-crawl-aug-2016/" target="_blank">Helme&#8217;s July 2016 crawl</a> showed a 46% increase from February 2016.</p>
<p><a href="https://i1.wp.com/wptavern.com/wp-content/uploads/2017/01/helme-https-adoption-stats.png?ssl=1"><img /></a></p>
<p>Despite the overall growth, the number of HTTPS-enabled sites is just 13.75% of Alexa&#8217;s top million. However, these are the sites that serve the most traffic: Google, YouTube, Facebook, Amazon, and others. These results are consistent with Electronic Frontier Foundation&#8217;s (EFF) <a href="https://www.eff.org/deeplinks/2016/10/lets-encrypt-largest-certificate-authority-web" target="_blank">reports</a> that HTTPS adoption is growing the fastest with smaller, previously-unencrypted sites.</p>
<p>Let&#8217;s Encrypt&#8217;s launch has also had a ripple effect on commercial certificate authorities who are now moving to offer domain validated SSL certificates for free in order to promote their other security products. Symantec is now partnering with hosting companies to issue free certificates as part of its <a href="https://www.symantec.com/content/dam/symantec/docs/other-resources/ee-program-guide-combined-en.pdf" target="_blank">Encryption Everywhere</a> program. Comodo also <a href="https://www.comodo.com/news/press_releases/2016/12/worlds-largest-CA-comodo-and-web-hosting-platform-leader-cPanel.html" target="_blank">announced</a> a partnership with cPanel in December 2016 to automatically issue SSL certificates at no additional costs to consumers via cPanel&#8217;s AutoSSL feature.</p>
<p>Securing half the web&#8217;s traffic is a major landmark on the road to a fully encrypted web, but encryption advocates will need to continue educating website owners on the benefits of making the switch to HTTPS. With the necessary infrastructure now in place for anyone to get an auto-renewing SSL certificate for free, Let&#8217;s Encrypt director Josh Aas is optimistic about progress on the remaining 50% of the web.</p>
<p>&#8220;As exciting as 2016 was for encryption on the Web, 2017 seems set to be an even more incredible year,&#8221; Aas said &#8220;Much of the infrastructure and many of the plans necessary for a 100 percent encrypted Web really solidified in 2016, and the Web will reap the rewards in 2017. Let’s Encrypt is proud to have been a key part of that.&#8221;</p>
<div id="epoch-width-sniffer"></div>";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, 03 Feb 2017 23:36:12 +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:46;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:"Donncha: WP Super Cache 1.4.9";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:"https://odd.blog/?p=89500145";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:49:"https://odd.blog/2017/02/03/wp-super-cache-1-4-9/";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:5137:"<p>There&#8217;s a new release of <a href="https://wordpress.org/plugins/wp-super-cache/">WP Super Cache</a> out and it&#8217;s a security release to fix XSS problems in the settings pages. Those pages are only accessible by admin users so an anonymous visitor to your site can&#8217;t come along and enable it to steal your login cookies but along with those fixes come many bug fixes so it&#8217;s worth upgrading if you&#8217;re using an old version.</p>
<p>From the Changelog:</p>
<blockquote>
<ul>
<li>Fixed bug when not running sem_remove after sem_release. See <a href="https://github.com/Automattic/wp-super-cache/issues/85" rel="nofollow">https://github.com/Automattic/wp-super-cache/issues/85</a></li>
<li>Fixed a PHP error impacting PHP 7.1.</li>
<li>Fixed a bug where we cached PUT and DELETE requests. We&#8217;re treating them like POST requests now.</li>
<li>Delete supercache cache files, even when supercache is disabled, because mod_rewrite rules might still be active.</li>
<li>Updated the settings page, moving things around. <a href="https://github.com/Automattic/wp-super-cache/pull/173" rel="nofollow">#173</a></li>
<li>Make file locking less attractive on the settings page and fixed the WPSC_DISABLE_LOCKING constant so it really disables file locking even if the user has enabled it already.</li>
<li>Added a WPSC_REMOVE_SEMAPHORE constant that must be defined if sem_remove() is to be used as it may cause problems.  <a href="https://github.com/Automattic/wp-super-cache/pull/174" rel="nofollow">#174</a></li>
<li>Added a &#8220;wpsc_delete_related_pages_on_edit&#8221; filter that on returning 0 will disable deletion of pages outside of page being edited. <a href="https://github.com/Automattic/wp-super-cache/pull/175" rel="nofollow">#175</a></li>
<li>Fixed plugin deleting all cached pages when a site had a static homepage. <a href="https://github.com/Automattic/wp-super-cache/pull/175" rel="nofollow">#175</a></li>
<li>Make sure $cache_path has a trailing slash <a href="https://github.com/Automattic/wp-super-cache/pull/77" rel="nofollow">#177</a></li>
<li>Remove flush() <a href="https://github.com/Automattic/wp-super-cache/pull/127" rel="nofollow">#127</a> but also check if headers are empty and flush and get headers again. <a href="https://github.com/Automattic/wp-super-cache/pull/179" rel="nofollow">#179</a></li>
<li>Add fix for customizer <a href="https://github.com/Automattic/wp-super-cache/pull/161" rel="nofollow">#161</a> and don&#8217;t cache PUT AND DELETE requests <a href="https://github.com/Automattic/wp-super-cache/pull/178" rel="nofollow">#178</a></li>
<li>Check for superglobals before using them. <a href="https://github.com/Automattic/wp-super-cache/pull/131" rel="nofollow">#131</a></li>
</ul>
</blockquote>
<p>You can click through to each of the Github pull requests above to see discussion around each bug fix.</p>
<p>If you&#8217;re hosting many sites that use WP Super Cache and you&#8217;re seeing issues with semaphores it may mean that your users are using file locking. It&#8217;s really not needed and in <a href="https://github.com/Automattic/wp-super-cache/pull/174">#174</a> there&#8217;s a fix that went into this release. You can disable file locking completely by setting the constant &#8220;WPSC_DISABLE_LOCKING&#8221; in a global configuration file. The file locking simply slowed down how fast cache files were created and is a hold-over from WP Cache when that plugin used to write directly to the cache files. This plugin writes to temporary files before moving to the final cache files so that locking isn&#8217;t really needed, but some sites still use it which is why it&#8217;s still around.</p>
<p>I&#8217;ve already been working on the next release with efforts <a href="https://github.com/Automattic/wp-super-cache/pull/177">to move the legacy cache files</a> into the supercache directories. This will make it easier to maintain them and improve performance. We really need to find a better name for this caching method however. It caches everything &#8211; page contents and http headers so it&#8217;s quite useful!<br />
If you&#8217;re going to test that PR, try <a href="https://github.com/Automattic/wp-super-cache/pull/176">#176</a> too. The plugin only deletes index.html type files right now but this chunk of code cleans up various for loops in the plugin and also deletes any file in the named directory. There are some restrictions on it so it won&#8217;t delete anything outside the cache directory.</p>
<p>Thanks to everyone who contributed to this release!</p>

<p><strong>Related Posts</strong><ul><li> <a href="https://odd.blog/2008/10/24/wp-super-cache-084-the-garbage-collector/" rel="bookmark" title="Permanent Link: WP Super Cache 0.8.4, the garbage collector">WP Super Cache 0.8.4, the garbage collector</a></li><li> <a href="https://odd.blog/2009/01/09/wp-super-cache-087/" rel="bookmark" title="Permanent Link: WP Super Cache 0.8.7">WP Super Cache 0.8.7</a></li><li> <a href="https://odd.blog/2010/02/08/wp-super-cache-099/" rel="bookmark" title="Permanent Link: WP Super Cache 0.9.9">WP Super Cache 0.9.9</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:"Fri, 03 Feb 2017 17:46: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: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:47;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:71:"WPTavern: WP-CLI 1.1.0 Released, Project Shifts to Expand Package Index";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:29:"https://wptavern.com/?p=65553";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:"https://wptavern.com/wp-cli-1-1-0-released-project-shifts-to-expand-package-index";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:2920:"<p><a href="https://i1.wp.com/wptavern.com/wp-content/uploads/2016/05/wp-cli.png?ssl=1"><img /></a></p>
<p>WP-CLI <a href="https://make.wordpress.org/cli/2017/02/01/version-1-1-0/" target="_blank">1.1.0</a> is now available, two months after 1.0.0 was released. The project shifted after 1.0.0 to focus on its <a href="https://wp-cli.org/package-index/" target="_blank">package ecosystem</a>, encouraging new features to be built as standalone packages instead of rolling them all into WP-CLI core. Daniel Bachhuber, the project&#8217;s maintainer, moved WP-CLI in this new direction to better distribute the maintenance burden among package maintainers.</p>
<p>Version 1.1.0 includes 23 command improvements, 8 framework enhancements, and dozens of bug fixes. The release had a 16% increase in the number of contributors from 1.0.0. It is the first major release since the project was <a href="https://wptavern.com/wp-cli-gets-official-wordpress-org-support" target="_blank">brought under the umbrella of WordPress.org</a> at the beginning of 2017.</p>
<p><a href="https://i2.wp.com/wptavern.com/wp-content/uploads/2017/02/wp-cli-handbook.png?ssl=1"><img /></a></p>
<p>The process of migrating the wp-cli.org website to wordpress.org will take a couple of months, but the website documentation has already found a new home at <a href="https://make.wordpress.org/cli/handbook/" target="_blank">make.wordpress.org/cli/handbook/</a>. Contributors can edit documentation by clicking on the button at the top of any page, which links to the handbook&#8217;s GitHub repository.</p>
<h3>WP-CLI to Expand Package Index</h3>
<p>As part of the new focus on the WP-CLI package ecosystem, Bachhuber has created a GitHub repository for logging <a href="https://github.com/wp-cli/ideas" target="_blank">ideas for new packages</a>. The best ideas will be maintained as canonical community packages.</p>
<p>&#8220;The end goal for the WP-CLI package index is to be a directory of well-maintained, canonical features,&#8221; Bachhuber said. &#8220;Packages will be considered community projects shepherded by one or more maintainers, instead of the domain of a specific author.&#8221;</p>
<p>Bachhuber is looking to hire someone to assist in maintaining the project in a part-time capacity for 5-10 hours per week. This person will work on supporting package maintainers and vetting ideas for new packages.</p>
<p>The next release cycle will focus on <a href="https://github.com/wp-cli/wp-cli/issues/3728" target="_blank">splitting internal commands into separate packages</a> with the goal of having official maintainers for them in the future. Contributors are also planning to create new pages on WordPress.org for the <a href="http://wp-cli.org/commands/" target="_blank">WP-CLI commands</a> directory and <a href="http://wp-cli.org/docs/internal-api/" target="_blank">internal API docs</a>.</p>
<div id="epoch-width-sniffer"></div>";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, 02 Feb 2017 18:16:08 +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:48;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:"Post Status: Editing and customization core focus areas — Draft Podcast";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=33385";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:76:"https://poststatus.com/editing-customization-core-focus-areas-draft-podcast/";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:2085:"<p>Welcome to the Post Status <a href="https://poststatus.com/category/draft">Draft podcast</a>, which you can find <a href="https://itunes.apple.com/us/podcast/post-status-draft-wordpress/id976403008">on iTunes</a>, <a href="https://play.google.com/music/m/Ih5egfxskgcec4qadr3f4zfpzzm?t=Post_Status__Draft_WordPress_Podcast">Google Play</a>, <a href="http://www.stitcher.com/podcast/krogsgard/post-status-draft-wordpress-podcast">Stitcher</a>, and <a href="http://simplecast.fm/podcasts/1061/rss">via RSS</a> for your favorite podcatcher. Post Status Draft is hosted by Joe Hoyle &#8212; the CTO of Human Made &#8212; and Brian Krogsgard.</p>
<p>In this episode, Joe and Brian talk about two of the three WordPress core focus areas &#8212; the customizer and the editor. There has been some news lately with initial ideas and mockups for each project, and we discuss the importance of these features, as well as what&#8217;s happening with these projects so far.</p>
<a href="https://audio.simplecast.com/59336.mp3">https://audio.simplecast.com/59336.mp3</a>
<p><a href="https://audio.simplecast.com/59336.mp3">Direct Download</a></p>
<h3>Links</h3>
<ul>
<li><a href="https://make.wordpress.org/core/2017/01/19/customization-in-2017/">Customizer opportunities</a></li>
<li><a href="https://make.wordpress.org/design/2017/01/25/what-are-little-blocks-made-of/">Editor mockups</a></li>
<li><a href="https://make.wordpress.org/core/2017/01/17/editor-technical-overview/">Editor technical challenges</a></li>
<li><a href="https://commercenotebook.com">Commerce Notebook</a></li>
</ul>
<h3>Sponsor: Pippin&#8217;s Plugins</h3>
<p>This episode is sponsored by Pippin&#8217;s Plugins. <a href="http://pippinsplugins.com/">Pippin&#8217;s Plugins</a> creates a suite of plugins that work great alone, or together. Whether you need to restrict content, sell downloads, or start an affiliate program, they&#8217;ve got you covered. For more information, check out their <a href="http://pippinsplugins.com/">website</a> and thank you to Pippin&#8217;s Plugins for being a Post Status partner.</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, 02 Feb 2017 17:49:07 +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:14:"Katie Richards";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:49;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:77:"WPTavern: WPWeekly Episode 261 – WordPress for Schools With Cameron Barrett";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:58:"https://wptavern.com?p=65559&preview=true&preview_id=65559";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:"https://wptavern.com/wpweekly-episode-261-wordpress-for-schools-with-cameron-barrett";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:2598:"<p>In this episode, <a href="http://marcuscouch.com/">Marcus Couch</a> and I are joined by <a href="http://camworld.org/">Cameron Barrett</a>, founder of <a href="http://schoolpress.co/">SchoolPresser, LLC</a>. Barrett explains how he negotiated and helped migrate Newark New Jersey&#8217;s public school system from a proprietary CMS to WordPress. He shares the pitfalls he experienced and the amount of money the district is saving since making the switch. Barrett also provides tips and suggestions on how to sell WordPress as a solution to school districts.</p>
<p>We didn&#8217;t dive as deep as we wanted to on the topic but if you&#8217;d like to learn more, please watch the<a href="https://wordpress.tv/2016/12/11/cameron-barrett-wordpress-for-schools-3/"> presentation</a> he did at WordCamp US. In it, he provides more details of the migration, financials, and there&#8217;s a great question and answer session at the end.</p>
<h2>Stories Discussed:</h2>
<p><a href="https://wordpress.org/news/2017/01/wordpress-4-7-2-security-release/">WordPress 4.7.2 Security Release</a></p>
<h2>Plugins Picked By Marcus:</h2>
<p><a href="https://wordpress.org/plugins/birthday-mails-bp/">Birthday Mail BP</a> is an automated function for BuddyPress that sends birthday emails to members on their birthday. It&#8217;s a great way to express birthday wishes or to present a coupon or discount code to members.</p>
<p><a href="https://wordpress.org/plugins/woo-document-preview/">WC Document Preview</a> adds a document preview feature to WooCommerce similar to how Amazon allows you to preview books. This is handy for ebooks and digital products that lend themselves to previews.</p>
<p><a href="https://wordpress.org/plugins/tm-style-switcher/">TM Style Switcher</a> allows you to save a theme&#8217;s settings as skins, switch between them, and move skins from one WordPress site to another.</p>
<h2>WPWeekly Meta:</h2>
<p><strong>Next Episode:</strong> Wednesday, February 8th 3:00 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="https://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 #261:</strong><br />
</p>
<div id="epoch-width-sniffer"></div>";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, 02 Feb 2017 00:30:51 +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:"";}}}}}}}}}}}}}}}}s:4:"type";i:128;s:7:"headers";O:42:"Requests_Utility_CaseInsensitiveDictionary":1:{s:7:"*data";a:8:{s:6:"server";s:5:"nginx";s:4:"date";s:29:"Tue, 28 Feb 2017 08:04:42 GMT";s:12:"content-type";s:8:"text/xml";s:4:"vary";s:15:"Accept-Encoding";s:13:"last-modified";s:29:"Tue, 28 Feb 2017 07:45:13 GMT";s:15:"x-frame-options";s:10:"SAMEORIGIN";s:4:"x-nc";s:11:"HIT lax 249";s:16:"content-encoding";s:4:"gzip";}}s:5:"build";s:14:"20130911010210";}