# Külső szolgáltatások

> A feltöltött fájlok mentése Dropboxba, Google Drive-ra vagy Amazon S3-ba: a kapcsolat és a Külső fájlfeltöltés művelet.

A fájlok két lépésben jutnak külső szolgáltatásba: először a bővítmény beállításaiban kapcsolod össze a szolgáltatást, aztán az űrlapon felveszed a **Külső fájlfeltöltés** műveletet.

## 1. A szolgáltatás beállítása

A beállítások a **Ninja Forms → Fájlfeltöltések → Külső beállítások** fülön vannak.

![A Külső beállítások fül](./kepek/kulso-beallitasok.webp)

*A Külső beállítások fül* (https://minta-bolt.hu/wp-admin/)

A képen három doboz látszik: **Dropbox beállításai**, **Google Drive beállításai** és **Amazon S3 beállításai**, alattuk pedig a **Nyilvános URL használata** kapcsoló.

### Dropbox

1. Kattints a **Csatlakozás** gombra a Dropbox dobozban, és engedélyezd a hozzáférést.
2. Ha szeretnél almappát, add meg a **File Path** mezőben (lásd lent).
3. Kattints a **Mentés** gombra.

A Dropbox fiókodban a fájlok mindig az `Apps/Ninja Forms Uploads/` mappába kerülnek, ez nem módosítható. A **File Path** ezen belül hoz létre mappát. A mappanevet perjellel zárd, például `Test/`: ekkor a fájlok az `Apps/Ninja Forms Uploads/Test/` mappába mennek. Ez globális beállítás, minden olyan űrlapra érvényes, amely Dropboxba küld.

### Google Drive

1. Kattints a **Csatlakozás** gombra a Google Drive dobozban, és engedélyezd a hozzáférést.
2. A **File Path** mezőbe írd a Drive-mappa nevét, például `Test/`.
3. Kattints a **Mentés** gombra.

Ami a **File Path** mezőbe kerül, az lesz a mappa neve a Drive-on. Üresen hagyva a fájlok közvetlenül a Drive főterületére kerülnek, mappa nélkül. Almappához a neveket perjellel választd el, például `Ügyfelek/Önéletrajzok/`. A mappát a Ninja Forms hozza létre, és csak az általa létrehozott mappákat tudja használni: egy kézzel létrehozott, azonos nevű mappát nem használ.

### Amazon S3

1. Az Amazon IAM konzolon válaszd ki a felhasználódat, a **Security Credentials** fülön hozz létre hozzáférési kulcsot (**Create Access Key**), és jegyezd fel a kulcsazonosítót és a titkos kulcsot.
2. A **Ninja Forms → Fájlfeltöltések → Külső beállítások** fülön írd be az **Access Key** és a **Secret Key** mezőbe.
3. A **Bucket Name** mezőbe a célkosár nevét írd. Pontosan egyeznie kell az S3-ban lévő névvel.
4. Ha kell, a **File Path** mezőben megadhatsz alapértelmezett útvonalat a kosáron belül.
5. Kattints a **Mentés** gombra.

A két kulcsot a `wp-config.php` fájlban konstansként is megadhatod:

```php
define( 'NF_FU_AMAZON_S3_ACCESS_KEY', 'xxxxxxxxxxxxxx' );
define( 'NF_FU_AMAZON_S3_SECRET_KEY', 'xxxxxxxxxxxxxxxxxxxxxxxxxxxx' );
```

Ha a kosár privát, egy mu-plugin fájlba (például `wp-content/mu-plugins/ninja-forms.php`, a mappát létre kell hozni, ha nincs) tedd be ezt:

```php
<?php
add_filter( 'ninja_forms_uploads_s3_acl', function () {
	return NF_FU_External_Services_S3_Service::ACL_PRIVATE;
} );
```

## 2. A Külső fájlfeltöltés művelet

A művelet csak akkor jelenik meg a listában, ha legalább egy szolgáltatás össze van kötve.

1. Nyisd meg az űrlap **E-mailek és műveletek** fülét.
2. Kattints az **Új művelet hozzáadása** gombra.
3. Az **Installed add-on actions** csoportban kattints duplán a **Külső fájlfeltöltés** műveletre.

![A művelet hozzáadása: a Külső fájlfeltöltés a telepített kiegészítők műveletei között](./kepek/muvelet-lista.webp)

*A művelet hozzáadása: a Külső fájlfeltöltés a telepített kiegészítők műveletei között* (https://minta-bolt.hu/wp-admin/)

A képen a listában megjelent a **Külső fájlfeltöltés**.

4. Add meg a **Művelet neve** mezőben a nevet.
5. A szolgáltatás alatt (itt **Amazon S3**) kapcsold be az űrlap File Upload mezőjét, amelynek a fájljait oda akarod küldeni.

![A Külső fájlfeltöltés művelet beállításai](./kepek/kulso-muvelet.webp)

*A Külső fájlfeltöltés művelet beállításai* (https://minta-bolt.hu/wp-admin/)

A képen az **Önéletrajz** mező kapcsolója látható az **Amazon S3** alatt. Ha több szolgáltatás is össze van kötve, mindegyik külön szakaszt kap.

## Közvetlen link a külső fájlra

Alapértelmezetten a külső szolgáltatásba feltöltött fájlok URL-je csak a bejelentkezett felhasználók számára érhető el. Ha nyilvános linket szeretnél (például az e-mailben), kapcsold be a **Nyilvános URL használata** beállítást a **Külső beállítások** fülön.
