Introduction

Requirements

Before we dive in, I want to thank and congratulate you on purchasing one of my items. I truly appreciate your support and I'll do my best to provide you with an outstanding service.

Let's go over the minimum requirements that you will need in order to have a fully functional site using this theme running in no time.

  • An available domain - I recommend namecheap
  • Hosting provider - I recommend (mt)
  • WordPress Framework
  • FTP program (FileZilla, Cyberduck etc)
  • The theme files that you downloaded from themeforest.net/downloads

WordPress Install

WordPress provides a fully comprehensive and in depth guide to installation on their codex site.

So instead of going over what's already been outlined there, I will simply point you in the direction of the Famous 5 Minute Install.

If you have little or no knowledge of how WordPress works please take some time to familiarize yourself with the framework.

Theme Files

After purchasing the theme, if you chose to download "All files & documentation" your theme folder should have the following files contained within it.

  1. Available Files
    1. castilo.zip
    2. castilo-child.zip
    3. Documentation (folder with this help file)
    4. Licensing (folder)
    5. Samples (folder)

If you chose to download "Installable WordPress file only" you should have the castilo.zip archive by itself, which is ready to be installed via the dashboard.

Making Custom Changes

The main package comes with a child theme (castilo-child.zip) that inherits the look and functionality of the main theme. A child theme is the safest and easiest way to modify an existing theme, whether you want to make a few tiny changes or extensive changes. Instead of modifying the theme files directly, you should use a child theme.

If updates will be available (which might be important for security or functionality) and you decide to update the theme you should know your file changes are safe in the child theme. Speed up development time and be smart about it from the beginning.

The child theme must be installed after the main theme installation.

Installation

Install via Dashboard

Once you have logged into your WordPress Dashboard, navigate to Appearance > Themes. Click on the Add New button and then from the available options select upload. Navigate to where your files are stored locally and select the castilo.zip file then Install Theme.

If the theme was installed successfully you should be met with notifications regarding installing plugins and activating the theme.

Do not use the main ZIP file (which contains Documentation and Samples) - use the installable castilo.zip only, otherwise the whole process will fail with a message: "Broken theme and/or stylesheet is missing".

Install via FTP

To install the theme via FTP you will need to unzip the theme archive (castilo.zip) somewhere onto your machine. We will assume you have a working FTP program with login credentials as one is needed to install WordPress.

WordPress places it's themes within the /wp-content/themes/ folder. Navigate to this folder within your install and then place the castilo folder within it. You will know this is the correct folder as the default WordPress themes (Twenty Sixteen, Twenty Fifteen) will be here as well.

Once the folder has been uploaded, in your WordPress Dashboard navigate to Appearance > Themes and activate the theme.

Install Plugins

Once the theme has been installed successfully you will be prompted to install the plugins available with the theme and some that are recommended. Click on "Install Plugins" to get started.

Podcast Helper is the required plugin that MUST be installed. While the remainder of the plugins are not required, I recommend you install them as well.

Theme support cannot be offered for external plugins (even if they are recommended). If you notice any compatibility issue please let me know — I'll investigate it and do my best to offer suggestions.

Install Updates

When theme updates are available (which might be important for security or functionality) you can keep your site up to date in various methods:

  • Manually download the Installable WordPress .zip file via ThemeForest > My Account > Downloads and use an utility plugin to update the .zip file conveniently (which also creates a backup of the old files);
  • Use the official Envato Market plugin to receive updates directly in your site dashboard.

Conside using a child theme in the first place if you want to make custom changes to the theme, so your file changes are safe with an update.

Site Setup

Demo Content (Optional)

If this is your first time using WordPress I strongly recommend you import the demo content. Importing the demo content will bring in all the posts, pages, menus, widgets and theme options from the demo, into your site.

Note: The import process requires the Podcast Helper plugin (bundled), so make sure you install and activate it first thing.

To import the demo content navigate to Tools > Import > Demo Data > Run Importer within your dashboard and follow the instructions.

Note: If you have problems with this process please try the default WordPress import — visit the Tools > Import > WordPress section and upload the content.xml WordPress file available in the Samples folder.

Page Setup

If you've installed the demo content move on to Permalinks section, otherwise let's start at Step 1.

Step 1 - Page Creation

To create a page navigate to Pages within your dashboard and click Add New. Give your page a title and then set the page template (if other then the default regular template). The following pages require special templates to be set.

  • Episodes - displays the latest episodes from a category
  • Home - displays a predefined homepage layout with the latest episodes, news and additional custom content
  • Posts - displays the latest posts from a category
  • Sidebar - displays a sidebar where you can add custom widgets
Step 2 - Reading

We now need to change the homepage of the site to whatever page you like. Navigate to Settings > Reading in your dashboard.

Change the Your homepage displays setting to A static page and set your desired pages.

Menu Setup

