is_connected(); $bundled_templates = $template_service->get_bundled_templates(); $cloud_templates = $template_service->get_cloud_templates(); $workspace_info = $conn_service->get_workspace_info(); $last_sync = get_option( '100p_last_sync_time' ); $sync_time_str = $last_sync ? human_time_diff( $last_sync, current_time( 'timestamp' ) ) . ' ago' : 'Never'; // Determine connection / state flow if ( ! $is_connected ) { $page_state = 'NOT_CONNECTED'; } elseif ( empty( $cloud_templates ) ) { $page_state = 'CONNECTED_EMPTY'; } else { $page_state = 'CONNECTED_READY'; } // Extract categories for filter $categories = []; if ( ! empty( $cloud_templates ) ) { foreach ( $cloud_templates as $t ) { if ( ! empty( $t['category'] ) ) { $categories[] = $t['category']; } } } $categories = array_unique( $categories ); ?>
'Template Library', 'actions' => $section_actions ?? [], // Added fallback in case actions array is missing ]; require HUNDRED_PRINTS_PATH . 'admin/partials/header.php'; ?>

Default Templates

These templates are shipped inside the plugin and work instantly without a connection.

Template Preview

Bundled PDF / PNG
' . esc_html( $template['category'] ) . ''; } ?>
Use

Cloud Templates

Cloud Templates

Connect your 100Prints account to unlock your cloud template library.

  • Unlimited templates
  • Team workspace
  • Browser SDK
  • Automatic synchronization
  • Premium template library
  • Future template updates

Cloud Templates

Workspace
Plan
Templates 0
Last Sync

No Cloud Templates Yet

Templates are created inside 100PrintsWithMe. Create your first template in the dashboard, then press Sync.

Open Dashboard

Cloud Templates

Workspace
Plan
Templates
Last Sync

Cloud Synced
Template
Use

Template Preview

To use this template, open any page or post in the block editor, insert the 100Prints Document block, and select this template.

Connect 100Prints Account

Paste your Developer API Key from your 100Prints Dashboard.