Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.tokkoplugins.com/llms.txt

Use this file to discover all available pages before exploring further.

Funciones públicas

Estas funciones están disponibles después de que el plugin Tokko se ha inicializado. Úsalas en tus temas, plugins o código personalizado.

Funciones de sincronización

No existe una función pública thi_sync_now(). Para iniciar sincronizaciones desde código personalizado puedes llamar a la acción AJAX del plugin (wp_ajax_thi_unified_sync_detect seguida de wp_ajax_thi_unified_sync_execute_batch y wp_ajax_thi_unified_sync_finalize), o cambiar thi_sync_option para que WP-Cron dispare thi_scheduled_sync en la frecuencia que elijas.

thi_detect_sync_context()

Obtiene el contexto actual de sincronización.
function thi_detect_sync_context(): array
Retorna array con claves:
  • is_syncing (bool) - Si hay sincronización activa
  • progress (int) - Porcentaje de progreso (0-100)
  • last_sync_time (string) - Timestamp de última sincronización
  • last_sync_status (string) - Estado: ‘success’, ‘error’, ‘warning’
  • current_batch (int) - Lote actual procesado
  • total_batches (int) - Total de lotes
  • error_count (int) - Errores encontrados
  • warning_count (int) - Advertencias generadas
AspectoDetalles
ParámetrosNinguno
Ubicaciónincludes/sync/sync-functions.php

thi_get_cached_properties()

Obtiene el set de propiedades que se usó en la última sincronización.
function thi_get_cached_properties(): array
AspectoDetalles
ParámetrosNinguno
Valor de retornoarray de propiedades con el formato que entrega la API de Tokko
Ubicaciónincludes/sync/sync-utilities.php

thi_get_cached_developments()

Obtiene desarrollos del caché local de la última sincronización.
function thi_get_cached_developments(): array
AspectoDetalles
ParámetrosNinguno
Valor de retornoarray de desarrollos
Ubicaciónincludes/sync/sync-utilities.php

thi_detect_changed_properties()

Detecta qué propiedades cambiaron desde la última sincronización comparando deleted_at con los timestamps locales (base de la sincronización inteligente / smart sync).
function thi_detect_changed_properties(
    int $max_properties = 0,
    bool $force_full_check = false
)
AspectoDetalles
Parámetros$max_properties (int) — límite opcional; $force_full_check (bool) — ignora el caché y re-evalúa todo
DescripciónCompara el deleted_at de Tokko (usado como marca de última modificación) con el timestamp guardado por el plugin para identificar cambios eficientemente.
Ubicaciónincludes/sync/sync-optimizer.php

thi_detect_changed_developments()

Versión para emprendimientos de thi_detect_changed_properties: identifica cambios en desarrollos desde la última sincronización.
function thi_detect_changed_developments(
    int $max_developments = 0,
    bool $force_full_check = false
)
AspectoDetalles
Parámetros$max_developments (int) — límite opcional; $force_full_check (bool)
Ubicaciónincludes/sync/sync-utilities.php

thi_count_published_properties()

Cuenta cuántas entradas publicadas existen para un post type dado, normalmente 'property' o 'emprendimiento'.
function thi_count_published_properties(string $type = 'property'): int
AspectoDetalles
Parámetros$type (string) — 'property' (default) o 'emprendimiento'
Valor de retornoint — cantidad de entradas en estado publish
Ubicaciónincludes/sync/sync-utilities.php

Funciones de API

thi_check_api_key()

Valida la clave API de Tokko configurada haciendo una llamada en vivo al endpoint company_profile.
function thi_check_api_key(): WP_Error|string
AspectoDetalles
Valor de retornostring (nombre de la empresa) si es válida, WP_Error si falla
ParámetrosNinguno
Ubicaciónincludes/api/api-integration.php

thi_check_connection_health_detailed()

Ejecuta los chequeos de salud completos del servidor (memoria, load, disco) que el plugin usa antes de iniciar un sync. Ideal para exponer el mismo diagnóstico en dashboards externos.
function thi_check_connection_health_detailed(): array
AspectoDetalles
Valor de retornoarray con bloques memory, load, disk y overall (cada uno con status, métrica y umbrales)
ParámetrosNinguno
Ubicaciónincludes/ajax/ajax-handlers.php
Los umbrales que usa esta función son personalizables con los filtros de la sección Health checks.

