Search Results for: top

Metro

Installing the Theme

To install themes with the WordPress theme uploader:

  • Download the "theme.zip" file from the Member Area
    • Note: some browsers (eg. Safari) auto extract zip files automatically. Right-click on the download link and select "Save Linked File As". This will allow you to download the theme as a zip file.
  • Login to your site's WP Admin.
  • Go to Appearance > Themes.
  • Click on the "Add New" button, then click on the "Upload Theme" button
  • Upload the theme.zip file (note: it is the theme.zip, not the theme-psd.zip that you just downloaded from the Member Area).
  • Activate the theme

how to properly install your theme

FYI: You can also install themes with FTP method. Read the Installing Themes tutorial for more info.

Demo Import

If you are starting a fresh site, importing the demo content will help you understand how the theme demo is built. The Demo Import feature will import the contents (posts, pages, comments, etc.), Themify panel settings, menus, and widgets setup from our demo to your site. You can erase the demo content afterward.

To import the demo setup:

  • Go to WP Admin > Themify > Settings > Demo Import and click "Import Demo" button.
  • Note that the featured images will be replaced with an image placeholder for copyright reasons.

To erase the demo setup:

  • On the Demo Import tab, click on the "Erase Demo" button which will then remove the demo content.

FYI: If the Demo Import does not work on your site, you can use the WP Admin > Tools > Import tool to import the demo content manually.

how to import demo content

Site Logo & Tagline

To display a logo image instead of the site name text:

  • Go to WP Admin > Appearance > Customize > Site Logo and Tagline.
  • Under "Site Logo", select "Logo Image" radio button.
  • Upload a logo image.
  • Specify the logo image width and height.

How to add your own site logo on your site

You can also change website Tagline from here:

  • Go to WP Admin > Appearance > Customize > Site Logo and Tagline.
  • Scroll down and under "Site Tagline" select "Text" radio button.
  • Enter your site Tagline.
  • Click "Save & Publish".

How to add a tagline on your site

Main Navigation Menu

To create a custom navigation menu:

  • Go to WP Admin > Appearance > Menus.
  • Click on "create a new menu" to create a new menu (eg. Main Menu).
  • Add the menu items from the left panels.
  • To create a dropdown menu: drag the menu item towards the right (the item(s) will be indented).
  • When you are done adding the menu items, click "Save Menu".
  • To assign menu locations:
    • Scroll down to the bottom where it says "Theme locations" and tick the menu location checkbox.
    • Main Navigation = main menu on the header
    • Footer Navigation = footer menu on the footer (Note: some themes might not have Footer Navigation).

TIPS: You can display menus on sidebar widgets, remove the main menu, create empty links, and lightbox links. Read Custom Menus for more detailed tutorial.

create custom menus for each page on your site

Step 1) To set up the social media links:

  • Go to WP Admin > Themify > Settings > Social Links tab.
  • The theme comes with some pre-filled social links. Simply enter your social profile URL in the Link input field. For example, enter 'https://twitter.com/themify' for the Twitter link.
  • You can choose to display either "Icon Font" or "Image".
    • If "Icon Font" is selected, click on "Insert Icon" to select an icon (over 320+ icons available).
    • If "Image" is selected, you can upload your own graphic icon by clicking on the Upload button.
  • To add more links, click on the Add Link button at the bottom.
  • To remove a link, click on the delete icon.
  • To arrange the display order, drag and drop the link container.

How to setup your social links

Step 2) Displaying the Social Links:

  • Once you have the Social Links setup, go to WP Admin > Appearance > Widgets. Drag and drop the Themify - Social Links from the Available Widgets panel to the Social Widget panel.
  • Optional: Customize Widget Title - such as "Follow Us". You can also "Show link name" and adjust icon size.

drag & drop the widget to where you'd like it to appear

Hiding the RSS Icon

To hide the default RSS icon in the header:

  • Go to WP Admin > Themify > Settings > Theme Settings.
  • Under the "Exclude RSS Link", tick the checkbox that says "Check here to exclude RSS icon/button in the header".

Hiding the Search Form

To hide the default search form in the header:

  • Go to WP Admin > Themify > Settings > Theme Settings.
  • Under the "Exclude Search Form", tick the checkbox that says "Check here to exclude search form in the header".

Post Formats

This themes comes with the following post format support: standard (default), image, video, gallery, quote, audio, link, and status. To assign the post format to a post, select from the "Post Format" radio buttons in the Themify Custom Panel.

post-format

