Amber Leigh Turner

I don't work for free.

Do you work for free?

Chances are you answered that question with a resounding “no.”

Unfortunately, in the creative industry in which I participate in, lots of people think it is OK to ask a creative individual to work for free because we “enjoy what we do,” or “it will only take a couple of hours,” or that we’ve “already done it and can reuse it.”

A car mechanic won’t work on cars for free. A lawn care guy won’t cut yards for free. An accountant won’t do taxes for free. A daycare center won’t watch kids for free.

So why do people expect a designer to design a website, or a logo, or a brochure to work for free? Why do people expect any creative person to give up their time to produce a creative outcome for free?

I get asked a lot to do design and web development work for free, or for exposure, or as a donation, or as a gift, or for fun.

I guess they don’t understand that I have to eat, that I have bills to pay, that I have to make a living and that I work to make money to live. I can’t pay for these things with “exposure” or “donations” of my time, or with “gifts,” or because it “was fun” to do. I have to pay for these things with money. That’s how the world works. For most things, we exchange money for a service or a product.

The mechanic isn’t going to work for free for “exposure.” The lawn care guy isn’t going to work as a “donation.” The accountant isn’t going to work as a “gift.” The daycare center isn’t going to watch kids for “fun.”

As a creative individual who owns and run a service based business, I sell units of my time. My time is a finite, limited resource. It isn’t like a product where one or a million products could be sold at the exact same time. I can only work on one client project in each unit of time I can work.

In other words, I must be able to make money for every unit of time I work. I only have a set number of units I can work in a day. If I don’t or can’t make money in those units of time, I can’t pay my bills. I can’t eat. I’m not being greedy, I just want to be able to eat and pay my bills.

When someone asks me to work for free, they are asking me to give up either a unit(s) of time in which I need to make money in order to live, or work during a unit(s) of time in which I do other things (like sleep, or spend time with family and friends, or other “off times” in which I’m not working, like the weekend). They are asking me to pick a bill to not pay, or a meal to not eat, or to give up spending time doing other non-work things.

I’m sure they wouldn’t want to give up some of their income to work for free, or work for no money when they planned to be sleeping, or spending with family or friends. So why do they expect me to do it just because I “enjoy what I do” or “it will only take a couple of hours” or that I “already done it and can reuse it?”

Asking me to work for free because I “enjoy what I do” makes me not enjoy what I love to do. Asking me to work for free because “it will only take a couple of hours” is a couple of hours that could work for a paying client to pay one of my bills. Asking me to work for free because I “already done it and can reuse it” is degrading to my other clients who spent their money and their time for the work I produced only for them. Asking me to work for free “for fun” for your business so you can make money from it is an insult.

Please don’t ask me to work for free, because I will either say “no” or you won’t get a reply at all.

And if you work in the creative industry, please don’t work for free. You deserve to be able to eat and pay your bills.

How to Display Recent YouTube Video(s) and Thumbnails in WordPress Without a Plugin

This is the first ever technical post I’ve written (ever) on how to do something with code, so bare with me.

About three months ago I thought it was a good idea to design a website that would not only pull the most recent YouTube video from someone’s account, along with the title and description, but to also show recent videos in a thumbnail fashion in the footer. Since I was planning to use WordPress for the site, I thought to myself, “Surely someone has done this before and I will be able to find out how to do it with no problem.”

Fast forward to last week: the client accepted the design with the YouTube elements in there (since that is a major part of their business) and I was dead wrong that apparently someone has done this before.

After hours of Googling and trial-and-error, I finally was able to pull a YouTube latest video, title, description, and thumbnail into the WordPress theme I was working on via RSS. And the best news of all, it was without a plugin. I figure others want to know how to do this as well.

Side note: I discourage the use of plugins in WordPress for minor things that can be done in a different way. Why? Because from my experience: plugins update and tend to break, they slow down the loading of your site, and could cause issues to other parts of your site that is completely unrelated. Use plugins for major functionality things, or ones that are extremely heavily supported.

