Wordpress News

WPTavern: WooCommerce 3.3 Removed From Plugin Directory Due to Theme Conflicts

Wordpress Planet - Fri, 02/02/2018 - 07:06

Earlier this week, WooCommerce 3.3 was released and among the features was increased theme compatibility. However, soon after release, users of third-party themes reported issues with categories displaying improperly.

Despite it being a minor release that should be fully backwards compatible with previous releases up to 3.0, WooCommerce has removed 3.3 from the plugin directory and replaced it with 3.2.6.

According to a post on the project’s official blog, WooCommerce 3.3.1 will take the place of 3.3 and will include a fix for the category display issue.

The issue affected themes with template overrides from 3.2.x which hadn’t been made compatible with 3.3. In general, we recommend that themes use hooks instead of template overrides. Themes such as Storefront (which does not use template overrides) were compatible at launch.

WooCommerce Blog

If you’ve already updated to WooCommerce 3.3 and your theme is compatible, you don’t need to make any changes. If your theme is not compatible, WooCommerce recommends checking with your theme’s author to see if a compatibility fix has been released.

Users can also wait for the release of 3.3.1, update to the pre-release version of 3.3.1, or use the WP-Rollback plugin and revert back to 3.2.6. WooCommerce developers suggest only going the WP-Rollback route if you’re not comfortable installing pre-release software.

Coen Jacobs, a former member of the WooCommerce development team, commented on Twitter that this was the first time he can remember that a release was reverted.

Fun fact: As far as I recall, there has never been a release of WooCommerce that has been withdrawn before. During my time on the development team we have pushed fix releases on the same day as a big releases, but never was it reverted like this.

— Coen Jacobs (@CoenJacobs) January 31, 2018

The development team has tested 3.3.1 with more than 40 different themes and believe it is stable. However, they are exercising caution and thoroughly testing the fixes with more themes. Users can expect to see 3.3.1 officially released the week of February 5th.

WPTavern: WPWeekly Episode 303 – Interview With Zac Gordon, Technology Educator

Wordpress Planet - Thu, 02/01/2018 - 02:12

In this episode, John James Jacoby and I are joined by Zac Gordon. We discussed a wide range of topics including, balancing freelance work with educating, an overview of Gutenberg from an educator’s perspective, and potential brand issues if the Gutenberg name was deprecated. We also talked about some of the difficulties involved with creating a course around a feature that’s not yet part of WordPress core.

Stories Discussed:

iThemes Acquired by LiquidWeb
WooCommerce 3.3 Released
Easy Updates Manager Acquired by UpdraftPlus

Picks of the Week:

John James Jacoby suggested Beam Authentic. Beam Authentic is a wearable, connected, smart button that can be programmed to display different images through an app.

WPWeekly Meta:

Next Episode: Wednesday, February 7th 3:00 P.M. Eastern

Subscribe to WordPress Weekly via Itunes

Subscribe to WordPress Weekly via RSS

Subscribe to WordPress Weekly via Stitcher Radio

Subscribe to WordPress Weekly via Google Play

Listen To Episode #303:

WPTavern: Efrain Rivera, A Longtime Community Member, WordCamp Organizer, and Volunteer, Passes Away

Wordpress Planet - Thu, 02/01/2018 - 01:13

Efrain Rivera, who helped organize and volunteer at numerous WordCamps in Florida has passed away at the age of 47. The news was shared on Facebook by his sister on January 28th.

Efrain Rivera and his wife at WordCamp Miami. Photo courtesy of David Bisset

David Bisset, organizer of WordCamp Miami and a well-known figure in the Florida WordPress community, shared his thoughts on Rivera’s passing.

Efrain wasn’t just a fellow organizer, but also a supporter of the local WordPress meetups. There was no ulterior motive in anything that he did. Never once did he ask for anything – he was just happy to be there and help out. He was 100% about giving back to the WordPress community, but even if the community didn’t exist he would find a way to help out folks.

Efrain wasn’t just a supporter and volunteer. He was a good friend to have – someone you could speak frankly too.

Rivera is being remembered as a kind, compassionate, and happy person by members of the community.

I’m so sorry, he was a pleasure volunteering with, @EfrainWp was always happy to help and answer questions.

— Rian M. Kinney, Esq. (@TheKinneyFirm) February 1, 2018

I remember his kindness David. What a great person and sad loss.

— Diane Kinney (@dkinney) February 1, 2018

Efrain was one of happiest, smiliest, caring people I’d ever hung out with at any WordPress event. https://t.co/qW7ChUmjX0

— J ³ (@JJJ) January 30, 2018

Memorial services are scheduled for Saturday, February 3, 2018 from 4:00 P.M.-9:00 P.M. EST at Serenity Funeral Home and Cremation, 1450 S State Road 7, North Lauderdale, Florida 33068. The service will take place during visitation at 7PM. If you have any memories of meeting or hanging out with Efrain at any of the WordPress events in Florida, please share them in the comments.

Post Status: Liquid Web has acquired iThemes

