# Hi! How can I add a CTA button to my existing project?

**URL:** https://forum.8thwall.com/t/hi-how-can-i-add-a-cta-button-to-my-existing-project/4449
**Category:** Technical Support
**Created:** [January 9, 2025, 1:44pm UTC](https://forum.8thwall.com/t/hi-how-can-i-add-a-cta-button-to-my-existing-project/4449 "2025-01-09T13:44:49Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![Sanskar\_Agarwal](https://avatars.discourse-cdn.com/v4/letter/s/e9a140/32.png) [@Sanskar\_Agarwal](https://forum.8thwall.com/u/Sanskar_Agarwal)
#### Post date: [January 9, 2025, 1:44pm UTC](https://forum.8thwall.com/t/hi-how-can-i-add-a-cta-button-to-my-existing-project/4449/1 "2025-01-09T13:44:49Z")

</div>

Hi! I am implementing a image target AR project, and want to show a CTA button that links to a page. Any resources on how I can achieve that?

Thanks!

---

<div class="post-metadata">

### Author: ![GeorgeButler](https://sea1.discourse-cdn.com/flex019/user_avatar/forum.8thwall.com/georgebutler/32/1903_2.png) [@GeorgeButler](https://forum.8thwall.com/u/GeorgeButler)
#### Post date: [January 9, 2025, 5:27pm UTC](https://forum.8thwall.com/t/hi-how-can-i-add-a-cta-button-to-my-existing-project/4449/2 "2025-01-09T17:27:26Z")

</div>

Hi, welcome to the forums!

If you take a look at the [**Studio: Spatial Audio** Sample project](https://www.8thwall.com/8thwall/spatial-audio) you’ll notice it has a 3D button you can click to start and stop audio that’s attached to the radio model.

We can take this example and modify it so that instead of using a state machine we simply attach a listener to the button that listens for a click or touch and opens a link using javascript.

Here’s an example:

```ts
import * as ecs from '@8thwall/ecs'

ecs.registerComponent({
  name: 'cta',
  schema: {
  },
  schemaDefaults: {
  },
  data: {
  },
  add: (world, component) => {
    world.events.addListener(component.eid, ecs.input.SCREEN_TOUCH_START, (e) => {
      window.open('https://google.com', '_blank')
    })
  },
  tick: (world, component) => {
  },
  remove: (world, component) => {
  },
})

```

---

<div class="post-metadata">

### Author: ![GeorgeButler](https://sea1.discourse-cdn.com/flex019/user_avatar/forum.8thwall.com/georgebutler/32/1903_2.png) [@GeorgeButler](https://forum.8thwall.com/u/GeorgeButler)
#### Post date: [January 9, 2025, 7:55pm UTC](https://forum.8thwall.com/t/hi-how-can-i-add-a-cta-button-to-my-existing-project/4449/3 "2025-01-09T19:55:49Z")

</div>

> **[Studio: Call to Action | 8th Wall | 8th Wall](https://www.8thwall.com/8thwall/studio-call-to-action)**
>
> This project demonstrates how to create a 3D label in your scene that redirects users to another website when clicked, using built-in UI elements.

🎁
