3D viewerWordPressiFrameGLBweb integration

    3D Viewer on WordPress: Plugin, iFrame or Shortcode?

    7 June 20268 minPierre Chabot

    How to add a 3D viewer to WordPress: plugin, iFrame or shortcode to display GLB, STEP and FBX files. Performance, security and GDPR compared.


    You have a GLB, STEP or FBX model and want to display it directly on your WordPress site. The immediate question: native plugin, external iFrame or custom shortcode? These three approaches have very different profiles in terms of complexity, performance and maintenance. This guide compares each one so you can choose the right fit for your context.

    Three methods to display a 3D model on WordPress

    Native WordPress plugin

    A native plugin installs from the WordPress directory and handles upload, rendering and viewer configuration directly in the admin. Advantages: visual integration in the Gutenberg editor, no code to write, updates via the dashboard. Disadvantages: dependency on the plugin author's maintenance, extra load on your WordPress server, compatibility sometimes fragile with other plugins or the active theme.

    WordPress 3D plugins are generally limited to GLB/GLTF formats. For STEP or IGES files, common in industrial settings, very few native plugins offer direct conversion or rendering. If you work with CAD files, this limitation is often a deal-breaker.

    External iFrame

    An iFrame embeds a viewer hosted elsewhere (on a dedicated platform) into your WordPress page via a standard HTML tag. It is the lightest method for WordPress: no server processing, no CMS dependency. The viewer runs on the provider's infrastructure, not your hosting. Viewer updates are managed by the provider, not by you.

    For integration, a Custom HTML block in Gutenberg is enough. Compatibility is universal: WordPress, Webflow, Shopify, any CMS that accepts raw HTML. The only technical prerequisite on the provider side is CORS header and embedding policy configuration, OmniView 3D handles these parameters for its integration links.

    Custom shortcode

    A shortcode is an intermediate solution: you register a PHP function in functions.php or a child plugin that generates the iFrame tag or rendering script. Advantage: full control over rendering and parameters. Disadvantage: requires WordPress development skills, maintenance at each WordPress or theme update, and introduces technical debt if the original developer is no longer available.

    Comparison of the three methods

    MethodFormatsWordPress server loadSkills requiredMaintenanceBest for
    Native pluginMostly GLB/GLTFYes (on your pages)NoneDepends on plugin authorSimple GLB model, showcase site
    External iFrameSTEP, IGES, GLB, FBX, OBJ…NonePaste HTMLDelegated to the providerTeams with no developer, CAD files
    Custom shortcodeDepends on embedded viewerLowPHP / WordPressOn you (technical debt)Developers wanting full control

    Embedding OmniView 3D on WordPress via iFrame in 4 steps

    1. 1Upload the 3D file (GLB, STEP, FBX, OBJ…) to OmniView 3D from your dashboard.
    2. 2Copy the iFrame code automatically generated from the model page.
    3. 3In WordPress, open the target page or post, add a Custom HTML block (Gutenberg) or Text block (Classic Editor), and paste the code.
    4. 4Adjust dimensions if needed (width: 100%, height: 500px recommended) and publish.
    <!-- WordPress Custom HTML Block (Gutenberg) -->
    <iframe
      src="https://app.omniview3d.com/embed/YOUR-MODEL-ID"
      width="100%"
      height="500"
      frameborder="0"
      allow="fullscreen"
      loading="lazy"
      title="OmniView 3D interactive viewer"
      style="border-radius:12px;">
    </iframe>

    The viewer displays directly in the page, responsive on desktop and mobile. No additional plugin required. If your theme uses a page builder (Elementor, Divi, Bricks), add an HTML or Code widget instead of the Gutenberg block, the principle is identical.

    Performance: impact on your WordPress site

    This is the most underestimated criterion. A native plugin that loads a WebGL library in the HEAD of all your pages degrades Core Web Vitals even on pages without a 3D model. Google sets the "good" threshold for LCP (Largest Contentful Paint) at 2.5 seconds; both LCP and TBT (Total Blocking Time) are directly affected by non-deferred 3D scripts.

    An external iFrame loads lazily by default in modern browsers. Native iframe lazy-loading via the loading="lazy" attribute is now a web standard: the viewer only initialises when it enters the viewport, and the impact on pages without a viewer is zero. This is a decisive advantage for blogs with only one or two pages of 3D content, and for e-commerce, where pages with 3D or AR can convert up to 94% better than static images alone, per Shopify's own data.

    Supported formats: the decisive criterion for industrial teams

    Most WordPress 3D plugins only support GLB and OBJ. For teams exporting STEP from SolidWorks, CATIA or Fusion 360, this limitation requires a conversion step at each model update, a round-trip through Blender or an extra export at each iteration.

    OmniView 3D natively supports STEP, IGES, GLB, FBX, OBJ, STL, PLY and DAE. You upload your CAD file as-is, and the viewer converts and renders it directly. No prior conversion, no intermediate step. For design teams updating models regularly, this time saving is significant.

    Security and access control on a WordPress site

    A native WordPress plugin that stores 3D files on your hosting exposes those files in your uploads directory, indexable by search engines, accessible via direct URL if misconfigured. For confidential design models, this is a risk.

    OmniView 3D offers private, non-indexed, revocable links. The source file stays hosted in Europe (AWS eu-west-1, Ireland) on OmniView's shared infrastructure, isolated per account and separate from your WordPress. You can revoke access to the model without modifying your site. For industrial SMBs subject to GDPR, this separation simplifies compliance management.

    Which method to choose based on your profile?

    • Product e-commerce with ready-to-use GLB models, team without a developer: OmniView 3D iFrame, integration in 5 minutes.
    • Design office sharing STEP files with clients via the website: OmniView 3D iFrame, native STEP support, access control, GDPR.
    • WordPress developer wanting full control over rendering and markup: custom shortcode + OmniView 3D iFrame for advanced parameters.
    • Showcase site with a single simple GLB model, no secure sharing needed: lightweight native plugin or iFrame depending on desired simplicity.

    In most professional cases, the external iFrame is the most robust method: zero load on your WordPress server, multi-format support, maintenance delegated to the provider, and built-in access control. OmniView 3D offers a free Starter plan to test the integration on your site before any commitment.

    Frequently asked questions

    What's the best way to embed a 3D model in WordPress?

    For most teams, the external iFrame: no load on your WordPress server, support for CAD formats (STEP, IGES) on top of GLB, and viewer maintenance delegated to the provider. You paste the code into a Gutenberg Custom HTML block, no developer required.

    Can you display a STEP file on WordPress?

    Not with most native 3D plugins, which are limited to GLB/GLTF. Through an external iFrame viewer like OmniView 3D, which reads STEP, IGES, GLB, FBX, OBJ, STL, PLY and DAE, you embed the CAD file as-is, with no conversion step at each model update.

    Does a 3D viewer slow down a WordPress site?

    A plugin that loads a WebGL library on every page degrades Core Web Vitals even with no model shown. A lazy-loaded iFrame only initialises when it enters the viewport, so the impact on pages without a viewer is zero.

    How do I keep a 3D model private while displaying it on my site?

    The source file stays hosted with the provider (OmniView 3D: AWS eu-west-1, Ireland), outside your WordPress uploads directory. You display it through a private, non-indexed, revocable link, and you can cut access without touching your site.

    Try OmniView 3D for free

    Upload a file and view it right away. No account required.

    Try without signing up
    Featured on Aura++ Featured on ToolListed