Without further adieu, here is how I was able to pull information from a YouTube RSS feed and display it on my theme, without the use of a plugin. This is meant for beginners to RSS, PHP, and WordPress, so more experienced coders may be bored with some of the details.

First, find your appropriate YouTube RSS feed.

This was tricky. The only real interaction I have with YouTube is watch videos, let alone anything with their RSS feed. Here is an easy way to find the RSS feed address for any YouTube account:

  1. First, navigate to the main profile page to any YouTube account. For instance, I’m going to use Drake’s VEVO YouTube account. The URL is often youtube.com/user/ then the username. I.e. youtube.com/user/drakeVEVO. Make note of the username in the URL. I.e. “drakeVEVO”
  2. Insert the username in the folllowing URL: http://gdata.youtube.com/feeds/api/users/{username}/uploads?alt=rss I.e. http://gdata.youtube.com/feeds/api/users/drakeVEVO/uploads?alt=rss
  3. Tada! YouTube RSS feed. This particular combination focuses on all uploads.

WordPress Code

Next is the difficult part. I found a bit of PHP code that will pull the RSS information and put it in a variable. Then you can use it to display things such as the video, title, and description. Insert this right above where you are wanting to show the YouTube information in your WordPress theme. In my case, I wanted to put it on the home page, so I put it in my custom home.php theme file right above where all of my HTML is for the video.

On the third line, insert your feed URL (as found above) in the area were it says “FEED URL HERE.” This particular code will pull only 1 item. If you want to pull more than one item, change the $maxitems quantity from 1 to whatever amount you want.

<?php

include_once( ABSPATH . WPINC . '/feed.php' );

$feed = fetch_feed( 'FEED URL HERE' );

