Modern WordPress Theme User Manual

Thank you and congratulations for using Modern theme by WebMan Design!

This user manual will teach you how to set up and use the theme. In case you have any questions that are beyond the scope of this documentation, please join WebMan Design support forum.

Enjoy your Modern WordPress theme!
Love this theme? Support it by leaving a review

WordPress

WordPress is free open source CMS software for creating websites. It can scale with your needs when you're ready to grow and is easy to learn with many free and low-cost tutorials. You can learn more about WordPress at wordpress.org.

What is a theme?

A WordPress theme changes the way your site looks and affects the style of the content displayed on it. WordPress themes are built so you can change your site's design without losing content. As you are reading a user manual for a WordPress theme and it requires WordPress to run, let's install it first.

Installing WordPress

You can run WordPress locally on your computer, or install and use it on your web hosting account (what kind of web hosting should you use?).

Securing WordPress

You can improve your WordPress installation security taking these steps:

  • Set the security keys in wp-config.php file.
  • Do not use admin as user name and set strong passwords!
  • After installation is done, remove wp-admin/install.php file.
  • Keep backups of the database and WordPress files.
  • Keep your WordPress installation, plugins and themes up to date!
  • Strengthen security further with additional specialized plugins.

Tutorials

Beginner tutorials, resources for first steps with WordPress:

Websites & Articles:

Videos:

Theme Installation

Important: Theme requirements

Modern requires at least WordPress 5.2 and PHP 7.0 to work properly. Please make sure to meet the requirements.

Appearance → Themes → Add New → search for "Modern" → Install → Activate

As you've obtained the theme at WordPress themes repository, use this procedure for installation:

  1. Log into your WordPress admin.
  2. In WordPress admin navigate to Appearance → Themes and click the Add New button next to "Themes" page title.
  3. On "Add Themes" screen use a search field to search for "Modern".
  4. Once you've found the theme in the search results list, click the Install button when hovering over the theme.
  5. After the theme is installed, activate it by clicking the "Activate" link.
  6. Now you can go to Appearance → Welcome page for information on how to set up your website (and the theme). Also, please pay special attention to your website image sizes setup.

Tip: Welcome page

Don't forget to check the theme welcome page at Appearance → Welcome. It contains everything you need to start.

Tip: Get info about updates

Get fast information about new theme updates by subscribing to WebMan Design on Facebook and Twitter.

Theme Updates

You will be notified in the WordPress admin each time a new updated theme version is available. Install the update following instructions below.

Tip: Info on social networks

If there is a specific procedure required during update, this will be shared on the Facebook and Twitter pages.

Important: Back up your website

To keep things safe please consider backing up your website and database before doing any updates to your website.

Automatic Theme Update

WordPress itself will notify you about a new theme update. The only thing you need to do now is to proceed with update procedure suggested in your WordPress dashboard.

Tip: Automatic update failed?

If automatic update fails for whatever reason, please update the theme manually → see below.

Manual Theme Update

Download the theme ZIP package from where you've obtained it originally. Then follow the steps below:

Updating via WordPress dashboard

A simple way of doing a manual theme update is deleting and reinstalling the theme directly via WordPress dashboard. You can read an article or watch a video on how to do this.

Updating via FTP

This is more advanced manual update procedure and you will need an FTP client (such as FileZilla) to connect to your server:

  1. Download the newest theme ZIP file from where you've obtained it and unpack the ZIP file on your computer.
  2. Now you will need an FTP client to connect to your server.
  3. On your server navigate to WORDPRESS_FOLDER/wp-content/themes/ folder.
  4. Delete the existing modern folder (or create a backup just in case - you can do this simply by renaming the folder name by appending .backup to its name so it becomes modern.backup, for example).
  5. Copy the unpacked theme modern folder from your computer (from step 1 above) into WORDPRESS_FOLDER/wp-content/themes/ folder on your server.
  6. Log into your WordPress admin area and check the version of the theme in Appearance → Themes. Your theme should be updated now. (And you can delete the modern.backup folder from step 4 above.)

Content: Demo

The theme allows you to import a demo content, which matches theme demo website. Then you can simply change the imported demo content to your needs and build your website faster that way.

Before you import the theme demo content, please check these important notes:

Tip: Delete leftovers

Theme demo contains a lot of pages. You will certainly end up not using most of them. In that case it is strongly recommended to delete the leftover demo content you no longer need from your website. It improves your website performance and relevance.