To setup your menus navigate to Appearance > Menus. If you've installed the demo content, two menus should be available to select from. If not, create a new menu.

Add the pages that we created previously into the menu (rearrange if needed) and then under the Menu Settings tick Top Menu location.

Once that's done hit Save Menu

The theme contains an optional menu location for social links, which will be displayed in the header and footer of the site. Add direct links using the Custom Links section to a new menu, save it and select the Social Links Menu location.

Post/Page Settings

Post/Page Settings

When editing any post you'll notice some additional properties under the content editor. The section is called Additional Theme Fields and may have different options depending on the post type or page template. Take some time and familiarize yourself with this section and read each field description using the Help tab in the upper right corner of your admin screen.

Setting up a page to list episodes is as simple as creating a new page, selecting a Episodes Template and adding new episodes to your site.

You also have the option to filter the episodes by a specific category (useful if you like to create different unique episodes pages).

This goes the same for the Posts Template, but instead of episodes the page will filter posts.

Episodes Settings

Episodes are custom post types, similar to posts. They have additional settings specific to a podcast context and available in the Episode Fields section.

Take some time and familiarize yourself with this section and read each field description using the Help tab in the upper right corner of your admin screen.

If you want to display the latest episode in a specific context (like the homepage header area), you can use a simple shortcode in any content area or widget. Here is a shortcode example and its supported parameter attributes.

[podcast_episode id="latest" title="true"]
  • id — id of the episode post or 'latest' (default: latest);
  • title — determine if the title of the episode is posted above the audio player (default: false);
  • title_tag — tag in which the title is wraped (default: h2);
  • title_link — determine if the title links to the actual episode post (default: true);
  • title_class — add an additinal class to the title element.

Homepage Settings

The theme comes with a predefined layout template for a homepage that displays the latest episodes, news and other content (like Instagram images, Facebook feeds, etc.). Setting up such page is as simple as creating a new page, selecting the Home Template in the sidebar and publishing it.

This page template has meta options for each section it displays: Episodes, News and additional custom HTML. You can find these options under the main content editor, with additional description texts for each field.

Finally, you need to change the homepage of the site to display this specific new page. Navigate to Settings > Reading in your dashboard and change the Your homepage displays setting to A static page and find the page you just created.

You can add additional content to this page template by simply using the default content editor.

A good example is the new Instagram content block that replaces the old setting: read more about this.

Theme Options

Customizer Options

When using the theme, you may have noticed a section within the dashboard called "Customize". This section contains all the main options which customize the look and feel of the theme. Lets navigate to this page and have a look at the available options.

Site Identity — set the Logo for the web site that will replace the Site Title and Tagline text information (suggested image dimensions 150 × 40, but will adapt nicely to your needs). This section also gives you the option to set a Site Icon that will be used as a browser and app icon.

Colors — set some basic options regarding site colors. Experiment with different color schemes and if your project requires it, use the Additional CSS section to customize the theme's style further.

Header Media — set the default image for the header of all the pages or a custom video for the front page.

Menus — manage standard menu options.

Widgets — manage widgets placed into the sidebar or footer area provided by the theme.

Homepage Settings — manage page that will be displayed as front page.

Footer Banner — call to action section displayed on every page, right above the footer area.

Additional Options — set additional options for the site.

Additional CSS — add extra CSS to your site for advanced users (and avoid modifying the core style.css file directly).

Podcast Options

The theme offers the ability to build a proper feed for your podcast, which you can share and publish on any podcasting service (including iTunes). You can access it via Episodes > Podcast Settings. Please go over all the options so your listeners will know more about your podcast before they subscribe.

If you experience 404 errors for the feed page, you should visit the permalinks settings page and re-save your permalinks.

Import Podcast

The theme offers the ability to import podcast episodes and settings from an external RSS feed (via Tools > Import > Podcast RSS Feed). This allows you to transfer information from one site to another or from any podcasting service to your personal site.

The import process obtains only the information and the items from the feed (title, description, audio link, etc. including the images), but doesn't handle the actual transfer of audio files (which in almost all cases will cause errors due to hosting provider limitations). I strongly recommend using a storage plugin that serves your media files from an external provider, avoiding any bandwidth or any other kind of technical limitation (WP-Stateless, WP Offload S3, Google Cloud Storage).

There is the ability of running the import process from time to time, making it easier for you to automate your posting process. You'll need to install and activate the WP Crontrol plugin and add a recurring PHP Cron Event with the following code (changing the feed URL and category ID/slug, of course):

// Set up the environment if ( ! defined('ABSPATH') ) { require_once( dirname( dirname( dirname( dirname( __FILE__ ) ) ) ) . '/wp-load.php' ); } require_once( ABSPATH . 'wp-admin/includes/admin.php' ); define( 'WP_LOAD_IMPORTERS', true ); require_once( WP_PLUGIN_DIR . '/podcast-helper/includes/rss-importer/class-podcast-rss-import.php' ); // Run manual import process, replace the first parameter to the URL of your feed Podcast_RSS_Import::run_import( 'http://site.url/feed/podcast', $import_category = 'category_slug_or_id', $import_attachments = true, $import_settings = false );

