VITRIO MUNDIAL — YA DISPONIBLEVITRIO MUNDIAL — YA DISPONIBLEVITRIO MUNDIAL — YA DISPONIBLEVITRIO MUNDIAL — YA DISPONIBLEVITRIO MUNDIAL — YA DISPONIBLEVITRIO MUNDIAL — YA DISPONIBLE
VITRIO MUNDIAL — YA DISPONIBLEVITRIO MUNDIAL — YA DISPONIBLEVITRIO MUNDIAL — YA DISPONIBLEVITRIO MUNDIAL — YA DISPONIBLEVITRIO MUNDIAL — YA DISPONIBLEVITRIO MUNDIAL — YA DISPONIBLE
1. Ve a supabase.com → New project
2. Settings → API → copia "Project URL" y "anon public key"
3. Pégalos aquí y guarda
4. Luego ve a SQL Editor y corre el script de la pestaña "Setup SQL"
Logos e imágenes del sitio
Logo — Marca de agua (fondo modal producto)
Aparece centrado con 5% de opacidad en el fondo del modal de cada producto.
Carrusel — Nosotros
Hero
Nosotros
Contacto
Nueva colección
Editar producto
Nuevo producto
Categorías visibles
Activa o desactiva categorías para que aparezcan en los filtros de la tienda. Si una categoría está desactivada, sus productos siguen existiendo pero no se pueden filtrar por ella.
$0
Ventas totales
0
Pedidos
0
Pendientes
0
Entregados
Cargando pedidos...
Migrar productos a Supabase
Sube todas las colecciones y productos al instante. Solo necesitas hacerlo una vez — después los editas desde el panel.
Script SQL — cópialo y córrelo en Supabase → SQL Editor
-- 1. Tabla de colecciones
CREATE TABLE IF NOT EXISTS colecciones (
id TEXT PRIMARY KEY,
nombre TEXT NOT NULL,
orden INT DEFAULT 0,
created_at TIMESTAMPTZ DEFAULT NOW()
);
-- 2. Tabla de productos
CREATE TABLE IF NOT EXISTS productos (
id UUID DEFAULT gen_random_uuid() PRIMARY KEY,
nombre TEXT NOT NULL,
precio TEXT NOT NULL,
descripcion TEXT,
categoria TEXT,
coleccion_id TEXT REFERENCES colecciones(id),
imagen_url TEXT,
vendido BOOLEAN DEFAULT FALSE,
orden INT DEFAULT 0,
created_at TIMESTAMPTZ DEFAULT NOW()
);
-- 3. Tabla de textos
CREATE TABLE IF NOT EXISTS textos (
clave TEXT PRIMARY KEY,
valor TEXT NOT NULL,
updated_at TIMESTAMPTZ DEFAULT NOW()
);
-- 4. RLS: permitir lectura pública
ALTER TABLE colecciones ENABLE ROW LEVEL SECURITY;
ALTER TABLE productos ENABLE ROW LEVEL SECURITY;
ALTER TABLE textos ENABLE ROW LEVEL SECURITY;
CREATE POLICY "Public read colecciones" ON colecciones FOR SELECT USING (true);
CREATE POLICY "Public read productos" ON productos FOR SELECT USING (true);
CREATE POLICY "Public read textos" ON textos FOR SELECT USING (true);
-- 5. RLS: solo admin (autenticado) puede escribir
CREATE POLICY "Auth write colecciones" ON colecciones FOR ALL USING (auth.role() = 'authenticated');
CREATE POLICY "Auth write productos" ON productos FOR ALL USING (auth.role() = 'authenticated');
CREATE POLICY "Auth write textos" ON textos FOR ALL USING (auth.role() = 'authenticated');
-- 6. Datos iniciales de textos
INSERT INTO textos (clave, valor) VALUES
('hero_tag', 'COL. 2025 — Disponible ahora'),
('hero_line1', 'VITRIO'),
('hero_line2', 'STUDIO'),
('hero_desc', 'Moda sin réplicas. Cada pieza es única, numerada y diseñada para quien entiende que vestir es un acto de identidad.'),
('nosotros_title', 'VITRIO STUDIO'),
('nosotros_body', 'Nacimos de la convicción de que la moda de lujo no tiene que ser accesible para todos — tiene que ser única para alguien.'),
('nosotros_stat1', '1 DE 1'),
('contacto_title', 'HABLEMOS.'),
('contacto_sub', '¿Tienes una pregunta, una colaboración o simplemente quieres saber más? Escríbenos.')
ON CONFLICT (clave) DO NOTHING;
-- 7. Colecciones iniciales
INSERT INTO colecciones (id, nombre, orden) VALUES
('fisura', 'FISURA', 1),
('fractura', 'FRACTURA', 2)
ON CONFLICT (id) DO NOTHING;
-- 4. Columna media en productos (si ya creaste la tabla)
ALTER TABLE productos ADD COLUMN IF NOT EXISTS media TEXT;
-- 5. Tabla de pedidos
CREATE TABLE IF NOT EXISTS pedidos (
id UUID DEFAULT gen_random_uuid() PRIMARY KEY,
cliente_nombre TEXT,
cliente_ciudad TEXT,
cliente_direccion TEXT,
cliente_telefono TEXT,
items TEXT,
total NUMERIC DEFAULT 0,
estado TEXT DEFAULT 'pendiente',
created_at TIMESTAMPTZ DEFAULT NOW()
);
Después de correr el SQL: ve a Authentication → Users → Add user → crea tu cuenta admin con tu email y contraseña.
Luego entra al panel con esas credenciales.
CARRITO
Tu carrito está vacío
Confirmación de datos y envío
Información de contacto
Dirección de entrega
Método de envío
Al confirmar, nuestro equipo se pondrá en contacto contigo por WhatsApp para coordinar el pago y el envío de tu pedido. ¡Gracias por tu compra!