Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

92
Vistas
Mezclando variables JS y PHP

Estoy usando MediaWiki y busco tener una carga de etiqueta de Google Analytics diferente para cada wiki dependiendo del nombre de la base de datos. Sin embargo, tengo problemas para hacer esto, dado que la etiqueta GA usa JavaScript y la matriz/variable que estoy usando está en PHP.

Esto es lo que tengo hasta ahora (la clave correcta => el valor ya será elegido por el script anteriormente en función del nombre de la base de datos, por lo que no tengo que preocuparme por eso):

 $wgAnalyticsCode => [ 'wiki1' => '(code 1)', 'wiki2' => '(code 2)', 'wiki3' => '(code 3)' ]

y luego tengo el enlace que se ejecuta antes de que se cargue la página y agrega la etiqueta (que es una combinación de PHP/JavaScript:

 $wgHooks['BeforePageDisplay'][] = function( OutputPage &$out, Skin &$skin ) { $code = <<<HTML <!-- Global site tag (gtag.js) - Google Analytics --> <script async src="https://www.googletagmanager.com/gtag/js?id=CODEHERE"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'CODEHERE'); </script> HTML; $out->addHeadItem( 'gtag-insert', $code ); return true; };

No estoy completamente seguro de cómo obtener la etiqueta de la matriz de PHP en JavaScript. Por lo general, si fuera solo JavaScript, reemplazaría "CODEHERE" con $wgAnalyticsCode , pero obviamente no es tan fácil dado que la variable es PHP y el código es JavaScript.

¿Algún consejo sería apreciado?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

puede usar la palabra use para pasar su matriz a la función anónima

Ejemplo

 $wgHooks['BeforePageDisplay'][] = function (OutputPage &$out, Skin &$skin) use ($wgAnalyticsCode) {

después de eso, puede usar su matriz dentro del cuerpo de la función

espero que sea útil

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda