---
title: "Cómo Subir Archivos vCard (VCF) a WordPress"
description: "Dos métodos para habilitar la subida de archivos vCard (.vcf) en WordPress: usando un plugin dedicado o un pequeño fragmento de código en functions.php."
date: 2026-02-26
categories: ["wordpress"]
tags: ["wordpress"]
---

import { Picture } from "astro:assets";
import YouTubeEmbed from "@components/widgets/YouTubeEmbed.astro";
import Notice from "@components/widgets/Notice.astro";
import imgVcardAllow from "@assets/images/wordpress/vcard-allow-1024x491.webp";

WordPress bloquea por defecto la subida de archivos vCard (.vcf). Obtendrás un error «Lo siento, este tipo de archivo no está permitido por motivos de seguridad» al intentar subir uno a través de la biblioteca de medios.

Hay dos formas de solucionarlo.

<Notice type="warning" title="Nota de seguridad">
Los archivos vCard pueden contener código ejecutable. Habilita la subida solo desde fuentes de confianza y considera quién tiene acceso a tu biblioteca de medios de WordPress antes de abrir esta puerta.
</Notice>

<YouTubeEmbed
  url="https://www.youtube.com/embed/8aws2qxX55w"
  label="Cómo Subir Archivos vCard a WordPress"
/>

## Método 1: Plugin

Instala el plugin [Enable virtual card upload – vcf,vcard](https://wordpress.org/plugins/enable-virtual-card-upload-vcardvcf/) (gratuito, más de 5.000 instalaciones activas, probado hasta WordPress 6.6 y PHP 8.3). Tras activarlo, ve a **Medios → Añadir nuevo** y los archivos vCard se subirán sin errores. Puedes subir varios archivos a la vez.

Esta es la opción más sencilla si no quieres tocar código.

## Método 2: Fragmento de código

Añade esto a tu archivo `functions.php` (o usa [FluentSnippets](https://wordpress.org/plugins/easy-code-manager/) para gestionarlo sin editar directamente los archivos del tema):

```php
function allow_vcard_upload($mime_types) {
    $mime_types['vcf']   = 'text/vcard';
    $mime_types['vcard'] = 'text/vcard';
    return $mime_types;
}
add_filter('upload_mimes', 'allow_vcard_upload');
```

Si usas FluentSnippets, configura el fragmento para que se ejecute solo en el área de administración, porque ahí es donde WordPress comprueba los tipos MIME durante la subida.

<Picture formats={["webp"]} fallbackFormat="webp" src={imgVcardAllow} alt="Fragmento de código de FluentSnippets para permitir la subida de vCard en la administración de WordPress" />

Tras añadir el código, ve a **Medios → Añadir nuevo** y sube tu archivo .vcf.

## Mostrar el enlace de descarga de la vCard

Una vez subido, obtén la URL del archivo desde la biblioteca de medios (haz clic en el archivo y copia la URL del campo **URL del archivo**), y luego crea un enlace de descarga:

```html
<a href="https://example.com/wp-content/uploads/2024/01/contact.vcf">Download contact card</a>
```

O como botón:

```html
<button onclick="window.location.href='https://example.com/wp-content/uploads/2024/01/contact.vcf'">Download vCard</button>
```

En Gutenberg también puedes añadir el archivo directamente con el bloque **Archivo**, que genera un botón de descarga automáticamente.

## Solución de problemas

Si las subidas siguen fallando tras habilitar la compatibilidad con vCard, revisa lo siguiente:

- **Restricciones del hosting**: Algunos hostings gestionados de WordPress (como WP Engine o Kinsta) sobrescriben la configuración de tipos MIME a nivel de servidor. Contacta con su soporte para permitir `text/vcard`.
- **Plugins de seguridad**: Plugins como Wordfence o Sucuri pueden bloquear tipos de archivo que consideran peligrosos. Revisa sus ajustes de subida de archivos.
- **WordPress multisitio**: En multisitio, el administrador de la red controla los tipos de archivo permitidos en **Administración de la red → Ajustes → Tipos de archivo de subida**. Añade `vcf` a la lista.
- **Detección MIME de PHP**: WordPress usa `finfo_file()` de PHP para verificar los tipos MIME. Si la base de datos MIME de tu servidor no reconoce los archivos `.vcf`, puede que necesites añadir `define('ALLOW_UNFILTERED_UPLOADS', true);` a `wp-config.php` temporalmente (quítalo después de subir, ya que desactiva todas las comprobaciones de tipo de archivo).