Wordpress Planet - Wed, 01/31/2018 - 17:12

Liquid Web has acquired iThemes, in an all cash deal that includes the entire iThemes team moving over to Liquid Web as an independent unit. Cory Miller — CEO of iThemes — will be the Business Manager of the new unit, with iThemes COO Matt Danner as the Director of Technology and Operations for iThemes. The entire team of twenty three people is staying on, and will continue to be headquartered in Oklahoma.

This is not the first or last time we’ll see longstanding WordPress companies get rolled into large hosting providers. It’s a trend that is natural in any ecosystem as it matures, and iThemes was a clear and quality candidate for a host to target. Cory said the culture around Liquid Web, including their “heroic support,” but also the quality he sees in their management team, was a key motivator for them to go work with Liquid Web.

As hosting companies evolve more and more to provide broader services for customers with managed WordPress offerings, there is less room for utility product creators to fill that gap.

Backups are a fine example: customers may see less need for external backups if they have confidence that their hosting is managing backups properly. Security is another. These have been great products for iThemes, and still are — but their current markets are more for hosts without a managed experience, and that slice of the pie has been narrowing.

iThemes has had a partnership with Liquid Web for about a year and a half now, which started by licensing iThemes Sync for Liquid Web’s WordPress hosting offering. They’ve slowly been integrating more features into the platform, and the acquisition will allow Liquid Web to further integrate iThemes’ offerings, and allow iThemes to improve some of their product offerings with the backing of Liquid’s Web’s hosting infrastructure.

I spoke to Cory Miller about the move, which is occurring not long after iThemes’ ten year anniversary in business. He said he looks back every year and sees them as chapters in the iThemes story, and this feels just the same. He’s excited about what the backing from Liquid Web will allow them to do, and most importantly for him, the ability to keep supporting the team they have built over the years.

Cory tells me he’s amazed that they’ve been able to build the company they have built, and neither he nor his business partners would have imagined it ten years ago. All equity holders had their shares purchased by Liquid Web, and Cory and the team will be Liquid Web employees.

iThemes has iterated on the business many times over the years — as the name implies. Their theme business slowly dwindled in terms of the overall ratio of sales revenue it provided. BackupBuddy has long been a flagship, and they’ve found great success the past couple of years since they acquired and iterated on the iThemes Security product. He said that it took them experimenting a great deal — and like Exchange for eCommerce, and others — it didn’t always work out the way they hoped. But because they stayed agile and kept working at it, they’ve consistently been able to grow and diversify their product line.

One practical component Liquid Web will be able to provide, as an example, is their data centers to power BackupBuddy and iThemes Stash storage and processing. iThemes has historically used Amazon, which Cory said really adds up and has started to eat into their own margins. Liquid Web will help them not only improve the offering but also to be able to perform those functions more affordably.

For Liquid Web, this acquisition furthers their goal to integrate WordPress-specific functionality into their suite of WordPress hosting tools. They recently launched WooCommerce hosting on their platform, and the iThemes Sales Accelerator product can now be a core component of that offering. Additionally, the technology iThemes has built with BackupBuddy and Sync will further add to their platform.

Beyond the technology and products, Liquid Web Vice President of Products and Innovation Chris Lema tells me it’s about the team:

This adds so much to what we’re doing with managed WordPress and managed WooCommerce, that it just made a lot of sense — both from a product perspective, and even more from a team perspective.

Having spent a lot of time with the management teams for each of these companies, I would agree that the culture fit is a really good one. And for Liquid Web, a company continuing to make its big push into the WordPress market, it is a solid strategic acquisition move that offers product dividends but more importantly adds a great and experienced WordPress team to their company.

Cory shares more about the news on the iThemes blog.

HeroPress: The Journey: Curiosity, Challenge, Transformation

Wordpress Planet - Wed, 01/31/2018 - 11:00

When I look back on the past five years I’ve been working with WordPress, I feel the real weight of the journey I’ve had to get where I am. Much of it has been filled with challenge of both of the difficult and welcome variety. I’m an optimist and problem-solver to the core, but I sometimes wonder how I got through these past years. One thing is for certain, my involvement with WordPress, the opportunities and community around it, has been a force for so much good, motivation, and satisfaction in my life.

The Beginning

When I was introduced to WordPress, I was going through one of the most trying times of my adult life. My dad had suddenly passed away just a few years before. We didn’t have the best relationship, but his quirkiness, interest in esoteric things, and passion for food certainly rubbed off on me.

I was living with roommates, but moved back home to be with my mom. Not too long after, she developed debilitating osteoarthritis in both of her hips. From a physically healthy yet grieving 52-year-old woman to eventually becoming handicap and walker-bound, needless to say, impacted our lives greatly. I became her caretaker, and I also worked retail part-time for the flexible schedule.

I felt emotionally exhausted, uninspired and quite lost with what my next steps would be.