if ( is_wp_error( $feed ) ) {

return false;

} else {

$maxitems = $feed->get_item_quantity( 1 );

$rss_items = $feed->get_items( 0, $maxitems );

if ( $maxitems == 0 ) :

return false;

else :

if ( is_array( $rss_items ) ) :

?>

This is the first part of two parts of the code. This is simply saying “pull this YouTube RSS feed, if there is no feed, return nothing, if it is there, then pull only one.” Also, the include_one is required by WordPress for all of this to work. You only need this line on a page once, meaning that if you want to have different YouTube feeds on the same page, you only need the include_once once.

Display Thumbnail of YouTube Video

Next part is using the information that the above pulls and displaying it on the site. Think of it as being something like the WordPress loop, where it is looking for information, then once it has it, it will display it. In this case, we are going to display only a thumbnail that links to the video that will take up 100% of the browser viewport. Use this code right below the code above.

<div>

<?php

$i = 0;

foreach ( $rss_items as $item ) :

if ( $i++ > 0 )

break;

$id = get_youtube_ID( $item->get_permalink() );

$enclosure = $item->get_enclosure(); ?>

<a href="http://www.youtube.com/embed/<?php echo $id; ?>"><img src="<?php echo esc_url( $enclosure->get_thumbnail() ); ?>" width="100%" height="auto" /></a>

<p class="view"><a href="http://www.youtube.com/drakeVEVO">See on YouTube</a></p>

<?php endforeach; ?>

</div>

That’s alot of things that I am not even sure what it is doing, but it works. It is using several SimplePie elements such as get_enclosure. WordPress comes with SimplePie to make things like RSS simpler. Others, such as get_permalink and get_thumbnail probably sound familiar because these are Wordpress elements too, but in this case, they are Simple Pie elements.

$id is pulling the YouTube ID of the video, i.e. the random letters and numbers after “watch?v=”  : http://www.youtube.com/watch?v=GxgqpCdOKak

$enclosure is a bit harder to explain, so here is the documentation to it: http://simplepie.org/wiki/reference/simplepie_enclosure/start

The code above will pull the thumbnail and link it to the YouTube embed. Then the following

tag simply is a text line that says “See on YouTube” and then goes to the user’s profile page.

Display YouTube Video, Title and Description

If you want to be able to display more, here is the code to display the video, title and description. Same as with the thumbnail code, using this code right below the first bit of code that pulls the RSS feed.

<div id="youtubevideowrapper">

<div class="youtubevideo">

<?php

$i = 0;

foreach ( $rss_items as $item ) :

if ( $i++ > 0 )

break;

$id = get_youtube_ID( $item->get_permalink() );

?>

<iframe src="http://www.youtube.com/embed/<?php echo $id; ?>" frameborder="0" allowfullscreen></iframe>

<?php endforeach; ?>

</div><!--end .youtubevideo-->

<div class="youtubecontent">

<?php

foreach ( $rss_items as $item ) :

$id = get_youtube_ID( $item->get_permalink() );

?>

<p class="youtubetitle"><?php esc_html_e( $item->get_title() );?></p>

<p class="youtubedescription"><?php esc_html_e( $item->get_description() );?></p>

<?php endforeach; ?>

</div><!--end .youtubecontent-->

</div><!--end #youtubevideowrapper-->

There is some HTML in there for organization sake, but feel free to change that however you need. But let’s walk through the code. The first chunk of code is the same as the thumbnail code. Then, there is an iframe that will display the actual video content (it is pulling the video ID - aka the random letters and numbers - and putting it in YouTube standard iframe code). The last two bits of info is simply getting the title $item->get_title() and description $item->get_description.

Now you have two ways to display YouTube content on your WordPress theme WITHOUT a plugin. Easy peasy.

Extra credit: make it easy to change RSS feed address in WordPress Customize Theme Options.

To take this a bit further, I wanted to allow my client to change the RSS address without touching the code. Here is how you do it:

In your theme’s functions.php file, put the following code:

/* RSS FEEDS */

/* add section */

$wp_customize->add_section('themename_RSS', array(

'title' => __('RSS URLs', 'themename'),

'priority' => 125,

));

/* Youtube RSS */

/* add setting */

$wp_customize->add_setting('themename_theme_options[themename_youtubeRSS]', array(

'default' => '',

'capability' => 'edit_theme_options',

'type' => 'option',

));

$wp_customize->add_control('themename_youtubeRSS', array(

'label' => __('Youtube RSS URL', 'themenane'),

'section' => 'themename_RSS',

'settings' => 'themename_theme_options[themename_youtubeRSS]',

));

Basically, we are adding a section for RSS links. Then we are adding the option of a YouTube RSS setting. If you want to do other RSS feeds, then copy the YouTube part and change the YouTube name to something else (i.e. facebookRSS). For those unfamiliar with this code, you should also change everywhere it says “themename” to your actual theme name, i.e. “amberturner.”

Now that we have that in our functions.php file, time to use it in our theme. Let’s say we want it on our home page. On our home.php enter in this code at the top of the page:

<?php $options = get_option('themename_theme_options'); ?>

Again, replacing “themename” with your theme name. Finally, replace these lines

$feed = fetch_feed( 'http://gdata.youtube.com/feeds/api/users/drakeVEVO/uploads?alt=rss' );

In the code above with these lines:

$YTrss = $options['themename_youtubeRSS'];

$feed = fetch_feed( $YTrss );

Now, go to WordPress Dashboard > Appearance > Customize. There should now be an section on the left side titled “RSS URLs” and a text box for “YouTube RSS URL.” This is where you enter in the feed URL found in the top section of this post. Tada!

Big things poppin'

I’ve been semi-quiet over the last couple of weeks, and for good reason. January 1st is coming up soon, so it is always this time of year where I start thinking about what I want to achieve in the near year.

Over the last couple of years, I’ve had crazy ideas to launch things on New Years. January Creative was launched on January 1, 2012, and I released my book “Student Freelancing 101” on January 1, 2013. So what crazy things do I have up my sleeve for January 1, 2014?

Most of you know that January Creative and AmberTurner.com are getting new sites come January 2014. More than likely on January 1, 2014. But that isn’t all.

I have some refreshes in store for all of my projects, and I even have a brand new project up my sleeve too (oh no she didn’t)!

Why all these changes?

Doesn’t the saying go “change loves company?” Well, if it isn’t a common saying it should be. Many things are changing around me, both professionally and personally, which has got me extremely excited and extremely stressed all at the same time. Why not make it worse by adding more stress?

That is how I roll. I like change to be quick and swift, not come in waves. So all these things I have planned for the new year will help go along with the quick and swift changes I like to make. All at one time.

Yes, I’m crazy. I know.

Over the next few months I will be working on plans, designs, writings, strategies and goals and hopefully not lose my mind come January 1st. I have major client projects that I will be wrapping up, along with major projects of my own.

I can’t wait to reveal more to you in the coming weeks, but until then, keep this in mind:


I had someone tell me I fell off, ooh I needed that
And they want to see me pick back up, well, where’d I leave it at?

- Drake “Headlines” Take Care.

Shut 'er down

Today, the United States shut down the government due to Congress unable to pass a budget before the start of the government’s fiscal year, which starts October 1st. One of Congress’ main responsibilities is to pass a budget to fund the government. Because they didn’t pass a budget to fund the government, lots of parts of government, such as National Parks and NASA, had to shut down almost entirely. Over 800,000 federal employes deemed “non-essential” was told to stay home and could end up not being paid at all during the shutdown. All of this happened because a handful of Republicans in the U.S. House don’t like the Affordable Care Act that went into place in 2010.

The last time the government “shut down” was 17 years ago. Not surprisingly, it happened because Congress Republicans refused to fund Medicare and public health (among other things), something Democratic President Bill Clinton would not budge on. It lasted 28 days through a period of different stop and start dates. That time, Republicans were blamed mostly for that event, while Clinton only received some of the blame.

Learn from our mistakes or we are doomed to repeat it.

This government shutdown has just started. It happened because Congress Republicans refused to fund Obamacare (aka ACA) and/or want to delay certain parts of it, something Democratic President Barack Obama will not budge on.

Ok Republicans, we get that you don’t like Obamacare. We get that your 40+ votes to repeal most or all of Obamacare were denied. We know you don’t care that the Supreme Court has upheld Obamacare as constitutional. We know that you don’t care what more than 2/3rds of Americans want you to do.

We get it, you can stop now.

No law ever passed anywhere in this nation or anywhere in the world is perfect. No law ever passed anywhere in this nation or anywhere in the world has been passed without objection.

Shutting down the government because you don’t like one law is much like shutting down the lights in a house where someone painted the bathroom a color you don’t like.

Shutting down the government because you don’t like one law is much like canceling a football game because you don’t like a play that a team made the week before.

Shutting down the government because you don’t like one law is much like getting a divorce because you don’t like a dress that your wife purchased.

See how silly it sounds?

It’s ok if you don’t like a certain law, but why decide to shut everything down because you didn’t get your way is beyond me. The fact that you want to hurt 800,000+ peoples’ paychecks because you don’t like that that everyone has to purchase health insurance even though more than two-thirds of Americans are grateful for the chance to purchase affordable coverage is ludicrous.

But a government shutdown isn’t hurting your paycheck. More than likely Obamacare didn’t affect your current insurance.

Some of those 800,000+ people you furloughed today voted for you to be in office. They don’t deserve to sit home not knowing when they will get paid or if they can pay their mortgage or put food on the table.

You claim you want to put people to work, that you want to help the economy. Sending 800,000+ people home with no guarantee of a paycheck is not putting people to work. Sending 800,000+ people home with no guarantee of a paycheck is not helping the economy.

If all 800,000 furloughed workers earn minimum $30,000 a year, you just reduced their spending power by a minimum of $65,753,424.66 (800,000 x $30,000 / 365) TODAY ONLY. That is almost $66 MILLION.

$65,752,424.66 can buy 219,111 gold iPhone 5S 32GB phones at $299 each.

$65,753,424.66 can buy 2,104 new cars at $31,252.00 each.

$65,753,424.66 can buy 329 homes at $200,000 each.

And that is only for today.

In case they don’t tell you this, when people don’t spend money, the economy goes to shit. You want to put people to work? You want to help the economy? Shutting down the government doesn’t help with either.

Get your act together, put your big boy pants on, act like responsible adults, and start working and make compromises so that the government can be back open and people are working again.

1  of  2