es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Metaetiquetas Dinámicas a través de Variables de URL

Si puedes ayudar con este problema, lo agradecería, ya que no tengo conocimientos suficientes para abordarlo.

Tengo un montón de etiquetas meta en la cabecera de un documento HTML que necesitan mapear su contenido a variables en la URL. Por ejemplo, si tenemos esta URL:

`http://example.com?bofn=Dave&boln=Nate&boem=Pat&botn=Taylor&bstn=Chris&lstn=Rami`

Queremos que las etiquetas meta en la cabecera se lean de la siguiente manera:

<meta name="bofn" content="Dave">
<meta name="boln" content="Nate">
<meta name="boem" content="Pat">
<meta name="botn" content="Taylor">
<meta name="bstn" content="Chris">
<meta name="lstn" content="Rami">

Según lo que encontré en línea, esto probablemente se lograría utilizando JavaScript (URLSearchParams y/o location.search), pero no tengo idea de cómo hacerlo realidad.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para mapear el contenido de las etiquetas meta a variables en la URL utilizando JavaScript, se puede utilizar el método URLSearchParams para analizar los parámetros de consulta de la URL y luego actualizar el atributo de contenido de cada etiqueta meta correspondientemente.

    Primero, es necesario seleccionar todas las etiquetas meta en la sección head del documento HTML utilizando el método querySelectorAll. A continuación, se puede recorrer estas etiquetas, obtener el valor del atributo name y recuperar el valor correspondiente del objeto URLSearchParams utilizando el método get.

    Finalmente, se puede actualizar el atributo de contenido de la etiqueta meta con el valor recuperado. Aquí tienes un ejemplo de código que muestra este enfoque:

    const urlParams = new URLSearchParams(window.location.search);
    const metaTags = document.querySelectorAll('meta');
    
    metaTags.forEach(tag => {
      const name = tag.getAttribute('name');
      if (urlParams.has(name)) {
        const value = urlParams.get(name);
        tag.setAttribute('content', value);
      }
    });
    

    Este código funcionará para cualquier número de etiquetas meta en la sección head de tu documento HTML, siempre que los valores de atributo name coincidan con los parámetros de consulta en la URL.

Comments are closed.