thi_get_tokko_properties()

Obtiene propiedades desde la API de Tokko aplicando el límite del plan activo.
function thi_get_tokko_properties(): WP_Error|array|string
AspectoDetalles
ParámetrosNinguno (el límite lo determina el plan activo)
Valor de retornoarray de propiedades o WP_Error si la API falla
Respeta límitesSí, según el plan contratado (Starter: 100, Professional/Pro+: ilimitadas)
Ubicaciónincludes/api/api-integration.php
El plugin respeta automáticamente los límites de propiedades según tu plan de suscripción.

thi_get_tokko_developments()

Obtiene desarrollos (emprendimientos) desde la API de Tokko respetando el límite del plan activo.
function thi_get_tokko_developments(): WP_Error|array|string
AspectoDetalles
ParámetrosNinguno
Valor de retornoarray de desarrollos o WP_Error
Plan StarterMáximo 2 desarrollos
Plan Professional / Pro+Ilimitados
Ubicaciónincludes/api/development-api.php

thi_get_development_count()

Obtiene el número total de desarrollos disponibles en la cuenta de Tokko.
function thi_get_development_count(): int|WP_Error
AspectoDetalles
Valor de retornoint con el total, o WP_Error si la API falla
ParámetrosNinguno
Ubicaciónincludes/api/development-api.php

thi_get_development_sync_limits()

Obtiene información sobre límites de sincronización de desarrollos según el plan activo.
function thi_get_development_sync_limits(): array
AspectoDetalles
ParámetrosNinguno
Ubicaciónincludes/api/development-api.php

Funciones de agentes

La sincronización de agentes es una característica premium (Professional / Pro+). Estas funciones sólo están disponibles cuando el plan del plugin permite sincronización de agentes.

thi_sync_agent()

Crea o actualiza un agente (Houzez houzez_agent) a partir de los datos devueltos por la API de Tokko (objeto producer).
function thi_sync_agent(array $producer_data)
AspectoDetalles
Parámetros$producer_data (array) — estructura producer de Tokko (id, name, email, cellphone, phone, picture, etc.)
Valor de retornoint con el ID del post houzez_agent, o WP_Error si falla
Ubicaciónincludes/agent/agent-functions.php

thi_delete_agent()

Elimina un agente, con opción de reasignar sus propiedades a otro.
function thi_delete_agent(
    int $agent_id,
    ?int $reassign_to_agent_id = null
): bool|WP_Error
AspectoDetalles
Parámetros$agent_id (int), $reassign_to_agent_id (int|null) — agente al que reasignar las propiedades
Valor de retornobool si tuvo éxito, WP_Error si falla
Ubicaciónincludes/agent/agent-functions.php

thi_update_agent()

Actualiza los datos de un agente existente a partir del producer de Tokko.
function thi_update_agent(int $agent_id, array $producer_data)
AspectoDetalles
Parámetros$agent_id (int), $producer_data (array) con los campos actualizados
Ubicaciónincludes/agent/agent-functions.php

thi_sync_agents_from_properties()

Recorre un array de propiedades de Tokko y sincroniza todos los agentes únicos que aparecen como producer.
function thi_sync_agents_from_properties(array $properties): array
AspectoDetalles
Parámetros$properties (array) — propiedades en el formato de Tokko
Ubicaciónincludes/agent/agent-functions.php

thi_get_agent_by_tokko_id()

Encuentra un agente local a partir de su ID de Tokko.
function thi_get_agent_by_tokko_id(int $tokko_id): ?WP_Post
AspectoDetalles
Parámetros$tokko_id (int) — ID del agente en Tokko
Valor de retornoWP_Post (post type houzez_agent) o null
Ubicaciónincludes/agent/agent-functions.php

thi_assign_agent_to_property()

Asigna un agente Houzez a una propiedad ya creada.
function thi_assign_agent_to_property(
    int $property_id,
    int $agent_id
): bool
AspectoDetalles
Parámetros$property_id (int), $agent_id (int)
Valor de retornobool
Ubicaciónincludes/agent/agent-functions.php