Important: Install on fresh WordPress

It is recommended to install demo content on empty, fresh WordPress site. (If you are testing the theme on a computer and not your live website, you can always reset WordPress to a fresh state.

Warning: Images and media quality

Please understand that demo images, audio and video files are of low quality. This is to prevent any copyright infringement. You should replace them with your own, properly licensed media that fit your website project.

Recommended: Classic widgets interface

WordPress 5.8 introduced a new block-based interface to widgets and sidebars management screen. Theme demo content was built using the classic widgets interface, so it is highly recommended to install and activate Classic Widgets plugin to retrieve the classic WordPress widgets interface again.

Warning: Page builder compatibility

If you want to use a page builder, please understand that if the theme demo content was not built with your page builder, you will not be able to edit the imported demo pages.

→ Read knowledge base article for more info.

And now, for detailed instructions about importing theme demo content please visit demo content repository at GitHub (where it is kept up to date).

Starter Content

This theme supports and contains its own WordPress starter content for easy and fast (small) website deployment.

Starter content is displayed in theme customizer on a fresh WordPress installation only. Once you save the customizer settings, the starter content will be ported into your website automatically.

If you have already created some content beforehand, the starter content will not be available for you in customizer. In that case you can consider installing a demo content (see above).

Content: Pages

Setting Up Home and Blog Page

  1. Navigate to Appearance → Customize → Homepage Settings (or you can also do this at Settings → Reading).

  2. For "Your homepage displays" option set "A static page".

  3. Select your homepage and posts page from the dropdown lists. Posts page becomes your blog page.

Templates

Modern theme supports WordPress page/post templates functionality and contains selection of predefined templates for you (see the list below).

Setting up template in editor
Setting up template in editor
"Front page template"

This is a special page template designed for your website front page (homepage). It displays 6 most recent portfolio projects, 6 most recent blog posts, page content (with featured image, if set) and 3 most recent testimonials.

The options of this page template (like sections location, disabling sections, number of posts they display) can be controlled in Appearance → Customize → Theme Options → Layout.

"With sidebar"

By default, there is no sidebar displayed on pages. However, if you would like to display a sidebar on a page, use this page template with it.

Page Excerpt

The theme adds support for excerpts also to WordPress pages. This functionality basically matches the post excerpt → check more info about excerpts.

Page Intro Section

Colors of intro section can be customized in Appearance → Customize → Theme Options → Colors: Intro. Please note that intro text color will affect also the "loose" elements displayed over intro section and website background, such as site title and tagline (logo), header social icons menu and homepage slideshow captions.

Page intro is mostly a specially styled background image on of the website header area (coming down behind website content area too) for website sub pages, but on your homepage it displays either a background image with custom intro text, or a slideshow of featured posts and portfolio projects:

On blog homepage

If you are displaying blog on your website homepage, an intro text is displayed over the intro image. You can set this intro text in Appearance → Customize → Theme Options → Texts → "Default blog intro text".

On static page homepage

If you set a static homepage, the page featured image is used as intro image, and page title is used as intro text. You can further override the intro image by setting your homepage banner_image custom field and intro title by setting banner_text custom field.

Homepage slideshow

Finally, if you choose some of your posts and/or projects as featured (see NS Featured Posts plugin), these will be displayed in a slideshow on your website homepage (doesn't matter if its set up to display blog or static page). Again, you can further override the intro image and intro text for specific post/project displayed in the slideshow by setting its banner_image and/or banner_text custom fields.

On sub pages

On every page except your website homepage, the intro only displays a specially styled page/post featured image as a website background image.

There are these filters applied on the image to style it as complimentary image not to disturb from the page/post content: grayscale, blur, image is horizontally flipped.

On all pages

By default, the intro image is taken from your website header images that can be set in Appearance → Customize → Header Media. These images will be also used as fall back in case no other image override is found (see below).

Content: Posts

Excerpt

Excerpt will be displayed in posts list. If no excerpt is set, a portion of post content will take its place.

If you set a custom excerpt text for a post or page, this will be also displayed in page intro section (main title area) unless you hide it with a template.

Adding/editing excerpt field
Adding/editing excerpt field

Archive Page Title

By default WordPress displays a caption in the archive page title (such as "Category:" in front of a category name). Use Archive Title plugin to hide these labels.

Table of Contents on Parted Post

If you are setting up a multipage post (using a "Page break" button in visual editor, or <!–nextpage–> tag in "Text" tab of visual editor), the automatic table of contents will be generated for the post/page for you.

All you need to do is to set up a post parts titles at the top of each post part (so, immediately after <!–nextpage–> tag) with H2 heading.

Posts List Layout

In Appearance → Customize → Theme Options → Layout you can set up how posts, portfolio projects and testimonials are displayed in lists. Default display is equalizing height of each post in a particular row. However, you can also choose a masonry posts layout.

Please note that there is a difference in displaying "Gallery" post format in each posts list layout. In equalized height list there is a slideshow displayed for "Gallery" post format. In masonry list there are only images without any slideshow.

You can also set up a number of columns displayed in posts lists in Appearance → Customize → Theme Options → Layout

Setting Up a Post Format

On the post edit screen you can choose a post format supported in the theme:

Standard post

This is basic standard blog post layout. Featured image, if set, is displayed above the post content. Post excerpt is displayed below post title both on single post pages and in posts lists.

Audio post

Displays audio player (or playlist) to play your audio files. Could be used for podcasting.

Insert your audio player (or playlist) (or embed media) anywhere in the post content. The first audio player found will be used in the post media area in posts list. The single post page will display as usual.

Gallery post

Insert a gallery anywhere in the post content. The first 3 gallery images will be used in slideshow in the post media area in posts list. The single post page will display as usual.

Image post

In posts list it displays a featured image, or the first image found in post content, followed with post excerpt. Font sizes in posts list are different than in default standard post format. This post format is also marked with an image icon. The single post page will display as usual.

Link post

It enhances any links in the post content. No post title in posts list and full post content is displayed there.

Quote post

Displays a full post content as a quote, styled with accent colors. Also displays a post featured image if set.

You can use a cite HTML tag (inside a blockquote tag) to set the quote source. This way you can use any inline HTML to set the quote source.
Alternatively, you can set the quote source as a quote_source custom field, but there is no HTML allowed here.
Finally, if none of these are set, the post title is displayed as quote source.

Status post

Status post format displays a whole post content in posts list. It is a short status update, similar to a Twitter status update. You can also set a post featured image, or the post author Gravatar will be displayed instead.

Video post

Displays video player (or playlist) to play your video files. Could be used for video blogging.

Insert your video player (or playlist) (or embed media) anywhere in the post content. The first video player found will be used in the post media area in posts list. The single post page will display as usual.

Content: Portfolio

The Portfolio custom post type gives you an easy way to manage and showcase projects on your site. It is provided by Jetpack plugin.

First you will need to enable this post type in Jetpack plugin's options in Jetpack → Settings → Writing in order to use it.

For more information about Jetpack Portfolios please visit dedicated information page.

To display all portfolio projects on your site, you can use a portfolio archive page link in the navigation. Or Jetpack [portfolio] shortcode to display portfolio projects on a page.

Tip: Custom link

If you would like to redirect the project to a custom URL use Page Links To plugin.

Tip: Renaming the post type

If you would like to rename this post type, use the Custom Post Type Editor plugin. To rename the custom taxonomies related to this post type, use the Rename Taxonomies plugin.

Tip: Custom products order

For custom posts order you can use a plugin, such as Intuitive Custom Post Order.

Info: Homepage display

Most recent portfolio projects are also displayed on the "Front page" page template. You can control their display by setting up Appearance → Customize → Theme Options → Layout theme options.

Content: Testimonials

The Testimonial custom post type allows you to add, organize, and display your testimonials. It is provided by Jetpack plugin.

First you will need to enable this post type in Jetpack plugin's options in Jetpack → Settings → Writing in order to use it.

For more information about Jetpack Testimonials please visit dedicated information page.

To display all portfolio projects on your site, you can use a portfolio archive page link in the navigation. Or Jetpack [testimonials] shortcode to display testimonials on a page.

Tip: Renaming the post type

If you would like to rename this post type, use the Custom Post Type Editor plugin. To rename the custom taxonomies related to this post type, use the Rename Taxonomies plugin.

Tip: Custom products order

For custom posts order you can use a plugin, such as Intuitive Custom Post Order.

Info: Homepage display

Most recent testimonials are also displayed on the "Front page" page template. You can control their display by setting up Appearance → Customize → Theme Options → Layout theme options.

Customization: Menus & Navigation

Navigational menus for your website can be created at Appearance → Menus. They may contain links to pages, categories, custom links or other content. You can specify a custom menu item label, as well as other attributes.

Display menus on your website by assigning them to a predefined theme menu location. The theme defines these menu locations for you:

Primary Menu

This is the main navigation in the header of the website.

Menu in this location can be nested and hierarchically organized and you can also use a simple megamenu functionality here.

It is also mobile-ready menu and, if needed, mobile functionality can be disabled at Appearance → Customize → Theme Options → Others.

Social Links

Please read the "Social Links" documentation section below for more info.

Create a Menu

Follow the instructions in WordPress documentation for how to create a menu.

Tip: Add a post type archive link

You can add any custom post type archive link into your menu:

Adding custom post type archive link to menu.
Adding custom post type archive link to menu.
Illustration image. May not display this actual theme.

Megamenu

With built in simple megamenu functionality you can display child menu (sub-menu) items in columns.

Megamenu example preview.
Megamenu example preview.
Illustration image. May not display this actual theme.
  1. Set a megamenu class on the parent menu item (1st level menu item).

    Setting up menu item class.
    Setting up menu item class.
  2. Then the 2nd level menu items (first child menu items) become captions for megamenu columns.

  3. Finally, the 3rd level menu items (second child menu items) become actual menu items within your megamenu columns.

Customization: Social Links

Social icons linked to your social network profiles can be displayed anywhere on the website. But beforehand you must create and set up a social links menu:

  1. Go to Appearance → Menus in the WordPress admin.
  2. Click create a new menu link.
  3. Give the menu a name, such as "Social Menu".
  4. Click Create Menu button.
  5. Click the Custom Links header on the left side of the page.
  6. Type a link (such as https://www.facebook.com/webmandesigneu/) in the URL field.
  7. Give the link a label by typing in the Link Text field. (This label text will be accessibly hidden.)
  8. Click Add to Menu.
  9. Repeat the above steps for additional social links.
  10. In the Menu Settings section at the bottom, check the "Social Links" box for Theme locations.
  11. Click Save Menu button.

Adding your social links as a custom menu allows you to sort your profiles and add as many as you want. Once you assign a social links menu this way, feel free to use a Navigation Menu widget to display it in sidebars of your website.

The theme displays icons as SVG images. For full list of supported icons please refer to assets/images/svg folder of your theme.

For links starting with mailto: an envelope icon is applied. For unrecognized links a link chain icon is used.

Social sharing buttons

If you want to add a social sharing buttons to your website to allow your visitors to share your content, please consider enabling the Sharing module of Jetpack plugin, or use different dedicated plugin.

Customization: Theme Options

Modern seamlessly integrates its options into live preview customizer. You can set up your site's title, tagline and logo, home and blog page, manage menus and widgets, customize colors, layout, typography and others.

Customizer can be accessed at Appearance → Customize. All the changes you make in Customizer will be immediately displayed in the preview, but they will be made live only after you press the Publish button.

At Appearance → Customize → Theme Options panel you'll find theme-specific options. Check them out to get familiar with theme customization capabilities.

Localization

Every WordPress theme contains some texts that need to be translated into your language if you are building a non-English website. This theme if fully translation ready.

The theme also supports RTL languages.

To enable your language in the WordPress website, please switch WordPress into the desired language localization.

Tip: Adding languages into WordPress

Check out tutorial on how to install WordPress in your language.

How to Translate a Theme

Method 1: Using Poedit software

  1. Make a copy of the original modern/languages/modern.pot file.

  2. Rename the copied file now: add hyphen followed with your language code locale, and change the file extension to "po". For example, the British English file would be named modern-en_GB.po.

  3. Use Poedit to translate the file and export (save) translation in "mo" file format.

  4. Upload translated modern-en_GB.mo and modern-en_GB.po file into your WordPress languages directory, into themes folder (such as /wp-content/languages/themes/modern-en_GB.mo (if the themes folder does not exist in your WordPress languages directory, create it).

Warning: Don't lose your files!

When you update the theme, all custom translation files will be deleted from /wp-content/themes/modern/languages folder. Do not put your custom translation files into that folder! Basically, you should never modify the actual theme files and folders.

Methos 2: Translating in WordPress admin

If you would like to translate the theme directly in your WordPress dashboard you need to use a specialized plugin. Check out Loco Translate plugin and instructions on how to use it at beginner's guide and technical overview.

Translate Plugins Too!

Your website is built with WordPress system itself, a theme and some plugins.

There is a high chance that WordPress itself is already translated into your language. So, you don't have to translate it on your own. You have also learned how to translate the theme above. But what about plugins and their texts?

If you are lucky, your plugin contains your language translations already and you don't have to do anything. But if you need to translate a plugin, the best advice is to check the plugin's documentation for the best approach.

Alternatively you can also use Loco Translate plugin (again) to translate your plugins directly in your WordPress admin area.

Share Your Translation

Please make your translations available for everyone by submitting them to WordPress translations repository. Thank you!

Accessibility

Accessibility in web development means creating a web site that everybody can use regardless of one's hardware, software, or sensory, or physical impairment. It is about building a barrier-less web.

While creating accessible website is a complex process that includes a content strategy, Modern theme helps you with being accessibility ready out of the box. It complies to WordPress accessibility requirements and was built to help you create a website that passes WCAG 2.2 level AA requirements.

Among other features the theme itself applies proper headings structure, uses ARIA attributes and landmarks where needed, adds informative "read more" links, makes your website navigation keyboard accessible, creates skip links for you and provides sufficient color contrast in default color scheme.

However, please understand that creating an accessible website is not just about a theme. You need to apply accessibility principles also to your website content and be cautious when using plugins. For further information please read WordPress documentation about accessibility.

And for even more information about accessibility please check:

Focus on Readability

Content area of this theme was designed carefully to provide the best reading experience for your visitors. Maximum line width is set to roughly 70 characters (can be tweaked in theme options). With proper line height and spacing around elements it is easier for visitors to digest your website content.

Headings Hierarchy

To comply with accessibility guidelines, the theme follows this headings structure:

Max one h1 on any given page

Theme outputs only one first-level heading (HTML tag <h1>) on each page. This is reserved for a page main title.

Important: Exceptions in templates

Read more about exception from this rule applied with certain templates. For example, you can remove the h1 title altogether and create your own custom one in a page content.

Site title heading

Site title (logo) is rendered as h1 only on homepage. On other pages the h1 tag is reserved for the actual page main title.

Hierarchy

Theme follows the best practice by hierarchically organizing heading levels, not skipping any of them. For example, h3 headings can be found only in a section titled with level h2 (and not h1). You should do the same when building your site content too.

Tip: Test it out!

In case you would like to test a page headings hierarchy, there is a great browser extension for this called HeadingsMap.

Plugins

Recommended plugins | Useful plugins

Why do you need to use plugins when you expected the theme to have all the functionality in it? Well, according to WordPress guidelines and generally the best practice: themes are meant for presentational purpose only, while plugins provide website functionality.

The reason for this is that when you decide to update your website looks you simply change a theme without loosing your website content and additional functionality such as eCommerce or portfolio.

This theme follows this WordPress philosophy and you can rest assured your site is as future-proof as possible. No lock-in effect with WebMan Design themes!

Info: Compatibility

The theme does not need any plugin to work properly. It is coded responsibly and flexibly enough so it should be compatible with any decently coded 3rd party plugin.

However, please understand there are thousands of plugins available for WordPress and it is not humanly possible to test them all. Feel free to use your plugin and in case of an issue contact support for help.

Recommended Plugins

Theme provides code and/or design integration for certain plugins. You will find these plugins in recommendations list below. They provide additional functionality for your website or improve your and your visitor's experience.

Please note that these are only recommended, suggested plugins, they are not required for the theme to work. Always read the plugin description before installing a plugin and install only those plugins you will use on your website.

Appearance → Install Plugins
Plugins recommendation page example: Recommended, not required
Plugins recommendation page example: Recommended, not required
Illustration image. May not display this actual theme.

Warning: Demo content required plugins

List of plugins the theme recommends may differ from plugins that are required when installing demo content. Check the demo content information for more details.

Here is a list of plugins that were successfully tested with the theme and the theme even provides additional integration layer for them:

Useful Plugins

With this theme you can use whatever plugins you like (check out compatibility info above). Here is a selection of additional useful plugins:

Advanced Custom Fields (ACF)
Add custom fields, content types and taxonomies to your website.
Archive Title
Removes archive page title labels.
Block Editor For WooCommerce
If using WooCommerce, this plugin allows you to create product description content with block editor.
Block Visibility
Allows controlling visibility of WordPress blocks.
Breadcrumbs NavXT
Create a perfect SEO friendly and flexible breadcrumbs navigation.
Custom Post Type Editor
Allows you to rename any post type.
Disable Comments
Disables comments site-wide per post type.
Icon Block
Allows you to add custom SVG icons and graphics to the WordPress block editor.
Imsanity
Automatically downsizes huge images during upload.
Intuitive Custom Post Order
For easier posts (and other post types) order management.
iThemes Security
Enhances your website security.
Meta Field Block
Display a meta field as a block on the front-end, supporting ACF fields.
Nested Pages
Provides drag and drop interface for managing pages and posts.
Ninja Forms
For creating forms.
Page Links To
Allows you to redirect a post or a page to a custom URL.
Polylang
Easy to use plugin for creating multilingual websites.
Post Type Archive Descriptions
Manages description (displayed on archive pages) for any post type.
Rename Taxonomies
Allows to rename taxonomies, such as "Tags" to "Topics", for example.
Social Sharing Block
Allows you to add social share icons to your website..
WPCode
Insert custom code snippets to your site.
WS Form
For creating mobile friendly, accessible forms.

FAQ & Tips

  1. How to use a page builder
  2. Why are uploaded images blurry or small
  3. SEO - Search Engine Optimization
  4. How to speed up a website
  5. How to add custom CSS
  6. Breadcrumbs navigation
  7. Custom fields
  1. How to use a page builder

    The theme is compatible with Beaver Builder page builder plugin. It works wonderfully with this most powerful and easy to use page builder.

    The theme was also tested and is working perfectly fine with 6 of the most popular page builders (paid and free ones; see "Compatibility" section aside) and should be compatible with any decently coded page builder plugin.

    To ensure layout compatibility the theme offers a convenient "Page builder layout" metabox (preview ») where you can set special custom fields to prepare the page or post layout for use with your page builder.

    ↑ Back to questions list

  2. Why are uploaded images blurry or small

    Settings → Media → "Recommended image sizes" info

    The theme requires certain minimal image dimensions for optimal display. Info about recommended image size setup can be found at Settings → Media.

    Tip: Regenerate images

    Once you set correct image sizes, all your newly uploaded images will get processed with new settings. But for the images already uploaded to your website you need to use additional plugin to refresh their sizes. Regenerate Thumbnails plugin (or similar) will do the trick.

    Tip: File size optimization

    It is recommended to use an image optimization plugin to keep the file size of images uploaded to your server under control.

    ↑ Back to questions list

  3. SEO - Search Engine Optimization

    This theme is coded semantically, with the best SEO practices in mind.

    You can push your SEO performance even further with help of additional plugins such as Yoast SEO. You can also integrate support for microformats.

    ↑ Back to questions list

  4. How to speed up a website

    Having a performant website is a must. It makes your website more SEO friendly and most importantly pleasing for your visitors, more accessible. This theme was coded with performance in mind but we can always take things even further:

    Use a good host

    A good hosting for your website is very important choice you can make towards a speedy website. Depending on your location it is also advised to use a host that has servers in your country or at least on the same continent.

    Check out Siteground (a very good personal experience), or have a look at WordPress hosting recommendation page.

    Optimize your images, video and audio files

    You should always keep the file size of your website media as low as possible. Prepare images before you upload them to your website: compress them, reduce their dimensions, maybe even crop them. Use plugins to optimize further more.

    In case of video and audio files set the optimal compression and formats before uploading them to your site. Consider also using services such as Vimeo, YouTube or SoundCloud to host your files off your servers.

    Also consider using a CDN service.

    Enable caching

    A basic browser caching and GZIP compression is a must!

    But you will get better results using a dedicated solutions such as WP Rocket or WP Super Cache or SiteGround Optimizer. Or maybe your hosting provider applies some sort of caching already? Check with them.

    Warning: Minify & combine

    Your caching solution may provide CSS and JS files minification and combination. Be cautious though: these are complex processes which may cause errors on your website. Test thoroughly!

    Tip: Measure performance

    For measuring your website performance and tips on how to improve it use services such as GTmetrix, Pingdom Tools and WebPageTest.

    ↑ Back to questions list

  5. How to add custom CSS

    Appearance → Customize → Additional CSS

    Add your custom CSS code into Appearance → Customize → Additional CSS, or alternatively into your child theme's style.css file.

    ↑ Back to questions list

  6. The theme supports Breadcrumb NavXT plugin that allows very flexible set up and display of breadcrumbs navigation on your website. After you install and activate the plugin, the theme displays the breadcrumbs navigation in preset location, above the page content area.

    Here is some tip for setting up your breadcrumbs display:

    Settings → Breadcrumb NavXT → General → "Breadcrumbs Separator"
    Set to <span class="sep"> / </span>.
    Settings → Breadcrumb NavXT → General → "Home Template"
    Settings → Breadcrumb NavXT → General → "Home Template (Unlinked)"
    Prepend the existing text with <span class="breadcrumbs-title">You are here: </span>.

    ↑ Back to questions list

  7. Custom fields

    To allow more control over pages and posts appearance, the theme uses some predefined custom fields.

    You can use the WordPress native custom fields interface, but for the best experience it is recommended to install and activate the Advanced Custom Fields plugin. The theme is compatible with this plugin out of the box and automatically creates easy-to-use metaboxes for you for all its options (custom fields).

    Custom fields used in the theme:

    Intro (banner) related

    For easy setup of these custom fields please use the ACF metabox (click to preview).

    banner_image

    Use this to override the image displayed in the banner area of the website. You can set this to image URL, image post ID (find this in your WordPress media library), or set - to fall back to default global header image.

    banner_text

    Use this to override the text displayed in banner area of the website.

    It is useful to override the banner text when you are using static front page, or when displaying featured posts in a banner slideshow (in that case set this custom field for the specific post).

    Post formats related

    For easy setup of these custom fields please use the ACF metabox (click to preview). The metabox is only displayed for specific post formats.

    quote_source

    You can use this custom field to set up your Quote post format quote source. You can use inline HTML in here.

    Page builder related

    Why the theme uses a custom field for this instead of a page template? For better flexibility. If this custom field was replaced with a custom page template, you could not use a different page template on that specific page or post. The theme allows you to use any page template you like while preparing it for your page builder plugin custom layout.

    For easy setup of these custom fields please use the ACF metabox in the sidebar of page/post edit screen (click to preview).

    content_layout

    Predefined: empty, or stretched

    Prepares the content area of the page/post for use with your page builder plugin.

    ↑ Back to questions list

Modifications

Warning: Limited support

This topic is meant for WordPress developers who would like to modify the theme and WordPress functionality.

Please understand that we do not provide support for custom code modifications, though.

Use a Child Theme/Plugin

If you need to make coding changes to the theme or WordPress itself, use child theming functionality, or even more flexible "child theme" plugin solution.

This way you can update the parent (original) Modern theme without worrying about your custom code getting overwritten and lost. Your code is kept safe in your child theme/plugin.

Tip: Read more about child themes in WordPress documentation.

CSS code

Put your custom CSS code into style.css file.

PHP code

Modify functionality of the theme and/or WordPress via functions.php file. Use action and filter hooks.

"Child theme" plugin

For more flexible approach that works with any type of theme (classic or FSE block theme), or for cases when you can't use a child theme, we have created a free "Child Theme" Plugin for you.

Info: Is using a "child theme" plugin better?

Using "child theme" plugin is mostly beneficial when you use a block theme (full site editing theme) for some time already and then you decide you need to modify something with code.

If you plan to provide means for future code modifications right from the start use a child theme, even with a block parent theme.


More technical details

Full site editing block theme compatibility with WordPress child themes concept is limited. This is due to Site Editor user-modifications being stored in WordPress database. It causes issues when you decide to use a child theme afterwards, because all of these database records are bound to a specific (parent) theme name.

Copying modified Site Editor options and layouts so they work with a child theme is more complicated process. Though, this complication is solved elegantly using a "child theme" plugin.

The plugin works the same way as classic child theme would - you can use it anytime, even after you've already made custom changes in Site Editor, and it involves less code in comparison to a child theme.

A downside of the plugin may be overriding parent theme templates with code:

Sample child theme/plugin

Download a free child theme or plugin from WebMan Design GitHub repository. Don't forget to check the information in the repository for how to set them up.

Hooks: Actions and Filters

The theme provides multiple useful action and filter hooks, which can alter its functionality. Check the theme's source code for hook references: simply search for do_action and/or apply_filters. Or contact support for help.

Modern theme uses Theme Hook Alliance (THA) hooks too. This is useful to rebuild theme structure or add your custom sections anywhere.