When writing or editing a post, you should see the Themify Custom Panel (see image above). The following fields are required for the different post formats and should appear based on your format selection:

  • Image: Featured Image, Content (optional)
  • Video: Video URL (YouTube, Vimeo, embed URL). Examples: "http://vimeo.com/22391248" or "//www.youtube.com/watch?v=Abjx1JJO1i8"
  • Gallery: Insert a Gallery in Content
  • Quote: Content, Quote Author (optional), Quote Author Link (optional)
  • Audio: Audio URL (e.g. https://themify.me/wp-content/audio/song.mp3), Featured Image (optional)
  • Link: Link URL, Content (optional)

Tile Post Type (For Metro Layout)

Use the Tile custom post type to create: button, map, gallery slider, image, and text (with shortcodes support). To show tiles on your site, you will to add them as new Tile posts.

To add Tile posts:

add-new-tile

  • Click "Add New" link under the Tiles admin menu.

tile-options

  • Choose a tile size:
    • Large: Large tiles span two columns wide and two columns high.
    • Small: Small tiles span one column wide and one column high.
    • Medium: Medium tiles span two columns wide and one column high.
  • Choose a tile color:
    • You can pick the background color for the tile you are editing.
  • Choose a tile type:
    • Text: A text tile can be used to show basic text or can be used with shortcodes to display other content.
    • Button: A button tile can be used to make a simple link tile with an image.
    • Gallery: A gallery tile can be used to show a slider of various images.
    • Image: An image tile can be used to show an image along with text content and will flip between them over the mouse
    • Map: A map tile can be used to show a Google Maps location in a tile along with content and flip between them over the mouse.

Tile categories:

Tiles can be set to specific tile categories for organizational purposes. You can set these when adding a new tile or editing an existing one in the same way as post categories.

tile-categories

To display Tiles:

You can use the [ tile ] shortcode to display tiles individually, as a group, or based on tile category. You can configure the result by adding parameters.

  • [tile limit="10"]
    • = display the 10 latest Tiles
  • [tile id="12"]
    • = display tile with ID of 12
  • [tile id="445, 428, 430, 8, 335" limit="5"]
    • = display a group of tiles based on ID
  • [tile category="social" limit="5"]
    • = display a specific category of tiles and set a limit to how many to display

Available parameters:

  • id = ID, or group of IDs of tile posts
  • category = category ID number or text slug
  • limit = number of post to query (e.g. enter limit="4" will query 4 posts, enter -1 to query all posts). If 'limit' parameter is empty, it will inherit "Blog pages show at most" setting from WP Settings > Reading
  • orderby = criteria used to order posts (author, comment_count, date, menu_order, rand, title, default = date)

Tile Types

There are a number of different tile types: text, button, gallery, image and map.

metro-tiletype

Adding Text Tiles:

To add a text tile, you can select text tile from the Tile Type selections and then add any text or shortcodes into the content editor. These are the shortcodes that we use in the demo:

  • Post Slider: [post_slider limit="3" image="yes" image_w="300" image_h="200" visible="1" scroll="1" auto="1"]
  • Button: [button link="https://themify.me/themes/metro" style="large red rounded" target="_blank"]Buy[/button]
  • Video Embed: http://vimeo.com/6929537
  • Map: [map address="Yonge Street and Eglinton Ave. Toronto, Ontario, Canada" width=100% height=260px]
  • Flickr: [flickr user="52839779@N02" limit="9"]
  • Twitter: [twitter username="themify" show_count="3" show_follow="true"]
  • List Posts: [list_posts style="list-thumb-image" limit="4" image="yes" image_w="45" image_h="45" post_date="yes"]

For more details about shortcodes, please read the Shortcodes Documentation.

text-tile

Adding Button Tiles:

To add a button tile, you will need to provide a featured image for the button itself and then a link for the button to direct users to.

button-tile

Adding Gallery Tiles:

To add a gallery tile, you will need to provide the gallery shortcode for the tile to use. You can either enter this manually in the text box provided or use the "Insert Gallery" link. Read the Gallery tutorial on how to use WordPress Gallery.

gallery-tile

Adding Image Tiles:

To add an image tile, you will need to set a featured image for the tile post. You can also provide content for the tile's reverse and the tile will then flip between the two over the mouse. The icons used in our demo are from this Rocky Vector Icon Set.

image-tile

Adding Map Tiles:

To add a map tile, you will need to provide a map address and set a zoom level. You can also add post content and the tile will flip between the map and the post content over the mouse.

map-tile

Modifying the Tile Sizes

You can alter the Tile sizes by adding these custom CSS code in WP > Appearance > Customize > Custom CSS (the tile sizes below is based on 200 x 200px with 10px margin space between tiles):

/* custom tile sizes */
/* custom tile sizes */
.tile.small,
.tile.small .slideshow,
.tile.small .carousel-wrap,
.tile.small .carousel-wrap li,
.tile.small .carousel-wrap img,
.tile.small.image .post-image img,
.tile-post.small .tile-flip,
.tile-post.small .map-container {
	width: 200px !important;;
	height: 200px !important;;
}
.tile.medium,
.tile.medium .slideshow,
.tile.medium .carousel-wrap,
.tile.medium .carousel-wrap li,
.tile.medium .carousel-wrap img,
.tile.medium.image .post-image img,
.tile-post.medium .tile-flip,
.tile-post.medium .map-container {
	width: 410px !important;
	height: 200px !important;
}
.tile.large,
.tile.large .slideshow,
.tile.large .carousel-wrap,
.tile.large .carousel-wrap li,
.tile.large .carousel-wrap img,
.tile.large.image .post-image img,
.tile-post.large .tile-flip,
.tile-post.large .map-container {
	width: 410px !important;
	height: 400px !important;
}

Creating a Custom Front Page (Metro Front Page)

Having the ability to display the custom post types with shortcodes gives you a full control what to appear on the page. For example, you can create a page with whatever post types you want to appear and set it as front page (home page). To do so:

  • create a new Page (e.g. Home)
  • in the Page Custom Panel, select Yes => Hide Page Title
  • enter the shortcodes like below
  • then go to WP Admin > Settings > Reading and select 'Home' as your Front page
[tile category="homepage" limit="9"]

Portfolio Post Type

To add Portfolio posts:

  • Click "Add New" under the Portfolio admin menu.
  • Enter the title and content.
  • Upload a featured image.
  • Select a tile color for the portfolio item.

new-portfolio

  • To display multiple images instead of a single featured image you can add the IDs for a number of images into the "Gallery" option section, or alternatively use the "Insert Gallery" link.

gallery-option

  • You can categorize the Portfolio posts by adding new portfolio categories in the Portfolio Categories panel (e.g. you can categorize them as: Illustration, Web, Photos, etc.)

portfolio-categories

To display the Portfolio posts:

To display the Portfolio posts, simply enter the shortcode in the post content box. You can configure the result by adding the parameters.

  • [portfolio]
    • = display Portfolio posts with default setting
  • [portfolio style="grid3" limit="3" post_date="yes" image_w="306" image_h="180"]
    • = display latest 3 Portfolio posts in grid4 layout, set image dimension to along post date
  • [portfolio category="13" style="grid2" limit="8" page_nav="yes" image_w="474" image_h="250"]
    • = display latest (first) 8 Portfolio posts from Portfolio Category ID 13 in grid2 layout
    • = if there are more than 8 posts, a page navigation will appear (note page_nav="yes")
  • [portfolio category="web-design,illustration" page_nav="yes"]
    • = display latest Portfolio posts from portfolio categories Web Design and Illustration, given that their text slugs are "web-design" and "illustration"
    • = if there are more than 4 posts, a page navigation will appear (note page_nav="yes")

Available parameters:

  • style= grid4, grid3, grid2, full
    • you can also include additional CSS class(es) for your own custom styling (e.g. style="classname")
  • limit = number of post to query (e.g. enter limit="4" will query 4 posts, enter -1 to query all posts)
  • category = category ID number or text slug (default = all categories). To find category ID number or text slug, click on "Portfolio Category" link located under the Portfolio admin menu
  • image = show featured image or not (yes, no, default = yes)
  • image_w = post image width
  • image_h = post image height
  • title = show post title (yes, no, default = yes)
  • display = display whether content, excerpt or none (content, excerpt, none, default = none)
  • post_meta = display post category meta (yes, no, default = no)
  • post_date = display post date (yes, no, default = no)
  • more_link = display a custom more link after the posts
  • more_text = text that will appear in more_link
  • orderby = criteria used to order posts (author, comment_count, date, menu_order, rand, title, default = date)
  • page_nav = display page navigation if there are more posts (yes, no, default = no)

Portfolio Layout Options

To set the layouts of portfolio index and portfolio single page, go to Themify > Settings > Portfolio Layouts.

  • Default Index Portfolio Layout = applies to the Portfolio category pages
  • Default Single Portfolio Layout = applies to the Portfolio single post page

portfolio-layout

By default, your portfolio single views will look like http://example.com/project/some-illustration/. If you want to change the "project" section, follow these steps that show how to change it into "work":

  1. create a file named custom-functions in the Metro theme folder
  2. open it and paste:
    <?php function themify_theme_portfolio_rewrite($slug){ return 'work'; } add_filter('themify_portfolio_rewrite', 'themify_theme_portfolio_rewrite'); ?>
  3. save the file and upload it to your server
  4. login to the WP Admin in your site
  5. go to Settings / Permalinks and click Save Changes

Your URLs for single portfolios will now look like http://example.com/work/some-illustration/.

You can set options for the tile and portfolio gallery sliders under Themify > Settings > Theme Settings.

gallery-slider-options

You have three options here:

  • Auto Play
    • = the time the slider pauses on each slide before moving to the next image (set to "off" to disable autoplay)
  • Effect
    • = the transition effect for moving between slides; the options are the default slide effect or a fade effect
  • Transition Speed
    • = the speed the above transition effect will take to complete

All shortcodes can also be inserted into sidebars using the Text widget. To run a shortcode in the widget:

  • go to Appearance > Widgets
  • drag and drop a Text widget to a sidebar
  • then enter the shortcode
[portfolio style="grid2" limit="2" image_w="120" image_h="0"]

Infinite Scroll / Pagination Navigation

To set the pagination option, go to Themify > Settings > Theme Settings.

  • Infinite scroll means the posts are automatically loaded when it hits to the bottom of the page. If "Disable automatic infinite scroll" is checked, it will display a Load More button instead of auto loading.
  • Numbered page navigation will display the navigation in page number 1, 2, 3, etc.

image

To link the featured image with a lightbox popup such as image zoom, video or an iframe window, enter the URL in the Lightbox Link field under the Themify Custom Panel. The Themify Custom Panel can be found in the post edit page.

  • Sample image: https://themify.org/pinboard/files/2012/06/133618178.jpg
  • Sample video: http://youtu.be/Abjx1JJO1i8
  • Sample iframe: https://themify.me?iframe=true&width=100%&height=100%  (you need to add ?iframe=true at the end of the URL)

add image

The gallery can be inserted in any post or page. To insert a gallery, click on "Add Media" button.

addmedia

It will open a lightbox for you to create and insert gallery. Read this tutorial for more details on how to use WordPress Gallery.

creategallery

Recommended Plugin: Post Types Order Plugin

By default, the posts are sorted by published date. Post Types Order plugin allows you to sort the post order with drag and drop. After you activate the plugin, you will see a "Re-Order" menu link under each post type. This plugin is great for ordering your portfolio or highlight posts.

screenshot

Setting Default Post and Page Layouts

Generally, the theme works out of the box. All the sidebar options and image dimensions are pre-defined in the theme. If you need to change the default sidebar options, featured image dimensions, content/except display, post meta, etc., it can be done in the WP Admin > Themify > Settings > Default Layouts.

There are three default layout options under Themify > Settings > Default Layouts:

  • Archive Sidebar Option: refers to the default home page, category, search, archive, tag pages, etc.
  • Default Post Layout: is the post page direct URL (also known as "Single Post").
    • Note: Some themes may only have 4 layouts.
  • Default Static Page Layout: is the static page.

FYI: Read Default Layouts documentation for more info.

default post and page layout

Creating a Blog Page

To create a blog page:

  • First, create a new Page (go to WP Admin > Pages > Add New), name it "Blog" or any page title as you want.
  • View the page on the frontend, click "Turn On Builder".
  • Drop in a Post module and configure the options as you like.

Setting a Custom Front Page

You can set any page as the front (home) page. This means you can use the Builder to design the page and assign it as the front page. To set the Front Page:

  • Go to WP Admin > Settings > Reading.
  • On the Front page displays, select the "A static page (select below)" option and then select a "Front page".
  • Leave the "Posts page" default. If you want to create a custom Blog page, read this tutorial instead of setting the "Posts page".

how to set custom front page on your site

Adding Widgets

To add widgets to widgetized areas (eg. sidebar and footer widgets):

  • Go to WP Admin > Appearance > Widgets.
  • The big panel on the left side shows all available widgets. The small panels on the right are the widgetized areas.
  • To add a widget: drag and drop the widget from the left panel to the right panel.
  • To remove the widget: drag the widget back to the left panel (Available Widgets panel). If you want to keep the widget setting for future use, drag it to the Inactive Widgets instead of the Available Widgets panel. It will save your widget settings. To retrieve the widget, drag the widget from Inactive Widgets panel instead of the Available Widgets panel.

TIPS: You can also add widgets in Appearance > Customize panel.

how to add a custom menu on your sidebar

Theme Skins

To apply pre-designed color skins:

  • Go to WP Admin > Themify > Skins, select a skin by clicking on the thumbnail and click Save.

Styling The Theme

To style the theme frontend appearance:

  • Go to WP Admin > Appearance > Customize.
  • It will take you to the Customize panel with live preview where you can style the appearance of the theme design (ie. color, background, font, spacing, border, etc.).

FYI: Refer to Customize documentation for more info.

customization panel options

  • To set the Footer Widget column layout, go to WP Admin > Themify > Settings > Theme Settings.
    screenshot
  • To drop the widgets in the Footer Widgets, go to WP Admin > Appearance > Widgets.

To replace the footer credit links:

  • Go to WP Admin > Themify > Settings > Theme Settings and enter the footer text.
  • HTML tags are allowed in the Footer Text.
  • To have empty footer text, tick the hide footer text checkbox.

screenshot

FAQ

Enlarge the tiles

By default Small tiles take 16.66% of the available space so that means you can fit 6 Small tiles in one row (or, 3 Large tiles, since Large tiles are twice as big as Small tiles). Using the custom CSS code below you can make Small tiles to take 25% instead, so you could fit 4 Small tiles in one row (or 2 Large tiles):



.tile.large {
    width: calc( 50% - 10px );
    padding-bottom: calc( 50% - 10px );
}
.tile.medium {
    width: calc( 50% - 10px );
    padding-bottom: calc( 25% - 10px );
}
.tile.small, .grid-sizer {
    width: calc( 25% - 10px );
    padding-bottom: calc( 25% - 10px );
}

Read More

Pinshop

Installing the Theme

To install themes with the WordPress theme uploader:

  • Download the "theme.zip" file from the Member Area
    • Note: some browsers (eg. Safari) auto extract zip files automatically. Right-click on the download link and select "Save Linked File As". This will allow you to download the theme as a zip file.
  • Login to your site's WP Admin.
  • Go to Appearance > Themes.
  • Click on the "Add New" button, then click on the "Upload Theme" button
  • Upload the theme.zip file (note: it is the theme.zip, not the theme-psd.zip that you just downloaded from the Member Area).
  • Activate the theme

how to properly install your theme

FYI: You can also install themes with FTP method. Read the Installing Themes tutorial for more info.

Demo Import

If you are starting a fresh site, importing the demo content will help you understand how the theme demo is built. The Demo Import feature will import the contents (posts, pages, comments, etc.), Themify panel settings, menus, and widgets setup from our demo to your site. You can erase the demo content afterward.

To import the demo setup:

  • Go to WP Admin > Themify > Settings > Demo Import and click "Import Demo" button.
  • Note that the featured images will be replaced with an image placeholder for copyright reasons.

To erase the demo setup:

  • On the Demo Import tab, click on the "Erase Demo" button which will then remove the demo content.

FYI: If the Demo Import does not work on your site, you can use the WP Admin > Tools > Import tool to import the demo content manually.

how to import demo content

Site Logo & Tagline

To display a logo image instead of the site name text:

  • Go to WP Admin > Appearance > Customize > Site Logo and Tagline.
  • Under "Site Logo", select "Logo Image" radio button.
  • Upload a logo image.
  • Specify the logo image width and height.

How to add your own site logo on your site

You can also change website Tagline from here:

  • Go to WP Admin > Appearance > Customize > Site Logo and Tagline.
  • Scroll down and under "Site Tagline" select "Text" radio button.
  • Enter your site Tagline.
  • Click "Save & Publish".

How to add a tagline on your site

Main Navigation Menu

To create a custom navigation menu:

  • Go to WP Admin > Appearance > Menus.
  • Click on "create a new menu" to create a new menu (eg. Main Menu).
  • Add the menu items from the left panels.
  • To create a dropdown menu: drag the menu item towards the right (the item(s) will be indented).
  • When you are done adding the menu items, click "Save Menu".
  • To assign menu locations:
    • Scroll down to the bottom where it says "Theme locations" and tick the menu location checkbox.
    • Main Navigation = main menu on the header
    • Footer Navigation = footer menu on the footer (Note: some themes might not have Footer Navigation).

TIPS: You can display menus on sidebar widgets, remove the main menu, create empty links, and lightbox links. Read Custom Menus for more detailed tutorial.

create custom menus for each page on your site

Step 1) To set up the social media links:

  • Go to WP Admin > Themify > Settings > Social Links tab.
  • The theme comes with some pre-filled social links. Simply enter your social profile URL in the Link input field. For example, enter 'https://twitter.com/themify' for the Twitter link.
  • You can choose to display either "Icon Font" or "Image".
    • If "Icon Font" is selected, click on "Insert Icon" to select an icon (over 320+ icons available).
    • If "Image" is selected, you can upload your own graphic icon by clicking on the Upload button.
  • To add more links, click on the Add Link button at the bottom.
  • To remove a link, click on the delete icon.
  • To arrange the display order, drag and drop the link container.

