/** * Genera calculadora y contenido SEO automáticamente a partir SOLO del título. * Regla: * - Si el post está vacío (sin [ea_calc]) al guardar, * construimos todo y actualizamos el post. */ function ea_calc_autogenerate_if_empty( $post_ID, $post, $update ) { // No tocar revisiones ni autosaves if ( wp_is_post_revision( $post_ID ) ) return; if ( defined('DOING_AUTOSAVE') && DOING_AUTOSAVE ) return; // Traemos el contenido actual (raw para evitar filtros) $current_content = get_post_field( 'post_content', $post_ID, 'raw' ); $title = get_the_title( $post_ID ); // Si ya tiene contenido útil o ya tiene shortcode, no hacemos nada if ( trim( $current_content ) !== '' && strpos( $current_content, '[ea_calc ' ) !== false ) { return; } // Slug base para la calculadora $slug = sanitize_title( $title ); // 1. Elegir plantilla según el título $calc_template = ea_calc_build_calc_template_from_title( $title, $slug ); // 2. Guardar la calculadora en /uploads/ea-calculators/slug.php ea_calc_ensure_dir(); $file_path = ea_calc_file_path( $slug ); @file_put_contents( $file_path, $calc_template['calculator_code'] ); // 3. Generar el cuerpo del post con intro SEO + shortcode + secciones $new_body = ''; $new_body .= '
' . esc_html( $calc_template['intro_p1'] ) . '
'; $new_body .= '' . esc_html( $calc_template['intro_p2'] ) . '
'; $new_body .= "\n\n" . '[ea_calc slug="'.esc_attr($slug).'"]' . "\n\n"; $new_body .= $calc_template['extra_sections_html']; // ya viene con HTML seguro // 4. Actualizar el post UNA sola vez remove_action( 'save_post', 'ea_calc_autogenerate_if_empty', 20 ); wp_update_post( array( 'ID' => $post_ID, 'post_content' => $new_body, ) ); add_action( 'save_post', 'ea_calc_autogenerate_if_empty', 20, 3 ); } /** * Construye: * - código HTML+CSS+JS limpio de la calculadora * - texto introductorio SEO * - secciones extra (tabla, fórmulas, ejemplos) * según el título. */ function ea_calc_build_calc_template_from_title( $title, $slug ) { $t_lower = strtolower( $title ); // Caso especial reconocido: "kva" y "kw" if ( strpos($t_lower, 'kva') !== false && strpos($t_lower, 'kw') !== false ) { // ---------- Calculadora kVA -> kW ---------- // Fórmula real: kW = kVA × FP $calculator_code = 'Fórmula básica:
kW = kVA × FP
Sustitución actual:
kW = - ×
- =
- kW
Nota: esta conversión asume carga equilibrada y FP constante.
Fórmula principal: kW = kVA × FP
Donde FP (factor de potencia) normalmente está entre 0.8 y 0.95 en motores industriales. Un FP bajo significa más potencia aparente para la misma potencia real.
| kVA | FP | kW |
|---|---|---|
| 10 | 0.80 | 8.0 |
| 25 | 0.85 | 21.25 |
| 50 | 0.90 | 45.0 |
| 75 | 0.95 | 71.25 |
| 100 | 0.80 | 80.0 |
Supongamos una carga de 75 kVA con FP 0.85. La potencia activa será:
kW = 75 × 0.85 = 63.75 kW.
Este valor es el que realmente factura la empresa en energía activa y el que usas para estimar capacidad térmica del conductor, selección de transformador y dimensionamiento de generador.
1. Ingresa dos valores numéricos.
2. Pulsa “Calcular”.
3. Copia el resultado si lo deseas.