I grew up using the internet fervently as a youth and in my college years. I met new friends, learned new skills, and traveled to new places thanks the endless source of information it provided for my active mind. So when a friend, now my mentor, John Bolyard, approached me to help him in his web marketing and development consultancy using “WordPress” I just said “yes.” It was mysterious, being unknown to me, and intriguing, which is usually a green light in my book!

I started doing administrative work on a website he helped develop for a national guild. Like many situations, he had finished their website and they would circle back to him for minor updates. I took on the minor updates, started tinkering on my own, and fell in love in the process.

The accessibility with which one could make changes and produce content dynamically was just mind blowing to me. It was my gateway to web development and now I could make web content with the ability to work with code, if I so chose. It seemed an endless source of learning and knowledge- it was a great fit.

Levelling Up

That went well and he brought me on a larger project to help the artist, Dorothy Braudy, create her website archive. I was able to blend my affinity for the technical and handy visual memory to help an all around amazing person (she’s still one of closest people in my life) tell her story through her art. I was thrilled to have the challenge and the privilege to bring her vibrant and prolific work (hundreds of pieces) to the web.

I also started assisting John with teaching WordPress classes at SCORE, a government organization that helps people develop and sustain small businesses.

We volunteered our time teaching business owners WordPress to help them build their own websites.

It was challenging yet rewarding to see them feel empowered that they could take a hands-on role in making their web presence.

Nevertheless, I ended up with several clients and that’s how my freelancing career began :). I also started going to meetups. John brought me to my first one in the San Fernando Valley. I was like wait…this software is cool and people gather to talk about it? I can also learn stuff too?! Get outta town!

Well, I started attending fairly frequently. Particularly, the meetup in the West Valley lead by Andrew Behla (then at the Topanga Canyon Library). I soaked up info from presentations given by Roy Sivan, Suzette Franck, and Lucy Beer (who is now my teammate). Just to name a few ;).

After building a consistent client base, I also started working part-time as a project assistant at a boutique museum exhibit development firm. My first project was for the Huntington Library, Art Collections and Botanical Gardens supporting the development of an educational WordPress website for their Junípero Serra exhibition. What were the chances? My skills in WordPress proved helpful for the project and the firm’s website.


At this point, I had seen my mom through her first hip replacement and recovery, and she was moving on to her next one. I thought about where I saw myself and also where I could build a sustainable future given the circumstances. I thought WordPress, and so I did a trial as a Happiness Engineer at WordPress.com.

While I didn’t get the position, I met some great people and learned exponentially more in that short time than I had on my own. More so, I learned about the users, WordPress’ strengths and weaknesses, and how to fill that gap in an accessible way. I was sad, but also motivated. I took on more client work and just did the thing.

After three years, it was time to leave the exhibit development firm. It was fascinating, it provided me a design, development and project management vocabulary I had never encountered before. However, I needed a firmer career path and I still thought WordPress. My mom was recovered, I had also just recovered from some health issues, and I knew it was time for a change.

While doing client work for several months, I also explored options on how I could “level up.” Maybe it was my time to dig into web development: should I learn on my own, go to a school?

In my gut, I knew I had to find work that supported my endeavors, so I started applying in the WordPress and tech ecosystem.

I networked, attended workshops, and met some awesome folks in the local tech and WordPress communities. I was also approached about joining the organizer team for WordCamp Los Angeles (WCLAX). I said “yes” (that magic word) and last year we had a great event.

When we started planning, I had also heard from WP Media, (the company behind the WP Rocket and Imagify plugins), that I was hired for their Customer Support position. We’re a remote crew spread across 8 countries. However, I’ve been lucky enough to spend time with them at WordCamp Europe, WordCamp US, and our annual retreat last year.


My place in the world has transformed. I’ve traveled to places once out of reach, work every day with some of the most brilliant and kind people in the WordPress space, and grow day by day with new challenges and opportunities. I’m happy, mom is healthy, and the journey continues…

The post The Journey: Curiosity, Challenge, Transformation appeared first on HeroPress.

WPTavern: WooCommerce 3.3 Increases Theme Compatibility, Auto Regenerates Thumbnails

Wordpress Planet - Tue, 01/30/2018 - 22:53

WooCommerce 3.3 is available and is considered a minor release. Based on the project’s new release process, it should be fully backwards compatible with previous releases up to 3.0.

The orders screen has been redesigned with large buttons that indicate an order’s status. You can also view an order’s details from the order screen without having to edit the order.

WooCommerce 3.3 Orders Screen

For products that are on backorder and have stock management enabled, WooCommerce 3.3 will automatically transition from ‘In stock’ to ‘On backorder’ or ‘Out of stock’ as the inventory decreases. Once inventory is added, the status will switch back to ‘In Stock’.

WooCommerce 3.3 Order Status Screen

For full compatibility, users generally needed to use a WordPress theme that specifically supported WooCommerce. In 3.3, improvements have been made so that WooCommerce renders on themes that don’t fully support it, making it compatible with nearly every WordPress theme.

Users can now set the number of columns and rows for shops with the ability to preview the results live via the Customizer. The columns will resize to fill the entire width of the area and is available on all themes.