Funciones de mapeo

thi_map_tokko_to_houzez()

Convierte una propiedad de Tokko al formato Houzez y la guarda en WordPress.
function thi_map_tokko_to_houzez(array $tokko_property): bool|string
AspectoDetalles
Parámetros$tokko_property (array) — datos crudos de la API de Tokko
Valor de retornobool o string (mensaje informativo) según el resultado del mapeo/inserción
Ubicaciónincludes/property/property-mapping.php

Funciones de imágenes

thi_normalize_image_url()

Corrige extensiones truncadas en URLs de imágenes.
function thi_normalize_image_url(string $url): string
AspectoDetalles
Parámetros$url (string) - URL de imagen potencialmente truncada
Valor de retornostring - URL corregida
Ubicaciónincludes/sync/image-sync.php

thi_get_quality_aware_image_url()

Obtiene URL de imagen según configuración de calidad.
function thi_get_quality_aware_image_url(
    array $photo
): string
AspectoDetalles
Parámetros$photo (array) - Datos de foto de Tokko
Valor de retornostring - URL optimizada según calidad configurada
Ubicaciónincludes/sync/image-sync.php

Funciones de utilidad

tp_fs()

Obtiene la instancia inicializada del SDK de Freemius que gestiona la licencia y el plan del plugin.
function tp_fs()
AspectoDetalles
Valor de retornoInstancia global del Freemius SDK
ParámetrosNinguno
Ubicacióntokko-houzez-integration.php

thi_log()

Registra mensajes en el log del plugin (solo activo cuando Modo Desarrollo está habilitado).
function thi_log(string $message, string $type = 'info'): void
AspectoDetalles
Parámetros$message (string), $type (string) - ‘info’, ‘warning’, ‘error’
Solo en desarrolloSí — requiere Dev Mode activo (feature premium)
Ubicaciónincludes/sync/sync-functions.php

thi_is_development_environment()

Verifica si el Modo Desarrollo (Dev Mode) está activo.
function thi_is_development_environment(): bool
AspectoDetalles
Valor de retornobooltrue si Dev Mode está habilitado
ParámetrosNinguno
Ubicaciónadmin/settings-page.php

Funciones de timestamps

thi_create_timestamps_table()

Crea tabla para rastrear cambios de propiedades.
function thi_create_timestamps_table(): bool
AspectoDetalles
Valor de retornobool - true si se creó o existe
ParámetrosNinguno
Ubicaciónincludes/sync/timestamp-manager.php

thi_get_property_timestamp()

Obtiene el último timestamp (y metadata) registrado para una propiedad.
function thi_get_property_timestamp(string $tokko_id): ?array
AspectoDetalles
Parámetros$tokko_id (string) - ID de propiedad en Tokko
Valor de retornoarray con los campos guardados o null si no hay registro
Ubicaciónincludes/sync/timestamp-manager.php

thi_update_property_timestamp()

Registra/actualiza el timestamp y estado de sincronización de una propiedad en la tabla local.
thi_update_property_timestamp(
    789,
    '12345',
    '2026-03-25T10:30:00Z',
    'synced'
);
AspectoDetalles
Parámetros$post_id (int), $tokko_id (string), $deleted_at (string ISO 8601 — marca de última modificación de Tokko), $status (string)
Ubicaciónincludes/sync/timestamp-manager.php

Mejores prácticas

Siempre verifica que las funciones existan antes de usarlas para compatibilidad con versiones antiguas.
if (function_exists('thi_check_api_key')) {
    $result = thi_check_api_key();
    if (is_wp_error($result)) {
        echo 'API Key inválida';
    }
} else {
    echo 'Plugin Tokko no está activo';
}
Usa funciones de caché cuando accedas frecuentemente a datos de API para reducir carga.
// ✅ EFICIENTE
$properties = wp_cache_get('tokko_properties');
if (!$properties) {
    $properties = thi_get_cached_properties();
    wp_cache_set('tokko_properties', $properties, '', 1 * HOUR_IN_SECONDS);
}

// ❌ INEFICIENTE
$properties = thi_get_cached_properties(); // En cada llamada