

Demo preview for a supported PostmagThemes theme.
PostmagThemes Demo Import sets up your site to look like the theme demo in a single click. Instead of creating posts, pages, menus and widgets by hand, activate the plugin, go to Appearance > Import Demo Data, and import. Functionally it is theme demo import plugin.
It is built for PostmagThemes themes, but it also works with any theme that provides standard demo files.
The main advantage of this plugin is that theme developers can register their demo import files directly in their themes. Users then set up their website by simply clicking the Import button on the Import Demo Data page as a ocdi function.
Check out demo of our ocdi
Context Blog, Context Blog Pro, Blink, Ink, NewsMag and other PostmagThemes themes that support demo import.
With a PostmagThemes theme
With a theme from another author
Integrate PostmagThemes Demo Import into your theme and make website setup easier for your users. It takes just a few minutes.
Step 1: Register your demo files
Add the following code to your theme’s functions.php. Add it at the top level of the file, not inside your own after_setup_theme callback, otherwise the demo may not appear.
`php
add_filter( ‘pt-pmdi/import_files’, function ( $import_files ) {
$import_files[] = array(
‘import_file_name’ => esc_html__(‘My Theme Demo name’, ‘theme-text-domain’),
‘categories’ => array(esc_html__( ‘Blog’, ‘theme-text-domain’ )),
‘import_file_url’ => esc_url( ‘https://example.com/demo/content.xml’ ),
‘import_widget_file_url’ => esc_url( ‘https://example.com/demo/widgets.wie’),
‘import_customizer_file_url’ => esc_url( ‘https://example.com/demo/customizer.dat’),
‘import_preview_image_url’ => esc_url( ‘https://example.com/demo/screenshot.png’),
‘preview_url’ => esc_url(‘https://example.com/demo/’),
‘import_notice’ => esc_html__(‘Optional note shown before import.’, ‘theme-text-domain’),
);
return $import_files;
} );
`
Step 2 : Recommend the plugin to your users
Add the following code to your theme’s functions.php to show your users a notice with a link to install PostmagThemes Demo Import. Replace the my_theme_ prefix and the my-theme text domain with your own.
`php
function your_theme_demo_import_notice() {
// Hide if the plugin is already active or the user can’t install plugins.
if ( class_exists( ‘PMDI\OneClickDemoImport’ ) || ! current_user_can( ‘install_plugins’ ) ) {
return;
}
$url = admin_url( 'plugin-install.php?s=postmagthemes-demo-import&tab=search&type=term' );
?>
<div class="notice notice-info is-dismissible">
<p>
<?php esc_html_e( 'Want your site to look like the theme demo? Install the free PostmagThemes Demo Import plugin to import the demo content in one click.', 'theme-text-domain' ); ?>
<a href="<?php echo esc_url( $url ); ?>"><?php esc_html_e( 'Get PostmagThemes Demo Import', 'theme-text-domain' ); ?></a>
</p>
</div>
<?php
}
add_action( ‘admin_notices’, ‘your_theme_demo_import_notice’ );
`
Step 3 (optional): Hide the PostmagThemes showcase
The Import Demo Data page shows PostmagThemes’ free themes and plugins. If you prefer not to show them to your users, add this to your theme’s functions.php:
`php
add_filter( ‘pt-pmdi/show_wporg_showcase’, ‘__return_false’ );
`
Ask your theme developer to support this plugin. Let them know how easy it makes setting up a site with their theme’s demo.
Note: Demo content is imported under the currently logged-in WordPress user. The plugin does provide an option to map author from the demo import files to existing users on your website.
Based on One Click Demo Import.
All plugin images (banners, icons and screenshots) are self-created and licensed under Creative Commons Zero (CC0).