In earlier versions of WooCommerce, shop owners needed to use the Regenerate Thumbnails after updating a product’s image as WordPress did not automatically resize the image and generate new thumbnails. WooCommerce 3.3 adds on-the-fly thumbnail regeneration and background thumbnail resizing.

In addition, users can customize the aspect ratios of product images. The choices are classic square images, custom cropped images, or uncropped images

WooCommerce 3.3 Image Aspect Ratio Options

Shop owners can now view logs of product downloads with a couple of built-in filters including, by order, by product, by customer, and by file. You can also search for extensions now from the Extensions administration screen.

WooCommerce 3.3 includes more features and changes than what’s listed here. For a detailed overview of what’s new in 3.3, check out the changelog. If you think you’ve discovered a bug, please report it on the project’s GitHub page.

Mark Jaquith: Simple WordPress deploys using Git

Wordpress Planet - Tue, 01/30/2018 - 15:31

A few weeks back, Clifton Griffin asked me a question about deploying WordPress sites:

@markjaquith Hey Mark, quick question: Do you still use and recommend Capistrano?

— Clifton Griffin (@clifgriffin) January 3, 2018

I do not use Capistrano for deployments anymore, for one simple reason: it was massive overkill for most of the sites I manage, and maintaining it was not worth the benefit.

My current deployment system for WordPress sites is simple: I use Git.

I’m already using Git for version control of the site’s code, so using Git for deployments is not that much more work. There are a few ways to do this, but the simplest way is to just make your site root a Git checkout of your site files.

Then, if your server has read-access to your Git remote, you can run some Git commands to sync everything. Here are your options:

  1. git pull — Simple, but might fail if someone naughty has made code modifications on the server.
  2. git fetch && git reset –hard origin/master — The hard reset method will wipe any local modifications that someone has mistakenly made.

But wait. Before you implement this, it is very important that you ensure that your server’s .git directory is not readable, as it might be able to leak sensitive information about your site’s code. How you do this will depend on what web server you’re running. In Nginx, I do the following:

location ~ /\.(ht[a-z]+|git|svn) { deny all; }

In Apache, you could put the following in your .htaccess file:

RedirectMatch 404 /\.git

SSHing into your server every time is tedious, so let’s script that:

#!/bin/bash ssh example.com 'cd /srv/www/example.com && git pull'

Save that to deploy.sh in your Git repo, run chmod +x deploy.sh, and commit it to the repo. Now when you’re ready to deploy the site, just type ./deploy.sh and the public site will pull down the latest changes from your main Git remote.

Bonus points if you make deploy.sh take an optional commit hash, so you can also use this tool to roll back to a previous hash, in case a commit goes wrong.

This method has served me well, for years, and has required no maintenance.

What methods are you using for WordPress code deploys?

Do you need WordPress services?

Mark runs Covered Web Services which specializes in custom WordPress solutions with focuses on security, speed optimization, plugin development and customization, and complex migrations.

Please reach out to start a conversation!


WPTavern: UpdraftPlus Acquires Easy Updates Manager Plugin

Wordpress Planet - Tue, 01/30/2018 - 00:30

UpdraftPlus, a popular WordPress backup plugin actively installed on more than 1 million sites has acquired the Easy Updates Manager plugin for an undisclosed amount.

Easy Updates Manager disables core, theme, and plugin updates in WordPress and provides granular control over them. It was created in 2015, is actively installed on more than 100K sites, and is maintained by Matthew Sparrow, Ronald Huereca, Roary Tubbs, and BigWing Interactive.

Easy Updates manager User Interface

Burnout was a contributing factor for selling the plugin. “Matthew Sparrow and I were both burnt out on the project, so the offer to sell was a no-brainer,” Huereca said. “It’s bittersweet letting our baby go, but it’s in good hands.”

Without proper vetting, selling established plugins to individuals or companies can be harmful to sites and tarnish its reputation. Because UpdraftPlus is a well established company, Huereca didn’t have to do a lot of research.

“We were looking for more backend plugins that we understand and it’s a great plugin, highly rated and growing,” A company representative said. “Updates and backups go hand-in-hand as people should really backup before updating.”

UpdraftPlus will focus its marketing efforts towards UpdraftCentral later this year. UpdraftCentral provides the ability for users to update, backup, and manage their sites from one dashboard. Easy Updates Manager and UpdraftCentral are complimentary products.

Users can expect to see more updates later this year and continued refinement of the user interface.

BuddyPress: BuddyPress 2.9.3 Security and Maintenance Release

Wordpress Planet - Fri, 01/26/2018 - 18:11

BuddyPress 2.9.3 is now available. This is a security and maintenance release. We strongly encourage all BuddyPress sites to upgrade as soon as possible.

The 2.9.3 release addresses two security issues:

  • A dynamic template loading feature could be used in some cases for unauthorized file execution and directory traversal. Reported by James Golovich.
  • Some permissions checks and path validations in the attachment deletion process were hardened. Reported by RIPSTech and Slava Abakumov of the BuddyPress security team.

