# Hybrid Option

Source: https://docs.ezoic.com/docs/ezoic-legacy-features/hybrid/


For more complex sites that have a mix of static and dynamic content, and want to make use of all of Ezoic's features, we have our Hybrid Integration.

## Hybrid Integration
Hybrid Integration is when a site integrates through nameservers or Cloudflare, while using the client-side code snippet to call for ads. The benefit of the hybrid integration is that it enables Ezoic's other products (e.g. Ezoic Cloud, SEO, [Video](https://www.ezoic.com/video/), and many more) with the ability to load ads dynamically.

## Prerequisites
Make sure placeholders are created via the dashboard. See [article](https://support.ezoic.com/kb/article/ezoicads-getting-started-guide) to learn more about placeholders and how to create them.

Load the code library by adding this script to the `<head>` of the page. Some Ezoic features require the HTML to exist statically rather than loaded via javascript.

```html
<script async src="https://www.ezojs.com/ezoic/sa.min.js"></script>
```

## Adding Placeholders dynamically
To add a placeholder to the page create a `div` element of where the ad should be. The element's id attribute should be the ID of the placeholder with prefix `ezoic-pub-ad-placeholder-`.

For example, to add placeholders with the id 103 and 104, the HTML would look similar to this.

```html
<body>
    <div id="ezoic-pub-ad-placeholder-103">
    </div>
    <!-- Content -->
    <div id="ezoic-pub-ad-placeholder-104">
    </div>
</body>
```

## Calling For Ads
Once the placeholders have been added to the HTML, call for the Ezoic ad code by using `ezstandalone.displayMore()`.

```html
<script type="text/javascript">
    window.ezstandalone = window.ezstandalone || {};
    ezstandalone.cmd = ezstandalone.cmd || [];
    ezstandalone.cmd.push(function() {
        ezstandalone.showAds(103, 104);
    });
</script>
```
## Exceptions
For integrated sites without static placeholders that want to load all placeholders dynamically using our client-side ad setup, please use the following guide instead: [Getting Started With EzoicAds](/docs/ezoicads/getting-started/).


`Static placeholders` are placeholders which are added to the html when passing through our proxy, rather than being added via javascript


---

## Controlling Form Factor Traffic

Controlling device traffic relies on the settings in Ezoic [dashboard](https://pubdash.ezoic.com/ezoicads/optimizationgoals)


If traffic to a specific form factor is disabled in the Ezoic dashboard, you can add a conditional statement using the `ezstandalone.isEzoicUser()` function to respect those settings.


```html
<script type="text/javascript">
    ezstandalone.cmd = ezstandalone.cmd || [];
    ezstandalone.cmd.push(function() {
        if(ezstandalone.isEzoicUser()) {
            ezstandalone.showAds(100,101);
        } else {
            // Normal ad code execution
        }
    });
</script>
```