How to setup your social links

Step 2) Displaying the Social Links:

  • Once you have the Social Links setup, go to WP Admin > Appearance > Widgets. Drag and drop the Themify - Social Links from the Available Widgets panel to the Social Widget panel.
  • Optional: Customize Widget Title - such as "Follow Us". You can also "Show link name" and adjust icon size.

drag & drop the widget to where you'd like it to appear

Hiding the RSS Icon

To hide the default RSS icon in the header:

  • Go to WP Admin > Themify > Settings > Theme Settings.
  • Under the "Exclude RSS Link", tick the checkbox that says "Check here to exclude RSS icon/button in the header".

Hiding the Search Form

To hide the default search form in the header:

  • Go to WP Admin > Themify > Settings > Theme Settings.
  • Under the "Exclude Search Form", tick the checkbox that says "Check here to exclude search form in the header".

Install WooCommerce Plugin

This theme requires WooCommerce plugin. Once you installed the WooCommerce plugin, you may customize the plugin settings as you like. If you want to follow our theme design, please set the product image sizes at WooCommerce > Settings > Catalog as follow:

  • Catalog Images: 222 x 150px (product image in index pages)
  • Single Product Image: 305 x 300px (product image in single post view)
  • Product Thumbnails: 125 x 90px (product gallery thumbnails)

