Actualizar el código de la búsqueda personalizada de Google.

Started by rapalero, October 09, 2016, 06:54:57 AM

Previous topic - Next topic

rapalero

Hola compañeros.

Tengo la búsqueda personalizada puesta en mi foro http://www.rapaleando.com/foros pero Google dice que es mejor cambiar el código y poner uno nuevo ya que el anterior hace que la página cargue más lenta. Otro "problema" menor que tengo es que en el móvil actualmente no se ve del todo la parte derecha del recuadro de búsqueda actual. Creo que poniendo nuevo código se seleccionará.

Pongo parte del código actual:


if (!empty($modSettings['enableOpenID']))
echo '
<br /><input type="text" name="openid_identifier" id="openid_url" size="25" class="input_text openid_login" />';

echo '
<input type="hidden" name="hash_passwrd" value="" />
</form>';
}

echo '
</div>



<form action="http://www.google.es" id="cse-search-box" target="_blank">
   <div style="text-align:right">
    <input type="hidden" name="cx" value="partner-pub-3086315905437725:3150837496" />
    <input type="hidden" name="ie" value="UTF-8" />
    <input type="text" name="q" size="70" />
    <input type="submit" name="sa" value="Buscar" />
  </div>
</form>
<script type="text/javascript" src="http://www.google.es/coop/cse/brand?form=cse-search-box&amp;lang=es"></script>
<input type="hidden" name="brd[', $context['current_board'], ']" value="', $context['current_board'], '" />';

echo '</form>';


// Show a random news item? (or you could pick one from news_lines...)
if (!empty($settings['enable_news']))
echo '
<br/><br/><br/><br/>', $txt['news'], ':
<p>', $context['random_news_line'], '</p>';



y el código que debo poner es




<script>
  (function() {
    var cx = 'partner-pub-3086315905437725:3150837496';
    var gcse = document.createElement('script');
    gcse.type = 'text/javascript';
    gcse.async = true;
    gcse.src = 'https://cse.google.com/cse.js?cx=' + cx;
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(gcse, s);
  })();
</script>
<gcse:searchbox-only></gcse:searchbox-only>




No lo logro ya que no se mucho de código y el formato de los 2 es diferente.

¿Alguien me ayuda?

¡Gracias!

d3vcho

¡Hola!

Sólo debes sustituir la línea de <script> del primer código, por el segundo.

Code (Buscar) Select
<script type="text/javascript" src="http://www.google.es/coop/cse/brand?form=cse-search-box&amp;lang=es"></script>

Y reemplazarlo por:
Code (Reemplazar por) Select

<script>
  (function() {
    var cx = 'partner-pub-3086315905437725:3150837496';
    var gcse = document.createElement('script');
    gcse.type = 'text/javascript';
    gcse.async = true;
    gcse.src = 'https://cse.google.com/cse.js?cx=' + cx;
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(gcse, s);
  })();
</script>
<gcse:searchbox-only></gcse:searchbox-only>


Por lo que quedaría así:

if (!empty($modSettings['enableOpenID']))
echo '
<br /><input type="text" name="openid_identifier" id="openid_url" size="25" class="input_text openid_login" />';

echo '
<input type="hidden" name="hash_passwrd" value="" />
</form>';
}

echo '
</div>



<form action="http://www.google.es" id="cse-search-box" target="_blank">
   <div style="text-align:right">
    <input type="hidden" name="cx" value="partner-pub-3086315905437725:3150837496" />
    <input type="hidden" name="ie" value="UTF-8" />
    <input type="text" name="q" size="70" />
    <input type="submit" name="sa" value="Buscar" />
  </div>
</form>
<script>
  (function() {
    var cx = 'partner-pub-3086315905437725:3150837496';
    var gcse = document.createElement('script');
    gcse.type = 'text/javascript';
    gcse.async = true;
    gcse.src = 'https://cse.google.com/cse.js?cx=' + cx;
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(gcse, s);
  })();
</script>
<gcse:searchbox-only></gcse:searchbox-only>
<input type="hidden" name="brd[', $context['current_board'], ']" value="', $context['current_board'], '" />';

echo '</form>';


// Show a random news item? (or you could pick one from news_lines...)
if (!empty($settings['enable_news']))
echo '
<br/><br/><br/><br/>', $txt['news'], ':
<p>', $context['random_news_line'], '</p>';


NOTA: Recuerda hacer una copia de seguridad del archivo que estás editando para evitar futuros problemas.

Saludos :)
"Greeting Death as an old friend, they departed this life as equals"

rapalero

Como dices funciona pero queda con 2 líneas que hablan del partner-pub, y si el target lo cambio a "top" da fallo.

¿Seguro que hay que dejar el código más largo? Eso me sorprende ya que Google dice que con el nuevo código la web irá más rápida

d3vcho

Por unas cuantas líneas más de código no se tiene que ralentizar notablemente una web. Eso sólo pasa cuando son muchas líneas de código más.

Si tienes dudas con respecto al código quizás deberías buscar soporte en los foros de Google, seguro que te responden mucho mejor.

Saludos :)
"Greeting Death as an old friend, they departed this life as equals"

rapalero

He preguntado en el foro en español de Google Webmasters. Os contaré.

Advertisement: