Friday, February 19, 2016

Valio Con 2016

opl-small

Beautiful One Pager for the 2016 'Valio Con' to be held in San Diego. The long Single Page website features gorgeous parallax scrolling speaker cards that include great photos, their bio and social links. The responsive adaption is solid too and the site retains the parallax effect but doesn't feel over-the-top. Quite a neat footer feature too that includes links to the previous event sites with speaker videos.

by Rob Hope via One Page Love

The Web Designer Newsletter

The Web Designer Newsletter

One Page website for 'The Web Designer Newsletter' that features a lovely unique animation that loads up previous edition examples.

by Rob Hope via One Page Love

Aplitap

Aplitap Digital Agency

Unique multi-scrolling One Pager with numerous off-canvas content areas for Aplitap digital agency. The left navigation UX isn't perfect but tricky with this kind of multi-scrolling concept. Quite a nice touch how the final section zooms out to reveal the whole website was within their logo.

by Rob Hope via One Page Love

Master Facebook Marketing with This $15 Course

Master Facebook marketing with this $15 course

Facebook is for more than just stalking exes and arguing with your bigoted uncle. Master Facebook marketing and use the platform to grow revenues and get new clients. Whether you’re a marketer or own your own business, the easy-to-follow Complete Facebook Ads & Marketing course is a must-have. Get it for $14.99 at SitePoint Shop.

Through 207 lectures and 26 hours of content, this course will show you how to use Facebook in a smart way. That means setting up ads that convert, lowering your cost per click, and using Facebook Messages for lead generation. You’ll have lifetimes access to the new course, with new lectures added every month, giving you a lifetime of recurring revenue growth and increased website traffic.

Start making your Facebook page work for you. Get the Complete Facebook Ads & Marketing course for $14.99.

Continue reading %Master Facebook Marketing with This $15 Course%


by SitePoint Offers via SitePoint

Moving to Magento 2: Creating a Migration Plan

Opia

Opia

'Opia' is a launching soon HTML template that features a 3D parallax effect in the header. The template is dubbed a "coming soon" template but can easily act as a slick One Page portfolio with an image gallery and contact form. Great to know it includes MailChimp integration too.

by Rob Hope via One Page Love

Building Quality Into WordPress Projects: A Practical Example

One of the best things about learning a new skill in software is that you often undergo this process of getting something working, learning about a few of the mistakes you've made, refining the code, and then repeating the process.

Ultimately, it's about improving the quality of what you're doing such that the end result is better than it would've been had you just left it as it were in its first iteration.

And, really, when it comes to writing software, one of the things that we often hear and often talk about is quality. More specifically, we talk about building quality into our software. 

But my guess is if you ask ten developers what quality means to them, you would get ten different answers.

The word "quality" offers three definitions:

  1. How good or bad something is,
  2. A characteristic or feature that someone or something has : something that can be noticed as a part of a person or thing,
  3. A high level of value or excellence.

If you think for a moment how this relates to the products that you build using WordPress, what comes to mind?

  • Is it the organization of the files that compose your project?
  • Is it how well your code conforms to the WordPress Coding Standards?
  • Does it have to do with how well you've followed best practices of the paradigm you've chosen?
  • Maybe it's all the above; maybe it's something that is not listed. 

Whatever the case, "quality" can mean different things to different people. But I believe there are certain things that aren't subjective with regard to WordPress development.

Quality and WordPress Development

Before going any further, I'd like to note that when quoting someone else, unless it's a well-known source, I like to keep the source anonymous.

The reason is that I don't want people who read tutorials like this to get side-tracked and try to take issue with what the person has said. It's beside the point, you know?

And that does happen. I'm speaking from experience.

With that said, recently someone approached me about a bit of code that I had provided about working with WordPress hooks when building themes. In short, they said:

Saying more lines of code is better than less is something only a hard-core, seasoned WordPress developer would say. The less code, the better.

For hobbyists and those who are just learning the ropes of development, I can see how this would seem true. For those who have been working in the field for a while, you likely recognize the problem with this.

I'm not claiming that more code is always better code. It's not. Instead, I am suggesting there are times where an entire function is better than a single line of code.

How do we build this into our own work? How do we convey this to those who are less experienced programmers? Let's take a look at a concrete example and see if there's something to glean from it.

An Example: How Filters Yield Quality

In WordPress 4.4, support for title tags changed such that you add support for it by simply including the following line in your functions.php file:

If you don't want to use that function, you're going to be required to hardcode the title element into the header template of your theme. 

Of course, there are plugins and themes that have not yet been updated (at the time of this tutorial). To that end, it's still relatively common to see something like the following line of code in template files:

But why would anyone mess with the title? Think of SEO plugins. They will often alter title elements to be more search-engine-friendly.

Let's take a look at a real-world example: Say you're working on a theme and its title element includes a call to wp_title. Further, you want to make sure that wp_title is filterable so that other code like the aforementioned plugins can update it.

It seems straightforward enough, right? But let's say you want to dress it up a bit by including a separator and updating its position. In this case, you may do something like this:

Or maybe you want to take it a step further and introduce the name of the blog and its description. Or maybe you want to set up the title so that it's different on the homepage. 

Then you may do something like this:

In isolation—outside of any plugins or other work—this looks fine. It's a single line of code that hobbyists can use to achieve their ultimate goal.

But what happens when someone distributes the theme? Furthermore, what happens when someone wants to use a plugin to alter the title element?

It won't work.

This is but one reason why less code is not always better code and why less code can be of lesser quality.

More Code, More Quality

To make sure that the use of wp_title() is as flexible as possible, we need to define a custom function and filter it using the wp_title filter provided by WordPress:

The code above is obviously more code than the single line in the previous example, but it's also more flexible.

First, the code checks to see if the page is rendering in an RSS feed. If so, it only returns the specified title. Otherwise, it then appends the name of the title to the specified $title string. When viewing the homepage or front page, the code places the description after the separator.

Finally, if the user is paging through the site, the code prepends the page number to the separator and title.

This provides the base functionality for rendering the title element within the theme. This is not the default way to do it for all themes, but it's arguably a better way to do it. 

As such, you can also customize this function to fit whatever you believe is best for your own work.

This Is Quality?

The key takeaway of this tutorial is not how to set up a filter for titles, or how to set up filters, nor is it how to handle titles. Besides, wp_title is being deprecated, as mentioned earlier in the article.

We end up with a customized version of the title. We also give third-party developers the ability to override our own code.

Though this is more code, it's a higher quality solution.

Conclusion

Remember, though: That's not always the case. Sometimes more code can reduce quality and it can increase the complexity. But that's not the point of this article. Perhaps it's best discussed in another tutorial.

Instead, the purpose of this tutorial is to show how less code may result in lower quality and how more code may improve quality. But this isn't a hard and fast rule. Nor is it supposed to be.

Instead, the intent is to introduce a mindset of thinking through what defines quality. Sometimes, less code is quality code; sometimes, more code is quality code.

When working on your project, don't look for ways to consolidate code just for the sake of less code. Look for ways to write code so that it's elegant, extensible, readable, and maintainable, and above all fit for purpose. 

All the above together help contribute to quality.

If you're looking for examples of other WordPress projects that can be used to examine code quality, to use in your work, or in client projects, you may also find something interesting in the marketplace.

If you're interested in other things I've written or produced for Envato, you can check out my work on my profile page, and you can follow me on my blog and/or Twitter at @tommcfarlin where I talk about software development in the context of WordPress.

Don't hesitate to leave any questions or comments in the feed below, and I'll aim to respond to each of them.


by Tom McFarlin via Envato Tuts+ Code