screenshot

Note: for proper functioning of the dynamic add to cart feature, please go to WooCommerce > Settings, and in the Product tab, make sure the checkbox labeled "Redirect to the basket page after successful addition" is unchecked.

For more details on how to use WooCommerce, please refer to WooCommerce documentation.

Shop Settings

Go to Themify > Settings > Shop Settings to customize the shop page, single product page, and product slider.

pinshop-shopsettings

Product Slider

To enable the product slider on the homepage, go to Themify > Settings > Shop Settings, set "Enable Slider" to "On" in the Product Slider section. Select the product category and enter the number of products to be queried.

  • Visible = means the number of slides to be visible at the same time
  • Auto Play = auto play the slider in number of seconds
  • Scroll = number of slides to scroll
  • Speed = speed of the animation
  • Wrap Slides = wrap the slides so it loops back to the beginning

pinshop-productslider

Custom Front/Shop Page

To set the shop page as your front page, go to wp-admin > Settings > Reading, select the Shop page as your front page:

screenshot

Infinite Scroll / Pagination Navigation

To set the pagination option, go to Themify > Settings > Theme Settings.

  • Infinite scroll means the posts are automatically loaded when it hits to the bottom of the page. If "Disable automatic infinite scroll" is checked, it will display a Load More button instead of auto loading.
  • Numbered page navigation will display the navigation in page number 1, 2, 3, etc.

