Setting up your website is a daunting task especially for a new business. Having a team of developers that you can work with that know current trends and techniques in your corner will help your business create a something that you can be proud of. We think we are that team.

We built Classic City Consulting with top specialists in our industry. Our developers, designers, content creators, and marketers have a wide range of interests, talents, and skills that all work to maximize our creativity power. We are dedicated to showcasing and sharing a company’s story in web, print, and applications.

5 Steps to Getting Your Website Launched

(1) Kick-off Call

The hardest part of any big project is getting started. We can’t offer suggestions unless we know what you want and you don’t know what you want until you know what is possible. During this first meeting, we like to hear about your goals with your website.

Questions that you should think through:

It’s during a Kick-off call that we learned the problem that Georgia Engineering Foundation [https://classiccity.com/code/application-development/] faced was that they were overwhelmed with too many hiccups in their scholarship application process. They needed a system to accept the applications and then a backend system where they could be easily reviewed. We were able to do research on the most cost effective way to streamline the process for the scholarship applicants and the reviewers. From what we learned in that first meeting, we implemented a system that allowed their annual scholarship applications to grow from 300 to 800 in the first year.

(2) Drawing up a Plan

Whether you need a new website or updates to your old site, we want to create something that you can look at to see our vision for your website. The colors won’t be quite right and the pictures won’t be yours, but it’s always easier to tell what’s wrong than to picture, from nothing, what is right.

Organizing all your wants and needs into a single document is the hardest part of any project. A part of our process is taking the time to think through all the backend problems and present you with a solution that we think will help you to accomplish your goals.

What we need from you:

(3) QA – Your Feedback

We don’t get it right the first time. We never have and probably never will. It’s hard to get our own site right the first time and we know what we are looking for. This is the stage where you can come in and tell us what you like, what you hate, and what you think matches your preferences. Our QA calls are some of our most productive when a client has fully reviewed their site and compared it to the list they originally gave us. Sometimes, we will get a “I really wanted <X>” but X wasn’t in the original plan. That’s okay. We can add it! That’s what QA is for.

Before a QA meeting:

(4) Putting the Plan in Action

Web development is a daunting endeavor, but that’s our problem. We’ll keep you in the loop on the progress and will do what we do best: Code.

The key to a flawless development stage is putting the right people in the right place. I was reading recently an article from Brad Frost, a web designer, speaker, consultant, writer, and musician. As a developer who also has a myriad of interests, Frost discussed how his company has changed in the past five years.

Near the beginning of the article, Frost cites one of his favorite elements of effective web development,

… straddling the line between in-the-weeds technical/design issues and fuzzier cultural/people issues.

Frost argues that technical issues tend to work themselves out, a clear result in mind to fix the problem. However, people problems tend to be difficult to resolve…and he loves these sorts of problems. We echo this sentiment in how we run our team. We assign specialists to where they best fit within a project.

It’s about people: I get to work with a talented team.

Client’s Role:

(5) Go Live

After a few short weeks, your website is ready! Our team isn’t going away though. Learning your new site is our top priority. We will do screencasts explaining how to make edits and updates. Additionally, if you find something we missed, let us know and we’ll make the change.

Creating a website is a team project. Don’t expect us to just disappear after this is over. Keeping you up to date on necessary upgrades is what we’re good at.  We are reaching out to clients right now since the release of PHP 7.2 and WordPress 5.0.

[ccc_inline_callout title=”Let us help with your new or current site” content=”Get in touch to start the process today.”]

Security of WordPress websites is an important matter these days. With 32% of websites being built off of the technology, it has become a large target for attackers. If an attacker is able to find a vulnerability in WordPress, he can attack a large number of sites without the additional work of finding new vulnerabilities on each website. Because of this, it is critical that you keep your WordPress site up to date to help defend against the latest attacks.

Typical Updates

The most critical component to keep updated is WordPress itself. Themes and plugins vary across different sites and you should update them. Plugins especially are commonly targeted. Keeping all of your site’s files up to date ensures it has the latest security patches.

Consequences of Lax Security

Almost all attacks are performed by computers, not humans. As soon as your website is online, computers will begin probing your defenses. If you are the unfortunate victim of an attack, here are some common outcomes:

  1. Your website pages may be injected with ads.
  2. Your user data may be compromised.
  3. Your server may be used to send spam.
  4. Your server may be used to launch additional attacks.

If your website is compromised, your web host will not be happy (I’ve been there!). If they detect anything malicious coming from your account, they will suspend it on the spot. If you have a previous history of good behavior, you may get away with a slap on the wrist – clean up the mess, update everything, and they’ll reactivate your account. However, you may be on the hook for additional charges, and your hosting company may refuse to do any more business with you. By launching attacks from their server, you’ve tarnished their reputation, which can lead to them being distrusted by big companies like Google. Oops.

Defender Plugins

An additional step toward increasing your site’s defenses is to use a plugin dedicated to the job. WordFence is great for what it does, but it does charge a high fee to do so. Defender plugins such as WordFence can detect and block repeated attempts to login, block entire ranges of IP addresses, and automatically scan your installation’s files for malware on a regular basis. You can often configure alerts to notify you when anything important (read: dangerous) happens with your site, so you can jump on top of the problem the moment it occurs.

Does My Provider Protect Me?

This is an all around hard question to answer. Since this is a service which has value to customers, providers who offer automatic updates or other security features will advertise this fact on their product pages. Both WP Engine and GoDaddy’s WordPress hosting offer automatic WordPress core updates. WP Engine goes a step beyond, by blocking many known attacks and other suspicious activity.

This is where most support stops. Plugin and theme updates are rarely offered as part of a hosting package. It’s a disappointment, but it makes financial sense. Plugin updates especially often come with changes that may cause your site to stop working as intended. WordPress plugins are often so interconnected and reliant on each other that if one plugin updates, another might have to update to continue working. It can also be a difficult task to decipher which plugins are causing problems after an update. As a final note, there are many plugins with subscriptions or other payment requirements. It’s impossible for your webhost to buy all the licenses for your site and every other, and then keep them updated on top of that!

But all hope is not lost. There may be no automated way to keep on top of all of the updates, but that is where managed support comes into play. You can have a consulting company (like us!)  to worry about this for you. You can also purchase your licenses through them so that they will have access to the latest updates as they become available without you lifting a finger.

[ccc_inline_callout title=”Managing security giving you a headache?” content=”Get in touch to see how we can keep your site up to date, all the time.”]

Backups are an important part of running a website, but many people don’t have them. What happens if your site gets hacked? What happens if you update a plugin, and your website stops working? What happens if your website hosting provider has a hardware failure, and your content is deleted?

All of these questions and more should point you in the direction of regularly backing up your website.

Types of Backups

Your WordPress site can be separated into two broad categories – files and database. When deciding on a backup solution, you should make sure your tool can fully backup both. If you are using backups through your hosting provider, it should cover both of these. If you are using a backup plugin, be sure it supports both types, and test to make sure it does! Your hosting provider may restrict functionality a backup plugin needs to properly create backup files.

Backup Plugins

The easiest way to get started with backing up your WordPress site is to use a plugin like BackupWordPress. These plugins will let you more easily recover from an update failure, but they are not ideal. First, they are often limited in how they backup your files. The backups are usually stored in an insecure manner, so if a hacker has taken over your site there’s a good chance they also have control over your backups. Second, if all of your backups are on the same server, you don’t really have a backup!

As mentioned earlier, a hardware failure can strike at any time, wiping out all of your hard work. You are also vulnerable to fires and natural disasters.

Off-site Backups

Off-site backups are stored in completely different data center from your primary server. This can be as simple as manually downloading a backup to your personal computer, or as complex as an automated service to backup your site to another location.

Manual Backups

Most website hosting providers will give you access to tools that will allow you to make your own backups. Files can be downloaded via FTP. Simply create a new folder on your computer, and download the entire WordPress site contents from your server to your personal computer. Contact your hosting provider for details on setting up FTP if you do not have access already. We recommend using the FileZilla FTP client.

Database

Manual backups of the database are less common, but vitally important. The database, after all, houses all of site’s posts, pages, and more. Many web hosts provide access to a database management tool called phpMyAdmin. This is a powerful tool which lets you inspect and modify your database using SQL queries directly. Care should be taken when using this tool if you are unfamiliar with it. However, one if the key features it offers is a way to export your entire database so it can be easily moved and re-imported later.

After opening up phpMyAdmin, we’ll have a list of database on the left. Click on your WordPress site’s database.

After selecting a database, it will display all of the tables in that database. To backup the database, click on the “Export” tab at the top

From this screen, select the SQL format, then click the “Go” button to begin downloading your site’s database as a file. Depending on how large your site’s database is, the website may appear to hang for a bit while it generates the backup file before the download begins. Don’t close your browser tab if you can help it!

Use Your Web Host’s Tools

If it isn’t obvious by now, doing backups yourself can be quite a bit of work. Most reputable web hosts will provide an automatic backup solution (often for an extra charge). This can be an easy first step to making sure you have backups of some sort. It is still important to investigate how they are backing up your website. In particular, are they using off-site backups? How often are they backing up your site?

WP Engine

WP Engine is a hosting provider that specializes in WordPress sites. It has a number of handy features, one of which is built-in easy backups. Log in to your WP Engine dashboard, and click “Sites” at the top. Then select the site you’d like to manage from the list of sites on your account. Now click “Backup Points” on the left to view the backups for this site.

This page will list all of your backups. By default, you’ll have a daily backup. If you want force a new backup – maybe you’re about to do some large site changes – you can press the “Back up now” button to create a new backup in WP Engine. If you select a backup from the list, you can choose to press “Restore” to overwrite your site with the saved backup version, or you can choose “Download ZIP” to download a ZIP file containing your website’s complete files and database. Easy manual backup, with no waiting on slower FTP.

GoDaddy

If you have WordPress hosting through GoDaddy, you also get access to free daily backups. Log in to your GoDaddy account, and manage your WordPress hosting. Then click the “Backups” tab, or the “Manage” button in the “Backups” panel.

GoDaddy keeps 30 days of daily backups. You can choose if you want to only restore the files, the database, or both. Then you can select which date’s backup you’d like to restore. Click “Restore” and you’re done!

How Often Should I Back Up?

This is a question with a simple answer – as often as it needs! I have a personal website that I might not change for six months or more. As long as I know I have a safe, working backup from the last time I changed the website, I’m happy.

This becomes more complex depending on your website’s function. If you have a popular blog with new posts published regularly, backing up at least daily is recommended. A popular e-commerce site might need even more frequent updates – up to hourly.

Another option is to look into automatic fail-over servers. This method has two servers with the exact content online and running. You have a third server which is the server people actually connect to. This server then detects if your primary server has failed, and if so, seamlessly redirects all traffic to your backup server.

Keep in mind that automatic fail-over is not really a backup, but an additional method of redundancy against a single server failure. This is often not done unless you’re making enough money to hire a system administrator / IT professional to manage your server(s) full-time.

Backup Before Updates

There are many items that can be updated on your WordPress site, and any update may cause an unexpected problem. Plugins, Themes, and the WordPress core can all be updated. Since these different systems are often interconnected and dependent on each other, one of these updating may cause a different one to stop functioning. If you backup before you update, you can revert to the backup if something stops working right after the update.

Test Your Backups

A backup is no good if it cannot be restored. Testing backups is critical to ensure your backup and restore process is functional. It is best if your hosting provider has a “staging” environment for you to test with. This lets you make destructive changes in an essentially duplicate installation without impacting your main website. When testing the restoration of backups, you don’t want your main site to go down if there’s a problem either.

[ccc_inline_callout title=”Tired of manual backups?” content=”We can set you up with hosting with automatic backups!”]

What are Post Types?

A post type allows WordPress to store content in a more organized way. Data from these post types can then be displayed, they are actually stored in the same manner as all posts. For instance: did you know pages in WordPress are actually stored as posts, but with a “Page” post type? Under the hood, pages use the WordPress posts system, and when you click on “Pages” in the WordPress dashboard, it simply shows you all posts with the post type of “Page”. Most major plugins handle their data in a similar manner. WooCommerce products are posts with a custom post type. Modern Tribe’s Events Calendar uses custom post types for its events. It’s the WordPress way!

Why Create a Custom Post Type?

A custom Post Type will let you store and display data in a more organized way. If you need a clear separation of data, where you are reusing the same format many times, a custom Post Type may be an ideal solution for you.

Many themes ship with custom Post Types built-in. For example, there is a trend in themes geared toward making a website for attorneys adding in the ability to enter and display attorney information into a custom-built “Attorney” Post Type. Details often include name, qualifications, contact information, and description. With a custom Post Type, we have a list of all of the data in one place, and we know they all use the same data format. This allows us to easily display the information on the site. WordPress also features a way to list all posts of a given post type. From this provided example of attorneys, there will be an attorney Archive page which lets the user see all Attorneys on a single page – without any additional fuss. If the data is entered in the WordPress dashboard, it’ll automatically be displayed on the archive page.

Creating a Custom Post Type

We’re about to dive into code to show how you can add custom post type functionality to your website.

First, you should decide if you want to build custom post type functionality into a theme or plugin. If you are a theme developer with one theme, it might make sense to build a post type inside your theme (that’s what we’ll be doing in our example). If you are adding functionality to a client’s website, or you are a theme developer with many themes, adding additional post types is better suited to a plugin. This ensures that regardless of what theme a user has activated, the custom post type functionality will still work. Also as a theme developer, this can save you from duplicating your code across many themes.

Registering a Custom Post Type

We’ll create our custom post type functionality inside of our child theme, because it is quicker to implement the code and templates.

Let’s build a system to add “Sales Associates” to our website. Each associate will have a name, phone number, e-mail address, and short biography.

Add the following code to functions.php.

function create_custom_post_type() {
register_post_type( ‘associate’,
array(
‘labels’ => array(
‘name’ => __( ‘Associates’ ),
‘singular_name’ => __( ‘Associate’ )
),
‘public’ => true,
‘has_archive’ => true,
)
);
}
add_action( ‘init’, ‘create_custom_post_type’ );

The first parameter passed to “register_post_type” is the unique identifier for this custom post type (the slug, which will appear in URLs, for instance). “Name” is text that will show up in the WordPress dashboard menu. Since “Sales Associate” may be too long, I’ve shortened it. “Singular_name” is the same name, but singular instead of plural. This is used in WordPress dashboard.

After saving the code, go to your WordPress dashboard. You’ll see we now have an “Associates” menu option.

We need to perform an additional step to get the archive page for this new post type working. From the WordPress dashboard, go to “Settings → Permalinks”. Select an option (we recommend “Post name”) and then save changes.

We’ll take the post title for the Associate’s name, and the content editor for the biography. That means we still need to add an additional custom meta field that can be edited from the WordPress dashboard and displayed on a page.

Adding Editable Fields

Let’s return to functions.php.

First, we need to create an expandable container that will house our editable fields.

Add the following code:

function add_cpt_meta_box() {
add_meta_box(
‘associate_meta_box’,
‘Associate Data’,
‘show_cpt_meta_box’,
‘associate’,
‘normal’,
‘high’
);
}
add_action( ‘add_meta_boxes’, ‘add_cpt_meta_box’ );
function show_cpt_meta_box() {

}

“associate_meta_box” is a unique ID for this expandable box.

“Associate Data” is the title of this box as seen in the post editor.

“show_cpt_meta_box” is the function callback for displaying the fields within this meta box.

“associate” is the custom post type slug for which pages this meta box will be visible on

“normal” this is the context, which is where on the screen this box will be rendered.

“high” this is the priority, which determines the order in which meta boxes are shown on the screen.

For further details, check out the “add_meta_box” API call on WordPress.org.

Now when you go back and edit an “Associates” post, you’ll see your new “Associate data” drop down. It’s empty, but we’ll fix that.

Let’s revisit our show_cpt_meta_box function and display some fields.

function show_cpt_meta_box() {
global $post;

$meta_fields = get_post_meta( $post->ID, ‘associate_fields’, true );
$phone = “”;
$email = “”;

if(isset($meta_fields[‘phone’]) && !empty($meta_fields[‘phone’])) {
$phone = $meta_fields[‘phone’];
}

if(isset($meta_fields[’email’]) && !empty($meta_fields[’email’])) {
$email = $meta_fields[’email’];
}

?>

<input type=”hidden” name=”associate_nonce” value=”<?= wp_create_nonce( basename(__FILE__) ); ?>”>

<label for=”meta_fields[phone]”>Phone Number</label>
<br>
<input type=”text” name=”meta_fields[phone]” id=”meta_fields[phone]” class=”regular-text” value=”<?= $phone ?>”>

<br><br>

<label for=”meta_fields[email]”>Email</label>
<br>
<input type=”text” name=”meta_fields[email]” id=”meta_fields[email]” class=”regular-text” value=”<?= $email ?>”>

<?php
}

This will add our new “phone” and “email” textboxes to the post editor. Let’s take a look.

These fields don’t do anything yet however. Let’s add the functionality in functions.php to save our post’s meta data.

function save_cpt_meta($id) {
if ( !wp_verify_nonce( $_POST[‘associate_nonce’], basename(__FILE__) ) ) {
return $id;
}

if ( defined( ‘DOING_AUTOSAVE’ ) && DOING_AUTOSAVE ) {
return $id;
}

if (‘associate’ === $_POST[‘post_type’]) {
if ( !current_user_can( ‘edit_post’, $id ) ) {
return $id;
}
}

if(!empty($_POST[‘meta_fields’])) {
update_post_meta( $id, ‘associate_fields’, $_POST[‘meta_fields’] );
}
}
add_action( ‘save_post’, ‘save_cpt_meta’ );

Now, let’s go back to an Associate post, enter some data for our two fields, and click update. When the page reloads, our fields should be automatically populated with our saved data.

Displaying Data

Like any other post, our custom “Associate” post type will generate a public URL when the post is published. In my case, this URL is http://localhost/wptest/associate/john-doe/

You’ll notice, however, that if you visit this URL it does not show any of the meta data (the phone number or the email address). This is because it is using the default WordPress post template to output this page. We’ll need to create a customized version and display our meta data.

WordPress outputs posts in the template file single.php. Find this file in your theme directory and duplicate it. If you have a child theme, move the file there. Now rename our duplicated single.php to single-associate.php. WordPress uses the naming convention single-slug.php to override the output based on the post type.

Now, crack open single-associate.php. We’ll add some lines after get_template_part to output our meta data. This file is on the larger side, so I’m not pasting the whole file. We are using the Twenty Seventeen theme. The only important part is to output your meta data inside of the loop.

$fields = get_post_meta( $post->ID, ‘associate_fields’, true );
echo “<strong>Phone: </strong>” . $fields[“phone”];
echo “<br><strong>Email: </strong>” .$fields[“email”];

If all went well, you should now see this extra meta data output onto your post.

And because this output page is specific for this post type, if we view any other post (such as our default Hello World post), we shouldn’t see any of this output

Perfect!

Conclusion

Custom post types help you wrangle your data into reusable pattern that can then be easily edited and easily displayed on various parts of the site. However, it takes a good deal of initial time investment to setup the system. Likewise, you would probably have much more complicated template files than the examples provided in this post to truly make the data feel at home.

[ccc_inline_callout title=”Need to organize your site’s data?” content=” Let us build a custom post type solution for you!”]

Child themes allow you to extend or modify your theme’s functionality while allowing you to perform painless theme updates in the future.

Most large, popular WordPress themes receive years of free updates. If you modify these theme files, your changes will be overwritten by a theme update, and you will have to manually reapply your changes to the updated version of the theme. The solution to this problem is to create a child theme.

Do I need a child theme?

You only need a child theme if you are trying to change the look or behavior of your theme. Keep in mind, you can edit your theme’s CSS easily through the settings panel it came with, or by clicking “Appearance -> Customize” from the WordPress dashboard. You only need to change theme files for more drastic changes.

Examples of child theme uses

One of the most common files updated in a WordPress theme is functions.php. It’s used as a catch-all for additional code changes without having to make your own plugin. For example, if you want to modify the query that shows up on your blog roll, you’ll need to edit functions.php.

Another use for child themes is to change the behavior of existing pages. For instance, changing how blog posts are displayed.

Before we get started

Your theme may come with a child theme, which will save you some work! You can check by clicking on “Appearance -> Themes” from the WordPress dashboard. Look for a theme titled “YOUR THEME NAME Child”. If this theme exists, you can copy it to your computer via FTP if you don’t already have a copy. You’ll edit the files in this child theme and upload them back to the server when you are done.

To make your own theme for use on your website, you’ll need a copy of your theme files, and the ability to upload the theme files to your server (such as via FTP). Once you’ve got this sorted, continue below.

Creating a child theme

For this example, we’re going to be creating a child theme for the default WordPress theme, Twenty Seventeen. Since the theme folder is named “twentyseventeen”, create a new one called “twentyseventeen-child”. This folder will go in your themes folder under “wp-content”.

Inside this folder, create the empty files “functions.php” and “style.css”.

Good practice is to have a theme thumbnail, and the easiest way to do this is to copy the one from your existing theme. Copy the file “screenshot.png” from the “twentyseventeen” theme folder into your “twentyseventeen-child” folder.

Here’s what your child folder should look like at this point

Style.css

This file can be used to override any CSS from the theme. Most of the time, it’s easier to use the CSS editor in the WordPress dashboard by going to “Appearance -> Customize”, but this option is here if you need it.

Style.css is important because it is read by WordPress to determine information about your theme. You must include some information in order for your theme to be displayed properly in the WordPress dashboard. So edit this file, and add the following code to the top:

/*
Theme Name: Twenty Seventeen Child
Theme URI: https://wordpress.org/themes/twentyseventeen/
Author: the WordPress team
Author URI: https://wordpress.org/
Template: twentyseventeen
Description: Twenty Seventeen brings your site to life with header video and immersive featured images. With a focus on business sites, it features multiple sections on the front page as well as widgets, navigation and social menus, a logo, and more. Personalize its asymmetrical grid with a custom color scheme and showcase your multimedia content with post formats. Our default theme for 2017 works great in many languages, for any abilities, and on any device.
Version: 1.7
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentyseventeen-child
Tags: one-column, two-columns, right-sidebar, flexible-header, accessibility-ready, custom-colors, custom-header, custom-menu, custom-logo, editor-style, featured-images, footer-widgets, post-formats, rtl-language-support, sticky-post, theme-options, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you’ve learned with others.
*/

This is a direct copy from the “style.css” file included with Twenty Seventeen with some small changes. We’ve updated “Theme Name” to reflect this is the child theme. We’ve also updated the “Text Domain” for internationalization. Finally, we’ve added the line with “Template” to let WordPress know which theme we are extending.

Functions.php

You would hope WordPress would be smart and automatically load in the existing CSS and JavaScript from our parent theme, Twenty Seventeen… but it doesn’t. We need to tell WordPress to load in the parent theme’s styles, and also our new child theme’s styles. Editing “functions.php”, adds the following code:

<?php
function twentyseventeen_child_enqueue_styles() {
  $parent_style=’twentyseventeen-parent’;
  wp_enqueue_style( $parent_style, get_template_directory_uri() .’/style.css’ );
  wp_enqueue_style( ‘twentyseventeen-child’,
    get_stylesheet_directory_uri() .’/style.css’,
    array( $parent_style ),
    wp_get_theme()->get(‘Version’)
  );
}
add_action( ‘wp_enqueue_scripts’, ‘twentyseventeen_child_enqueue_styles’ );
The first call to “wp_enqueue_style” loads our parent style. The second call adds our child theme’s CSS, noting the parent theme is a dependency, so it must be loaded before our child theme’s CSS.

Let’s test it out

That’s all you need to have a functional child theme. At this point, it’s good to test it out and make sure it’s working! From the WordPress dashboard, go to “Appearance -> Themes”. You’ll see two entries with the same screenshot. One for our original parent theme, Twenty Seventeen, and another for our new child theme, Twenty Seventeen Child. If you’re handy with an image editor like Photoshop or GIMP, it’s not a bad idea to edit the screenshot.png file and make it visually different. It can be as little as adding the text “CHILD” across it, just so it visually stands out!

When you hover your mouse over the child theme, you’ll get options for previewing or activating. Go ahead and click “Live Preview” and make sure things look the same as they do with the parent theme. If everything looks fine, activate the theme.

Extending and modifying the theme

We’ve created the child theme, but we haven’t made it any different from its parent yet. This is where it gets tricky! You have to decipher how your theme works if you want to modify how it looks.

You can modify the functionality of your theme by placing a file with the same name as one of the parent theme’s files in your child theme’s folder. Generally, you don’t want to write the entire file by hand, you just need to tweak something to fit your needs a little better. So, you can simply copy the file from the parent theme into the child theme and modify the copy in the child theme folder.

Let’s modify the blog post listing to get rid of the date, as an example. The date is shown highlighted below:

The file where this is displayed from is “twentyseventeen/template-parts/post/content.php”

We’ll need to maintain this file structure in our child theme. Copy “content.php”, then in the “twentyseventeen-child” folder, create a folder “template-parts” with another folder “posts” inside of that one, and finally, paste “content.php” inside of the “posts” folder.

Now edit your child theme’s “content.php”

Look for the following section:

if ( ‘post’ === get_post_type() ) {
            echo ‘<div class=”entry-meta”>’;
                if ( is_single() ) {
                    twentyseventeen_posted_on();
                } else {
                    echo twentyseventeen_time_link();
                    twentyseventeen_edit_link();
                };
            echo ‘</div><!– .entry-meta –>’;
};
We want to comment out the lines “twentyseventeen_posted_on();” and “echo twentyseventeen_time_link();” so they are no longer executed. We can do this by adding a “#” to the beginning of the line. You can also delete the lines, if you like.
Here’s what the code looks like after.
if ( ‘post’ === get_post_type() ) {
            echo ‘<div class=”entry-meta”>’;
                if ( is_single() ) {
                    #twentyseventeen_posted_on();
                } else {
                    #echo twentyseventeen_time_link();
                    twentyseventeen_edit_link();
                };
            echo ‘</div><!– .entry-meta –>’;
};
After saving the file, this is what the blog post looks like:
That’s it! We’ve made our child theme and successfully modified the theme’s behavior.
Got lost along the way? Download the example child theme created for this post.

Conclusion

Child themes will save you from headaches in the long run by allowing you to update the parent theme. In the short term, however, they require an up-front investment of time to setup properly. It is not worth the effort unless large changes need to be made to the theme which require editing of PHP files. If you’re not a developer, you should probably shy away to avoid breaking anything! Lucky for you, we know just the guys for the job…

[ccc_inline_callout title=”Need Expert WordPress Theme Help?” content=”Let us wrangle your theme for you. We’ll make it look just how you want!”]

Some 30.5% of websites use WordPress.  Let that sink in.  Almost one in every three sites you visit on a daily basis are built in WordPress.  That’s a ton.  And WordPress is 100% open-sourced, run by the community of amazing WordPress developers (as well as some people from Automattic on company time).  For each version of WordPress that is released, hundreds of Core Contributors (aka. volunteers) commit patches and fixes to the core of WordPress.

[ccc_chartist chart=”cms-info”]

With that being said, this team of people have an intense job to do.  They need to make sure that all the Core Contributors are submitting code that actually works.  Once code has been submitted, they run the code through tests to validate it’s quality and doesn’t open up WordPress to any new vulnerabilities.  They wrangle their volunteer force and keep them excited about continuing to help – because without the volunteer force, WordPress wouldn’t be anywhere near where it is today.

So, how does a cooperative team mixing paid and volunteer workers keep WordPress safe for 30.5% of websites on the web?

What WordPress Does To Keep Your Website Secure

Daily Code Reviews

Every single day, the WordPress security team is doing code reviews of the core of WordPress.  They have a team of volunteers that are internal to WordPress, plus automated systems that make sure the code that is saved away and the most recent platform version is secure.

Bug Bounty Program

Who’s better than the millions of people who use WordPress on a daily basis to let the WordPress team know if there are bugs in the system?  The WordPress security team partnered up with HackerOne to create a bug bounty program.  If you find an error or a security breach in WordPress, submit it through their bug bounty portal.  If it’s a legitimate bug, you’ll receive a cash reward from WordPress!

Talking to Other CMS Providers

WordPress is by far the most used content management system out there – however, there are other large CMSs: Drupal and Joomla are the biggest competitors in the space.  The WordPress security team maintains active conversation with the developers of those platforms to coordinate their updates across the web.

Think about this: let’s say there’s a big hole in PHP (this is the foundation of a lot of the popular CMSs) – the issue isn’t WordPress- or Drupal-specific.  The chances of malicious hackers knowing about the hole are relatively slim at the beginning stages.  But, if one of the major CMS providers releases a patch before the others, now the vulnerability is out in the public. Malicious hackers will then attack the other CMSs.

Rather than fighting against one another, the security teams at the major open-source CMSs work together when they find an issue with underlying code that effects everyone.  They patch the holes in their systems, and they time a simultaneous release of their fixes.  This ensures that:

Automatic Updates

Prior to 2014, in order to upgrade your WordPress website, you had to:

In 2014, that process improved.  Automattic created a way to push core WordPress updates to your website, rather than relying on each site’s developer to pull them down manually.  This allows Automattic to get the most secure code loaded onto your site before hackers can take advantage of any vulnerabilities in the code.  Since its initial run, the synchronous update has boasted fantastic results for WordPress users:

[ccc_chartist chart=”failure-rate”]

What You Can Do to Keep Your WordPress Website Secure

Don’t Have Terrible WordPress Admin Passwords

The biggest problem with sites that get hacked are because users have very weak passwords.  This is one of the best things you can do to keep everything safe and secure on your site.  We recommend passwords at least 25 characters long and filled with combinations of: uppercase letters, lowercase letters, numbers and symbols.  The less “guessable” the password is, the better.

The goal here is that if hackers want to get into your website, they have to apply the most time intensive method possible – where they increment each letter and number individually until they find the right password.  When you use all the variables listed above within a 12 character password, there are 475,920,314,814,253,376,475,136 options hackers have to get through to figure out yours. If hackers could guess 2 billion passwords per second, it would still take them up to 7.5 million years to guess your password!

How Many Possible Password Combinations

LC = Lowercase Letters
UC = Uppercase Letters
N = Numbers
SC = Special Characters

[ccc_chartist chart=”password-strength”]

Get an SSL Certificate

A lot of basic SSL certificates are free.  In fact, with Classic City Consulting’s hosting plans, we provide an SSL certificate free of charge.

Even if you’re just writing an entertaining blog about the crazy things your cat does every day, there are a couple of reasons why you need an SSL on your site:

  1. Everything is encrypted.  Everyone who visits a site online wants the data they type in to be secure.  SSLs used to only be useful if you were taking credit card information on your site.  Now, with identity theft, fraud, hacking, ransomware, and more sophisticated villainy possible online, everything on your site needs to be transferred securely from point to point.  Get a Let’s Encrypt certificate on your site today: most hosting providers have it available now.
  2. Google likes it – does it get much simpler than that?  Google changed their algorithm back in 2014 to give a rankings boost to sites that have SSL.  Must be important then.  Google wants to ensure that the sites that they are sending their searchers to are safe and do their due diligence to make protect their visitors’ data.

A secure site is a team effort for every website, from the core code developers like Automattic and WordPress Core Contributors to the webmaster you commission to manage your site once it’s live online.  Security means staying one step ahead of the risk and investing in the long term safety of your site.  Connect with a team you can trust.

Responsiveness refers to a website’s ability to expand and collapse depending on the size of the screen it is displayed on. This will be a vital concept in web design as mobile devices claim an ever increasing share of internet use. Consider a site you visit frequently. When you are on a mobile device, it shrinks down and likely shows only carefully chosen information deemed most important. When you view it on a desktop, much more content is shown and it is laid out appropriately to fill a larger space, rather than simply displaying a larger version of the same layout.

In April 2015, Google reinforced the importance of responsiveness by rolling out what they called their “mobile-friendly update.” Their new algorithm boosts the visibility of sites with mobile versions, which in turn decreases the relative ranking of sites that do not have mobile counterparts. Developers heard this loud and clear. The world’s most powerful web company solidified mobile design as a necessary part of the future of the internet.

We discussed user experience (UX) in a recent post. It is vital to note that a responsive site does not necessarily ensure that users are experiencing your website in the most efficient way possible. Great UX must be maintained within a responsive site. Your users will visit your site with the expectation that they can easily find certain information and take certain actions. If they can’t quickly find what they need, they will go elsewhere and not return.

As mobile devices have become so prevalent, development firms have trended toward “mobile first” design. Since smartphones and other handheld devices are the smallest screens websites are viewed on, they are the platform where space is most valuable. Firms assess what content is most important and design for mobile devices with those priorities in mind. They then move on to the bigger screens with a clear focus on the most vital information.

Going in increasing order of screen size allows developers to isolate the core functions of a website and work from there rather than having to come up with items to remove while collapsing to a mobile site. Look for this trend of mobile first design to continue as responsiveness remains a priority in web development.

So you want to be a designer? It’s an exciting and creative job that gives you a step up into the profitable and ever-changing world of website technology. And let’s be honest for a moment: people and businesses will always need websites designed. This allows for an excellent amount of job security. So what skills should you know before jumping into the deep end? Here are five key skills to have under your belt in order to become a stellar website designer:

1. Understand the Basics

Perhaps the most important skill for budding designers is the ability to understand basic HTML and CSS, the coding languages for the vast majority of websites today. Yes, there are tools that designers can use, such as Macaw and Webflow, that can create beautiful websites using only drag and drop principles. No coding required. But the fact of the matter is you can only rely on these website builders for so long. In any sort of legitimate designing position, a client will eventually come up with something too large or complex. Then you will want to have the knowledge of HTML and CSS.

Knowing the basics of HTML and CSS should be important to designers because it allows you to see the works of your hands come to life. This knowledge will allow you to come to a better grip of what your limitations and expectations as a designer are. HTML and CSS will tell you how different web aspects will appear, such as where images will be placed, how text will look, amongst other things. Would you build a house without a foundation? No? Then why would you choose to ignore the cornerstones of many websites?

2. Marketing is Key

Your website will unfortunately not draw people to it on its own. The budding designer must be knowledgeable about the advantages of marketing. With the rise of social media, it has become easier than ever to get your name out to the public. However, many designers see this as someone else’s job or not important. However, in order to get people to acknowledge your brand, they must know about it. Being knowledgeable of many of the major social outlets (Twitter, Facebook, Instagram) will allow you to get your name into the public sphere.

Another important thing to understand is the idea of actual marketing. There has been a rising trend of utilizing advertising campaigns. Websites can use paid marketing schemes such as Google AdWords to place ads in places where certain people will see them. Know the ins and outs of these marketing campaigns and they will help your clients get business!

3. A Picture’s Worth a Thousand Words

After spending so much time on a design, make sure you follow through completely. It’s important to put effort into all aspects of your design. One of the most important aspects to pay heed to is the quality of the images on your site. Yes, designers can create lovely designs but should the images have poor quality then your whole site can be easily disfigured. Knowing the quality of good photography or graphics is vital to the overall look of your website. Spending the extra money and time on the quality of these things will not only improve your site but also improve your own image as a designer.

4. Print is important too

As a designer, you need to be well rounded. Not only will this open more doors, but it will also help to expand your skill set and make you more marketable. So learn how to design print materials for any websites you may create. Anybody can slap a logo on a template and call it a business card, but having quality print materials is a vital part to any business. That’s where you can come in.

Knowing how to translate a company’s website and logo into print is an excellent skill to have. Many businesses still rely heavily on the likes of business cards, brochures, and yard signs, among other things. Having this knowledge will give you the edge when clients go looking for a designer.

5. Be Creative

In today’s ever expanding society of the newest and trendiest websites, you have to stay on the cutting edge of things. Being creative is an imperative part to any good designer’s tool kit. A computer will never be able to create beauty and that’s where you can one up them. Let your creative juices flow and create a masterpiece on the Internet. Keep an eye on those popular websites around you and learn from them, and even take certain aspects from them, but do not copy them. Be your own designer and create something unique and beautiful.

There are clearly many valuable skills a website designer should possess. The ones listed above are just a sampling of those considered most important. If you truly want to be a designer, start with creativity and go from there. Should you have the drive and desire, things should fall into place from there.

Your website is arguably the most important piece of your business. You want to make sure you not only have one that functions, but that it’s also up to date, and easy for customers to navigate. Here are five warnings signs that reveal if your website needs an expert redesign:

1. No traffic, no business

If you notice that the traffic to your site has decreased, this might signify a problem. The main goal of your website is to bring in as many visitors as possible and to have them make their visit worthwhile, buying your product, signing up for a service, or even just leaving a name and email. If people aren’t visiting, they certainly aren’t buying.

In order to combat this, you have several options. Try integrating your social media with your website, and pushing your business on those outlets. In addition, you may want to invest in an advertising campaign. Try talking with a professional about search engine optimization (SEO) and how they can help you drive traffic to your site through ad-words and other means of advertising.

2. Not viewable on mobile devices

The technology market has steadily been moving towards the rise of mobile devices, such as smart phones and tablets. If your website is unable to be viewed properly on these devices, you will lose visitors and potential customers. With a redesign plan, be sure to talk with a designer who has experience in this flexible design (also called responsive design.) This will ensure that your website will be able to be viewed across all devices and all browsers.

3. Slow…loading…

Does your website take forever to load? In today’s busy and stressful society, this could mean the downfall of your business. Overdramatic it may seem, but many people will not wait around for a site to load. They will simply move on to another, faster loading site to do their business. In order to make your site load faster, an update is highly recommended. Many older websites are very image and link heavy, making the site slower. Any designer worth anything will be able to change this, among other things, and will allow your site to run smoother and faster.

4. Outdated and antiquated

Sometimes the popularity of your website will have nothing to do with the product or service you’re selling. There is constant competition between rival businesses about which site looks better, runs faster, and is considered “trendier.” You might be surprised at how much appearance counts for in the website business. Try visiting a competing website and going through the process to buy something. See if there is anything you might be able to improve on your own website.

5. No change, no gain

Have you updated your website since it’s launch? If the answer to that question is no, then you may need to evaluate your design. Even if your site has only been around for a year or two, trends in the industry seem to change everyday. By paying attention to these ever shifting trends, you can be sure that your website is up to date and utilizing all possible advantages technology has to offer. Be willing to make these changes and you’ll be rewarded with an increase in traffic and more business.

As is evidenced above, a possible update and redesign for your website can be quite important. If your website does not take full advantage of every person that visits, then it’s wasting precious potential. Guarantee your website is up to date, and you will see your business increase.