Further Info

Video Guides

FAQ

  1. Missing style sheet error when installing the theme?

    A common issue that can occur with users new to installing WordPress themes is a "Broken theme and/or stylesheets missing" error message being displayed when trying to upload or activate the theme. This error message does not mean that the theme you have purchased is broken, it simply means it has been uploaded incorrectly. Luckily, there is a very easy fix.

  2. Is the theme SEO friendly and where can I access such settings?

    The theme is built to be SEO friendly, by emphasizing titles with heading tags, having the content before anything else, stripping out useless content, fast loading, setting titles in the header for better crawling and so on. All these help, but you have to remember that "Content is King"! You should not blame the theme if your website doesn't appear in top search engine results, but instead focus on providing good content and in this way, your website will definitely look great in search engines. I suggest you install a SEO plugin which offers great additional options and control over titles, keywords or description, just to mention a few. I recommend using Yoast for SEO.

  3. How can I translate the theme in my own language or use multiple ones based on user preference?

    This theme is localized, which means it can easily be translated in your own language. There are various methods to do a simple translate or create a website in multiple languages, so just use the one which works best for you. If you're not familiar with translating themes manually (using .pot file), I suggest you install either the free Polylang plugin (which works well along Loco Translate), or the premium WPML plugin. This way you'll be able to edit the language strings directly from the WordPress dashboard and offer multiple languages to the end user.

  4. How can I edit the Instagram section, where do I setup my account?

    When editing the home page (that has the Home template set) you have the ability to add your personal account by editing the meta field called Instagram username found under the content editor.

    I suggest using a dedicated plugin like Flo Social that allows you to easily add your Instagram account and generate a feed which can simply be added via the Home content. FloSocial Plugin is not working anymore

    I suggest using a dedicated plugin like Smash Balloon that allows you to easily add your Instagram account and generate a feed which can simply be added via the Home content.

    Here's a reference code you might find useful as a HTML block (or plain HTML in the Classic Editor) to integrate the plugin shortcode:

    The Instagram widget was retired due to Instagram API restrictions, so it is now required to install a specialized plugin.

  5. How can I change icons or access the icons library?

    This theme imports the Material Design Icons, a full suite of official material design icons (created and maintained by Google), with additional community-designed icons and brands icons for easy scalable vector graphics on websites or desktop. Please refer to their documentation on how to use the icons.

  6. How can I set up a subscription form in the Footer area?

    The theme can use the MailChimp for WordPress plugin with this form code when setting up the plugin. Go to Appearance > Widgets and use the MailChimp for WP Form widget in the Footer section.

  7. How can I create jumping points for individual episodes?

    The theme has a way of integrating "jumping points" by adding them via simple HTML in the episode content editor (they must only contain the jump-point specific class and the href time format):

    <a class="jump-point button button-filled button-small" href="#00:06">Skip to: 00:06</a> <ins>Text that might go along with the jumping point.</ins>
  8. How can I workaround the NGINX rules for the media files of the player and avoid a media not found error or inability to use the player?

    If your hosting provider is based on NGINX then you need to add some specific bypass rules for the media rewrites:

    1. for WP Engine sites you need to log a support ticket asking them to add the NGINX bypass rules for download-episode and episode-player URLs of your site's configuration file (Before Rule): # Podcast Helper - Castilo Theme rewrite download-episode/([^/]+)/([^/]*)/? /index.php?podcast_episode=$1&podcast_slug=$2 break; rewrite episode-player/([^/]+)/([^/]*)/? /index.php?podcast_episode=$1&podcast_slug=$2&podcast_ref=player break;
    2. for other NGINX based hosts you will need to add two new rules to your nginx config in the server directive, in order to handle the download-episode and episode-player URLs as a .php file (even though the URL states that it is a media file) and bypasses it through to PHP-FPM: location ~* ^/download-episode/ { try_files $uri $uri/ fastcgi_index /index.php; include fastcgi_params; fastcgi_pass 127.0.0.1:9000; } location ~* ^/episode-player/ { try_files $uri $uri/ fastcgi_index /index.php; include fastcgi_params; fastcgi_pass 127.0.0.1:9000; }

      You may need to change fastcgi_pass 127.0.0.1:9000; to match that of your PHP-FPM configuration.

Further Support

If you have any questions that are beyond the scope of this help file, please feel free to email via the Support tab of the item or via my user page contact form (right sidebar, at the bottom). I'd appreciate if you can help me out by rating and leaving your feedback for the theme via themeforest.net/downloads. Thank you and good luck with your work!