image

To link the featured image with a lightbox popup such as image zoom, video or an iframe window, enter the URL in the Lightbox Link field under the Themify Custom Panel. The Themify Custom Panel can be found in the post edit page.

  • Sample image: https://themify.org/pinboard/files/2012/06/133618178.jpg
  • Sample video: http://youtu.be/Abjx1JJO1i8
  • Sample iframe: https://themify.me?iframe=true&width=100%&height=100%  (you need to add ?iframe=true at the end of the URL)

add image

The gallery can be inserted in any post or page. To insert a gallery, click on "Add Media" button

addmedia

It will open a lightbox for you to create and insert gallery. Read this tutorial for more details on how to use WordPress Gallery.

creategallery

Set Fixed Page Width

The page width on the index pages are automatically calculated with Javascript to ensure the post containers fit nicely on the page. Notice when you resize the browser window, the page width is auto adjusted? If you want to set a fixed width instead of the auto width, add this in Themify > Styling > Custom CSS:

/* set fixed width instead of auto width */
#content {
	width: 710px !important;
}
@media screen and (min-width: 980px) {
	.pagewidth {
		width: 978px !important;
	}
}

Setting Default Post and Page Layouts

Generally, the theme works out of the box. All the sidebar options and image dimensions are pre-defined in the theme. If you need to change the default sidebar options, featured image dimensions, content/except display, post meta, etc., it can be done in the WP Admin > Themify > Settings > Default Layouts.