These vulnerabilities were reported privately to the BuddyPress team, in accordance with WordPress’s security policies. Our thanks to all reporters for practicing coordinated disclosure.

In addition, 2.9.3 includes a change that fixes the ability to install legacy bbPress 1.x forums. Please note that legacy forum support will be removed altogether in BuddyPress 3.0; see the announcement blog post for more details.

Post Status: WordPress Market Opportunities — Draft podcast

Wordpress Planet - Fri, 01/26/2018 - 16:50

Welcome to the Post Status Draft podcast, which you can find on iTunes, Google Play, Stitcher, and via RSS for your favorite podcatcher. Post Status Draft is hosted by Brian Krogsgard and co-host Brian Richards.

In this episode, Brian and Brian discuss market segmentation across the WordPress ecosystem. The focus for this discussion focused entirely on the entry-level segment of site assemblers and their small-business clients as well as the mid-level market of contractors and agencies selling additional levels of service. The duo talked through a few different strategies employed in each segment, including service differentiation, regional focus, building a network of complementary contractors, systemizing processes, delivering quality customer support flow, and selling ongoing service.

In addition to this look at market segmentation, the Brians shared a few useful resources for both Gutenberg and WP-CLI.

Links Sponsor: iThemes

This episode is sponsored by iThemes. 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 website and thank you to iThemes for being a Post Status partner.

WPTavern: WPWeekly Episode 302 – Brian Gardner, Founder of StudioPress

Wordpress Planet - Fri, 01/26/2018 - 04:15

In this episode, John James Jacoby and I are joined by Brian Gardner, founder of StudioPress. We talk about the past, present, and future of the company including various milestones such as the Genesis framework and merger with CopyBlogger Media in 2010. We also discuss the community surrounding StudioPress’ products and the role it plays in the company’s continued success.

Picks of the Week:

Ahmad Awais Create Guten Block toolkit.

WPWeekly Meta:

Next Episode: Wednesday, January 31st 3:00 P.M. Eastern

Subscribe to WordPress Weekly via Itunes

Subscribe to WordPress Weekly via RSS

Subscribe to WordPress Weekly via Stitcher Radio

Subscribe to WordPress Weekly via Google Play

Listen To Episode #302:

WPTavern: WordPress Turns 15 Years Old

Wordpress Planet - Fri, 01/26/2018 - 03:41

WordPress, the free open source project, turns 15 years old today. Here is the comment that started it all.

Mike Little's Comment

In addition to celebrating 15 years as a successful software project, it's also a good opportunity to reflect on the number of people across the world who are making a great living and turning dreams into reality thanks to the project.

Thank you Matt Mullenweg and Mike Little for creating WordPress, its contributors for keeping the ball rolling all these years, and providing opportunities for so many people. Happy birthday WordPress!

WPTavern: WordCamp Miami Celebrates Its 10th Consecutive Year March 16-18

Wordpress Planet - Thu, 01/25/2018 - 01:56

WordCamp Miami is celebrating its 10th anniversary on March 16-18th. This year's event is organized by twelve people and organizers expect more than 800 people to attend. Speakers will arrive from Italy, Germany, London, Brazil, and other international locations to share their knowledge.

In addition to a two-day Kids Camp with a Kids Panel, WordCamp Miami will feature two new workshops. The first is developer focused and will prepare developers for the future of WordPress. The second is focused on eCommerce.

Attendees will receive their own site and be able to apply what they've learned to it. The sites will have pre-installed plugins and access to various tools mentioned by the workshop teachers.

The 'Learn JavaScript Deeply' track is returning this year, featuring local and international JavaScript developers. This is the third time WordCamp Miami has had this track and according to David Bisset, one of the organizers, the focus will be on JavaScript basics, React, plus using JavaScript to create 'cool and unique' projects with or without WordPress.

Joshua Strebel, Syed Balkhi, and Christie Chirinos will highlight Saturday's business track.

For the first time in recent years, WordCamp Miami will have a closing keynote on Saturday, March 17th by John James Jacoby. Jacoby was one of the founders of WordCamp Miami a decade ago, and his talk will cover both nostalgic moments and what the future of WordPress holds for users.

Finally, WordCamp Miami will be doing a 'game show hour' before the official after party. "We wanted to do something fun and interactive for everyone – and we think we found a great way to segue people from the talks to unwinding at the after party," Bisset explained.

"We are even planning on having our sponsors form teams in a trivia contest battle. There will be provisions at the party for those who want to network or just relax in a quiet setting."

Bisset praised volunteers and organizers for helping make 10 years of WordCamp Miami a reality.

"Each and every one of our organizers and speakers deserve a huge amount of thanks and praise for their hard work." He said. "We couldn't have done ten years without the support of the WordPress community."

Tickets are on sale with a number of purchasing options. Workshops cost $15 each and general admission tickets are $40 each. General admission tickets provide access to Saturday and Sunday sessions, lunch, swag, and the after party.


Drupal Themes - Wed, 01/24/2018 - 19:20