There are three default layout options under Themify > Settings > Default Layouts:

  • Archive Sidebar Option: refers to the default home page, category, search, archive, tag pages, etc.
  • Default Post Layout: is the post page direct URL (also known as "Single Post").
    • Note: Some themes may only have 4 layouts.
  • Default Static Page Layout: is the static page.

FYI: Read Default Layouts documentation for more info.

default post and page layout

Creating a Blog Page

To create a blog page:

  • First, create a new Page (go to WP Admin > Pages > Add New), name it "Blog" or any page title as you want.
  • View the page on the frontend, click "Turn On Builder".
  • Drop in a Post module and configure the options as you like.

Setting a Custom Front Page

You can set any page as the front (home) page. This means you can use the Builder to design the page and assign it as the front page. To set the Front Page:

  • Go to WP Admin > Settings > Reading.
  • On the Front page displays, select the "A static page (select below)" option and then select a "Front page".
  • Leave the "Posts page" default. If you want to create a custom Blog page, read this tutorial instead of setting the "Posts page".

how to set custom front page on your site

Adding Widgets

To add widgets to widgetized areas (eg. sidebar and footer widgets):

  • Go to WP Admin > Appearance > Widgets.
  • The big panel on the left side shows all available widgets. The small panels on the right are the widgetized areas.
  • To add a widget: drag and drop the widget from the left panel to the right panel.
  • To remove the widget: drag the widget back to the left panel (Available Widgets panel). If you want to keep the widget setting for future use, drag it to the Inactive Widgets instead of the Available Widgets panel. It will save your widget settings. To retrieve the widget, drag the widget from Inactive Widgets panel instead of the Available Widgets panel.

TIPS: You can also add widgets in Appearance > Customize panel.

how to add a custom menu on your sidebar

Theme Skins

To apply pre-designed color skins:

  • Go to WP Admin > Themify > Skins, select a skin by clicking on the thumbnail and click Save.

Styling The Theme

To style the theme frontend appearance:

  • Go to WP Admin > Appearance > Customize.
  • It will take you to the Customize panel with live preview where you can style the appearance of the theme design (ie. color, background, font, spacing, border, etc.).

FYI: Refer to Customize documentation for more info.

customization panel options

  • To set the Footer Widget column layout, go to WP Admin > Themify > Settings > Theme Settings.
    screenshot
  • To drop the widgets in the Footer Widgets, go to WP Admin > Appearance > Widgets.

To replace the footer credit links:

  • Go to WP Admin > Themify > Settings > Theme Settings and enter the footer text.
  • HTML tags are allowed in the Footer Text.
  • To have empty footer text, tick the hide footer text checkbox.

screenshot

Read More

Syncing Builder Procedure

When updating the Builder, always start with the framework first and then we sync the files to the plugin version when the framework is deployed. The functions in the framework Builder and the plugin version should work the same.

Framework builder refers to the 'themify' folder and the Builder plugin is the standalone folder 'themify-builder' (these are the root folders inside the 'Production' master repo). Don't need to apply changes to the theme folders (when we deploy framework, there is a script to sync the latest framework to all theme folders).