Subtheme of [AMP Theme](https://drupal.org/project/amptheme) for Drupal 8.

This is an AMP version of the BYU theme. Due to the nature of AMP, it is no where near as flexible as the normal BYU Drupal 8 theme. **You should not and cannot use this as a replacement of that theme.**

This theme requires much of the editing to be done in the code, not in theme settings. It does not use web components (AMP does not allow custom compoents).

HeroPress: Believe In Yourself

Wordpress Planet - Wed, 01/24/2018 - 13:00

You ever have a moment where you blink your eyes and you wonder how you’ve gotten to where you are today? I’m having one of those moments right now as I sit here to share my story with you. It’s bizarre to think of how far I’ve come because I truly thought that I was not good enough to be where I am today. Let’s get into it.

The Beginning

As a child, I was always around technology. My dad was a computer scientist and considered it a great idea to get each of his four children their own computer so they would stay away from his. So as the years went by with system administrative tasks being “one of the hard-knocks of life”, I went off to Drexel University in 2005 to pursue a degree in Computer Science. I remember when I walked into my first class and instantly saw how different I was. Everyone was white. Everyone was male. And I was not. In fact, I couldn’t even check off one of those boxes. I was opposite. I was female and I was black.

The first year pursuing my degree actually went really well and finished off the year, completing my C++ final project to create a matching cards game using objects and classes. All was swell. I found that I was doing just as well as everyone else. And I found that was struggling in certain areas just like everyone else.

Leaning In

Next semester came and that’s when the more difficult course load began. There was one class in particular called “Data Algorithms & Theories” that was incredibly and frustratingly difficult. As someone who always wanted to do well and is inclined to beat herself up for not being “perfect”, it was an incredibly stressful time for me. But once again, I was not the only one who was struggling because the class was difficult for all of my classmates. But as the class progressed, I decided to step out of my comfort zone and ask for help. This was the first time I would actually utilize the teaching assistant (TA) that was often present during this class. So our scheduled meeting comes around and it doesn’t go as I’d hoped. It wasn’t at all a welcoming atmosphere.

The demeanor of the TA made it clear that he didn’t want to be there but my happy-go-lucky personality brushed it aside.

To make things worse, I wasn’t understanding the “simple” concepts that he was explaining and was subject to the TA’s dismissive glances of judgement and shame. I remember at one point, my mind shifted into trying to make him like me rather than realize that he was discriminating against me. Then he said to me “You know, maybe this just isn’t for you. I’ve explained this to you multiple times and you’re just not getting.” This was a very upsetting moment in my life because someone who was supposed to be helping me learn was telling me that you’re too stupid to learn. Needless to say, I left that session very upset and I ultimately ended up changing my major to something “easier” because apparently it “wasn’t for me”.

Accepting A Career

After I graduated in 2010 with my degree in Information Technology, I moved to DC to pursue an unfulfilling Systems Engineering career in government contracting. Don’t get me wrong. I learned a plethora of valuable skills that I will use for the rest of my life. But I wasn’t doing something that was enriching me. Not only that, I was often made to feel ostracized in the work culture because of the lack of diversity.

I’m not sure if anyone’s told you…but it’s extremely hard being a minority and working with people who don’t look like you and who can’t relate to you.

If someone said something racially insensitive or offensive (and there have been multiple instances), that was always a battle I had to fight on my own. And to be honest, sometimes I didn’t fight because I knew no one would give a damn and the person would get away with it with a slap on the wrist.

Remembering Joy

So in the mist of all of this, no matter how upset, beaten-up and angry I felt after a work day, I could always come back to my love for the metal music genre. I would spend so much time listening to new metal music after work that co-workers nicknamed me “the DJ”. Which isn’t completely untrue. In college, one of my extracurriculars was to host a weekly metal radio show on the college radio station. But I didn’t have that anymore so I essentially felt a bit lost.

That’s when I decided to get it back! Not in the form of an actual radio show. But in the form of a metal music blog. Outside of having played around with making marque-filled pages on GeoCities and changing the backgrounds of my MySpace and Xanga profiles to be neon-colored or highly pixelated images, I didn’t have any experience making a website. So I GOOGLED it! And in that research I learned how hosting providers work and the best blogging platform for me to use for my blog. And that platform was WordPress. So in 2015, I launched my first website ever on WordPress: metalandcoffee.com. And this point I didn’t really know anything super WordPress-nerdy outside of being able to select a theme and add/organize content on the navigation bar. But I finally had my own voice live and anyone can see it!

Looking Deep

Now – the year was 2017 and words cannot describe how miserable I am in my current work position. I thought transferring to a position within the company that brought me back to Philadelphia would help my pain and suffering but it only numbed it for a couple months. I still didn’t like the environment, I didn’t like what I was doing, and although I was able to look at the occasional code snippet that would give me a spark of confidence when I understood what the code was doing, I wasn’t given an opportunity to be on the other side. This is what lit a fire under me to finally do everything in my power to move towards a developer career. I felt like that was where I was supposed to be. Sure, I was told that I wasn’t smart enough to be anywhere near code but why did it excite me to see it and recognize it? Why was I able to troubleshoot errors even though I wasn’t a developer? Why was I excelling at quality assuring software by being able to understand the code’s logic thus thinking of scenarios that were unaccounted for?

Breaking Through

So I signed up for a couple online courses focused on web development and eventually found myself having been accepted to a front-end developer fellowship program that provided me with an amazing mentor and a final project to work towards. For my final project, I chose to learn how to create a custom WordPress theme for my Metal & Coffee website because the current one that I was using did not fully suite my needs.

And there you have it – throughout the next 9 months, the doubt and shame instilled in me since college kept coming up and I kept having to find ways to break through it whether it’d be a pep talk from my mentor, talking to developers who look like me (black women) or using meditation to help me through the anxiety.

And by the end of that, not only did I finish my final project (http://metalandcoffee.github.io) and come to really love WordPress theming, I got a job offer from Tracy Levesque and Mia Levesque to work at their WordPress web agency, Yikes Inc.

Finding My Place

Now, I’m a full-time WordPress developer and I couldn’t be more satisfied. Working at Yikes has sent my developer skills soaring over mountains and valleys. My curiosity is allowed to run wild and I’ve actually been diving into the plugin world, completely re-coding an internal plugin from the ground up and learning essential web programming practices in the process.

My next goal in the WordPress community is to see more WordPress developers who look like me. And one step I’ve taken towards that goal is to co-teach a Intro to WordPress workshop at Codeland 2018 which I’m very excited (and nervous) for. And I’ll continue to be as visible and outspoken as possible to encourage diversity in this community.

The post Believe In Yourself appeared first on HeroPress.

WPTavern: New Toolkit Simplifies the Process of Creating Gutenberg Blocks

Wordpress Planet - Wed, 01/24/2018 - 03:30

Ahmad Awais, who created the Gutenberg Boilerplate last year, has released a Guten Block Toolkit. The toolkit substantially simplifies the creation of Gutenberg Blocks by providing no configuration, one dependency, and no lock-in.

Awais created the toolkit after receiving feedback that configuring things like Webpack, React, ES 6/7/8/Next, ESLint, Babel and keeping up with their development was too difficult.

"Developers told me that they built Gutenberg blocks with ES5 because the amount of time required to configure, set up, and learn tools like Babel, Webpack, ESLint, Prettier, etc. wasn’t worth it," Awais said.

"So, yes! I went ahead and built a solution — a zero-config-js #0CJS WordPress developers’ toolkit called create-guten-block!"

Creating blocks using the toolkit is a three-step process.

Developers begin by installing Node version 8 or higher on a local server. The next step is to run the create-guten-block command and provide a name for the plugin that will be created. This command also creates the folder structure necessary to maintain the project. The last step is to run the NPM start command which runs the plugin in development mode.

Once these steps are completed, the WordPress plugin will be compatible with Gutenberg and have React.js, ES 6/7/8/Next, and Babel, which also has ESLint configurations for code editors to detect and use automatically.

The Guten Block Toolkit comes with the following:

  • React, JSX, and ES6 syntax support.
  • Webpack dev/production build process behind the scene.
  • Language extras beyond ES6 like the object spread operator.
  • Auto-prefixed CSS, so you don’t need -webkit or other prefixes.
  • A build script to bundle JS, CSS, and images for production with source-maps.
  • Hassle-free updates for the above tools with a single dependency cgb-scripts.

The project has received positive feedback, including from members of Gutenberg's development team.

Mad props to @MrAhmadAwais for making a super useful Gutenberg tool that I've been really looking forward to! ????

I'm excited about the possibilities for this, and I love how it's embraced WordPress' "decisions, not options" philosophy, doing all of the hard work for you. ???????? https://t.co/hUAQVDL7S1

— Gary (@GaryPendergast) January 20, 2018

Tried the https://t.co/WkvhwSVBh6 from @MrAhmadAwais, had a block within a minute. Now it's time to finish the #Gutenberg course from @zgordon to actually build something useful :D

— Igor Benić (@igorbenic) January 22, 2018

With a stable release now available to the public, Awais is working on 2.0.0. "The next step is to get this toolkit tested and mature the entire app to release version 2.0.0 for that not only do I need your support, I ask that you hop on board and contribute — that’s the only way forward," he said.

Create Guten Block Toolkit is MIT licensed and available for free on GitHub. Contributions are welcomed!

WPTavern: Free Conference Dedicated to WordPress in Higher Ed Takes Place January 30th at 9AM CST

Wordpress Planet - Mon, 01/22/2018 - 22:14

If you’re interested in learning how WordPress is used in Higher Ed, tune in to WPCampus Online, January 30th at 9AM Central Standard Time. WPCampus Online is a virtual conference that people can watch for free, no traveling necessary. The event uses Crowdcast allowing viewers to switch between rooms, interact with each other, and ask questions.

Some of the topics that will be presented include, WordPress and Real-World Data with Students, Headless and Brainless WordPress, and Using WordPress to Support and Run Student Government Elections. If in-person conferences are more your style, keep an eye out for information on WPCampus 2018 tentatively planned for this Summer.

To learn more about WPCampus and the people behind it, listen to our interview with Rachel Cherry on episode 301 of WordPress Weekly.

Mark Jaquith: How I fixed Yoast SEO sitemaps on a large WordPress site

Wordpress Planet - Mon, 01/22/2018 - 15:15

One of my Covered Web Services clients recently came to me with a problem: Yoast SEO sitemaps were broken on their largest, highest-traffic WordPress site. Yoast SEO breaks your sitemap up into chunks. On this site, the individual chunks were loading, but the sitemap index (its “table of contents”) would not load, and was giving a timeout error. This prevented search engines from finding the individual sitemap chunks.

Sitemaps are really helpful for providing information to search engines about the content on your site, so fixing this issue was a high priority to the client! They were frustrated, and confused, because this was working just fine on their other sites.

Given that this site has over a decade of content, I figured that Yoast SEO’s dynamic generation of the sitemap was simply taking too long, and the server was giving up.

So I increased the site’s various timeout settings to 120 seconds.

No good.

I increased the timeout settings to 300 seconds. Five whole minutes!

Still no good.

This illustrates one of the problems that WordPress sites can face when they accumulate a lot of content: dynamic processes start to take longer. A process that takes a reasonable 5 seconds with 5,000 posts might take 100 seconds with 500,000 posts. I could have eventually made the Yoast SEO sitemap index work if I increased the timeout high enough, but that wouldn’t have been a good solution.

  1. It would have meant increasing the timeout settings irresponsibly high, leaving the server potentially open to abuse.
  2. Even though it is search engines, not people, who are requesting the sitemap, it is unreasonable to expect them to wait over 5 minutes for it to load. They’re likely to give up. They might even penalize the site in their rankings for being slow.

I needed the sitemap to be reliably generated without making the search engines wait.

When something intensive needs to happen reliably on a site, look to the command line.

The Solution

Yoast SEO doesn’t have WP-CLI (WordPress command line interface) commands, but that doesn’t matter — you can just use wp eval to run arbitrary WordPress PHP code.

After a little digging through the Yoast SEO code, I determined that this WP-CLI command would output the index sitemap:

wp eval ' $sm = new WPSEO_Sitemaps; $sm->build_root_map(); $sm->output(); '

That took a good while to run on the command line, but that doesn’t matter, because I just set a cron job to run it once a day and save its output to a static file.

0 3 * * * cd /srv/www/example.com && /usr/local/bin/wp eval '$sm = new WPSEO_Sitemaps;$sm->build_root_map();$sm->output();' > /srv/www/example.com/wp-content/uploads/sitemap_index.xml

The final step that was needed was to modify a rewrite in the site’s Nginx config that would make the /sitemap_index.xml path point to the cron-created static file, instead of resolving to Yoast SEO’s dynamic generation URL.

location ~ ([^/]*)sitemap(.*).x(m|s)l$ { rewrite ^/sitemap.xml$ /sitemap_index.xml permanent; rewrite ^/([a-z]+)?-?sitemap.xsl$ /index.php?xsl=$1 last; rewrite ^/sitemap_index.xml$ /wp-content/uploads/sitemap_index.xml last; rewrite ^/([^/]+?)-sitemap([0-9]+)?.xml$ /index.php?sitemap=$1&sitemap_n=$2 last; }

Now the sitemap index loads instantly (because it’s a static file), and is kept up-to-date with a reliable background process. The client is happy that they didn’t have to switch SEO plugins or install a separate sitemap plugin. Everything just works, thanks to a little bit of command line magic.

What other WordPress processes would benefit from this kind of approach?

Do you need WordPress services?

Mark runs Covered Web Services which specializes in custom WordPress solutions with focuses on security, speed optimization, plugin development and customization, and complex migrations.

Please reach out to start a conversation!


Post Status: Hosted versus self-hosted eCommerce — Draft podcast

Wordpress Planet - Fri, 01/19/2018 - 20:56

Welcome to the Post Status Draft podcast, which you can find on iTunes, Google Play, Stitcher, and via RSS for your favorite podcatcher. Post Status Draft is hosted by Brian Krogsgard and co-host Brian Richards.

In this episode, Brian and Brian discuss self-hosted vs managed ecommerce and whether or not conferences have outlived their usefulness. Specifically, they look at WooCommerce vs other solutions and explore Shopify and Liquid Web’s Managed WooCommerce hosting as viable done-for-you strategies. On the conference front, they talk about the good and the bad of conferences and ponder how tech conferences of the future may need to change to attract more attendees.

Links Sponsor: Pippin’s Plugins

This episode is sponsored by Pippin’s Plugins. Pippin’s Plugins 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’ve got you covered. For more information, check out their website and thank you to Pippin’s Plugins for being a Post Status partner.