Please follow the procedure below:

  1. On your local Github repository, copy 'Themes > themify' folder and 'Plugins > themify-builder' folder and paste them to your desktop
    • Now you should have two folders:

      Duplicate Themify & Builder folder

  2. On your desktop:
    • Open 'themify-builder/themify-builder.php' (that is the Builder plugin folder)
    • Find define( 'THEMIFY_VERSION', '7.0.0' ) and then match the version number with the framework version (eg. if current framework is 7.0.2, you would change it to define( 'THEMIFY_VERSION', '7.0.2' )
  3. On your desktop:
    • Copy all files & sub-folders from '/themify/themify-builder' (except 'themify-builder.php' file)
    • Paste them in your local '/themify-builder' plugin folder

      Copy Builder files

  1. Then the final step is to sync the 'themify' framework folder in the Builder plugin version:
    • From the '/themify' framework folder, copy and paste the existing files and sub-folders as appear in the Builder plugin '/themify-builder/themify' folder
    • NOTE: Only need to replace the files and sub-folders that exist inside the '/themify-builder/themify' folder - DO NOT copy & paste entire '/themify' folder - your selected number of items should match the total number of items in the 'themify-builder/themify' folder.

      Sync Themify framework files

Developer Notes:

  1. All files in /themify/ folder except js files shouldn't be replaced, instead please edit the file one by one. There are some functions which doesn't necessary for plugin version.
  2. Be careful when fetching an option: Builder plugin uses themify_builder_get while Builder in framework must use themify_get.

Read More

Converting Themes

1. Use generic-theme as the base

  1. Pull Github "Themify Internal > Base Themify Themes > generic-theme' and use generic-theme as the theme folder (rename it according to the theme name, remember theme folder name must be prefixed with 'themify-')
  2. Add standard stylesheets (style.css, media-queries.css, etc) and any addition CSS files from the theme-html-version
  3. Add any extra javascript file needed (jquery.isotope.min.js, jquery.infinitescroll.min.js, etc)
  4. Check if there's any javascript in themify.script.js in markup folder and merge it with the themify.script.js in theme

2. Edit theme-functions.php

  1. Enqueue all extra CSS and JS files
  2. Enqueue any Google font needed
  3. Load files for custom post types needed like post-type-section.php or post-type-gallery.php and add them to the array for custom panel creation. At the same time, copy them to the current theme.
  4. Make sure you don't unnecessarily load JS or CSS in WP Admin screens or front end views that don't need them.
  5. Register any extra widget areas
  6. Register any extra menu locations
  7. Are there custom icons for Social Links default values? Add them.
  8. Themes specifically built for WooCommerce like Flatshop have an extra shop.css stylesheet. Enqueue it on all WooCommerce views.
  9. If there are variables to pass to JS they must be added using wp_localize_script.

3. Edit theme-config.php and theme-modules.php

  1. Check modules and load new ones needed in theme-config.php
  2. if the module is for a global feature, like sticky header or animated colors, they can be defined in theme-modules.php. If it's for a post type feature, like infinite scroll, it should be defined in post-type-post.php (or the post-type-*.php that applies).

4. Edit post-type-*.php files

  1. Define custom panel fields, code functions needed for any new type (for example, gallery shortcode field didn't existed before Metro, it had to be coded then)
  2. Code any new module for theme settings needed in their corresponding file. If it's not for a post type, like the fixed header module, code it in theme-modules.php
  3. If there are routines that are used by many post types, like the custom post style CSS generation, add (or code new) them in theme-functions.php
  1. Apply markup
  2. Code functionality to output Custom Panel fields (example, gallery shortcode as slider in Metro)
  3. Code functionality to output settings from theme settings module if needed (example, store info in Flatshop)
  4. Add extra widget areas
  5. Add extra menu locations
  6. While coding single.php and/or comments.php, check comment callback in theme-functions.php and apply any needed markup.

6. edit theme-options.php

  1. define featured image sizes for different layouts (and post types), content width, page featured image size and others.
  2. define global $themify properties, like hide meta for singular portfolio views, or hide portfolio image in query portfolios views.
  3. entry and sidebar layouts must be defined here so they're available to all the theme

7. Theme functionality

  • After setting up the static render, add needed sliders, fancy galleries, effects, working in themify.script.js and theme-functions.php or post-type-*.php as it applies.
  • If theme has infinite scroll, edit includes/pagination.php to enter the relevant code.
  • Verify wpml-config.xml in theme root and make sure all custom fields are listed here along with a proper action.
  • If you need more partial templates, like social share template, these files must be added to includes/ directory.
  • Themes specifically built for WooCommerce like Flatshop must include the templates that override WooCommerce following the folder structure in WooCommerce. For example, a single-product/ directory in theme root will contain the price.php, related.php and up-sells.php templates that override their counterparts in WooCommerce. Funcionality specific to WooCommerce must be added in a woocommerce/ directory in theme root.
  • A new PHP class in theme root can be added in certain cases, where its functionality is broadly applied or the code base is very large. For example, the mega menu, the single infinite or the social share classes.
  • The <title> tag must be written using 'title-tag' WordPress support. For reference, see theme-functions.php in themify-infinite.

8. Customizer

  • Edit customizer-basic-config.php and customizer-config.php as needed to match elements in theme and selectors.
  • Sometimes themes have special features that need to be turned off in Customizer. Recent example is the Split theme that has its split scroll behaviour turned off. Make sure features not intended to work with Customizer are turned off.
  • Some themes like Ultra override the Customizer styling using options set at entry level. Verify that the override is possible and properly done.

Remarks

  • Always use themify_is_woocommerce_active() to add functionality that are specific to WooCommerce so the theme still works if it's disabled.
  • Verify that the layout is correct in the several views (blog, category, author, etc) and report it if it's incorrect.
  • Add any CSS needed in a custom_style.css file and report it.
  • Write functions wrapping them in if ( ! function_exists( 'themify_theme_function_name' ) ) { }
  • Prefix the theme functions themify_theme_*
  • Pass URLs to resources like images through set_url_scheme() so they work properly on sites with SSL.
  • Always follow the General Development guidelines.

Read More

General Development

Security

Escaping and validation: always escape and validate strings, even if they appear to be safe. Functions commonly used for validation are esc_attr, esc_url, esc_textarea and so on. A good document on the topic please read Validating, Sanitizing, and Escaping.

As a general rule, always escape when you're outputting the data. Don't store it in a variable even if you must use it more than once. It's not certain how ThemeForest checks the theme to know that there were attributes without escaping, but, if they didn't made an "optical" check they run some regular expression search to check if esc_attr, esc_url or similar was used within an attribute (the first doc linked above says that WP.com runs automated checks).

As an example of proper escaping:

Don't do

$trouble = esc_attr( $some_title );
echo '<a href="' . esc_url( $link ) . '" title="' . $trouble . '" alt="' . $trouble . '">';

Do

echo '<a href="' . esc_url( $link ) . '" title="' . esc_attr( $some_title ) . '" alt="' . esc_attr( $some_title ) . '">';

- Text within options should be added with esc_html or esc_html__


echo '<option value="' . esc_attr( $value ) . '">' . esc_html( $label ) . '</option>';

- Text used, for example, as a description, that can contain or not html should be run through wp_kses_post and NOT with esc_html

Don't do


echo '<small>' . esc_html( $description ) . '</small>';

Do


echo '<small>' . wp_kses_post( $description ) . '</small>';

This is in case in the future we need to add a link or set something in bold or italic or something. In the past, we added to Lightbox Link and others a link pointing to a document. If we use esc_html this becames text instead of a link since basically esc_html transforms the html to plain text.

Always check that user intends to do the action. In WP Admin, use check_admin_referer for form submitting and saving. Users can be easily tricked to click a link when they're inadvertently logged in and they can perform an action they didn't meant.

When checking number input for sensitive operations, don't parse the input with intval before using it since for strings like 123somemaliciouscode it will return true. Instead use first is_numeric or ctype_digit.

Always use nonces to check origin and user intention. See Nonces in WP Handbook for reference.

Translation

  • Make all strings available for translation using esc_html__ or esc_html_e since in 99% cases the string won't have HTML in it. If you need to include HTML it can be done using
    sprintf( '<a href="%s">' . esc_html__( 'Link', 'themify' ) . '</a>', 'http://themify.me/' )
  • Make plurals properly available for translation using _n.
  • If you introduce new custom fields in the plugin or theme, make sure you list them in the wpml-config.xml file in each plugin or theme root directory. If there's no such file, create one following the XML file in themify-builder plugin or themify-infinite theme as reference.

Date & Time

  • Always use the WordPress standard options date_format and time_format so users can change them. To use them in JavaScript, you can fetch the format, pass it through wp_localize_script and use it to format any date with date.js library.

Code Formatting

Follow the conventions of styling used by the Themify team:

  • For indentation, use tabs, not spaces. Each tab must have a size of 4 spaces.
  • Add phpDocs and jsDocs for functions, classes, methods and properties. A good documentation will make clear what something does for the rest of the team. Follow WordPress standards for PHP documentation and JS documentation.
  • Follow WordPress standards regarding code style: PHP, JS and CSS.

Code Documentation

  • Always document your code by add proper PHP comments (so other developers can understand your code easier)
  • If it is CSS, then add CSS comment to document the code.

File Structure

  • Always follow the same file structure as existing structure.
  • When adding code, keep them nicely organized and group them (ie. do not just keep on adding new code at the bottom). If there are existing functions and the new code is related, add the new code to below the existing functions.
  • Admin and public CSS/JS should be enqueued accordingly (ie. do not enqueue admin JS in every admin pages).
  • Do not enqueue unnecessary JS/CSS for every little feature (try to add to the existing core CSS/JS files).

Read More

Adding/Updating Builder Layouts

This article explains the procedure on how to add new pre-built Themify Builder > Layouts.

Step 1: Create New Layouts

  1. First create a new Post with Builder using the Builder Layouts demo (eg. title "Portfolio 2")
    • In Themify Custom Panel, make sure to select all these options: http://cl.ly/3W2w371J2t19 (NOTE: Featured Image will upload later when the layout is done)
    • Categorize the layout post accordingly
    • Change the post publish date very old so it won't appear in regular blog query top pages (eg. publish them as Feb 2011). The publish date should be organized batch by batch so we can track their release date (eg. Feb 2011 = one batch, Mar 2011 = another batch).
  2. Design the layout and follow the design notes below:

Design Notes

  • When a Post or Slider module is used to display posts, remember to select "All Categories" instead of specific category (this way users won't see empty posts in their sites).
  • When images are used (could be post Featured Images, Image module, Slider images, etc.), remember to enter the desired image width and height so the img.php script will generate the exact image size. Then replace the image URL from the original image to the cropped image. See this sample post (all image URLs are using the cropped size).
  • When a video background is used, remember to upload the fallback background image because mobile doesn't support video background.
  • When using padding/margin, it is better to use % value as it is better for responsive.
  • The layout must look nice on all responsive breakpoints.

Step 2: Export Layouts

  1. When layout is complete, test the layout: export the finished layout from the demo to your localhost and see how the layout looks like on your localhost. The layout on demo should look identical as your localhost.
  2. If it passes the test, take a screenshot of layout (600x700px) and upload it as the post's Featured Image
  3. Then use Themify Builder > Import/Export > Export the layout as a zip file (eg. portfolio-2.zip)
  4. Download the WP generated thumb (150x174px) jpg file and name it as the layout thumbnail (eg. thumb-portfolio-2.jpg). To find WP generated thumb: manually add '-150x170' in the image URL of the featured image (eg. original > thumb image

Step 3: Define Layouts in Builder

  1. Launch GitHub desktop app, sync "themes" repository
  2. Grab the latest 'themify' framework folder and put it in your localhost demo site (so you are testing with the latest framework)
  3. In your localhost WP folder: drop in the new layout zip (eg. the portfolio-2.zip exported previously) in 'themify > themify-builder > includes > data' folder
  4. Then drop in the screenshot jpg (eg. thumb-portfolio-2.jpg) in 'themify > themify-builder > includes > data' folder
  5. Then open 'layouts.php' file from the data folder and add a new array of the new layout in alphabet order (see screenshot)
  6. After you added the array in the layouts.php file, add a new test page on your localhost WP site, then try to load the new layout you added
  7. If it imports the layout correctly, then move on to the next step to commit

Step 4: Commit Layouts

  1. Launch GitHub desktop app, synce "themes" repository (remember to sync before adding files)
  2. Part 1: Themify Framework: Replace the entire 'data' folder to Github repo 'themify > themify-builder > includes > data' (this is for the Builder in framework)
  3. Part 2: Builder Plugin: Then replace the same 'data' folder to Github repo 'themify-builder > includes > data' (this is for the Builder plugin, so the framework and Builder plugin both have the same Builder Layouts)
  4. Verify the changes (make sure you are committing the right files and folders)
  5. Commit the changes and then sync GitHub app

Read More