Crear el feed de datos para Google Merchant Center en PHP y MySQL

¿Tienes una tienda online y necesitas crear el feed de datos para Google Merchant Center? Aquí comparto un pequeño script en PHP y MySQL para generar un archivo TXT válido.

El código en cuestión es el siguiente:

[php]
error_reporting (0);

$direccion_servidor="";
$usuario_bd="";
$clave_bd="";
$base_datos="";

$db=mysql_connect($direccion_servidor,$usuario_bd,$clave_bd); mysql_select_db($base_datos,$db);
mysql_set_charset("utf8");

$fp=fopen(‘inventario.txt’, ‘w’);
fwrite($fp, "id \t title \t description \t link \t image link \t condition \t availability \t price \t shipping \t identifier exists \n" .PHP_EOL);
$sql="SELECT * FROM `productos`";
$result=mysql_query($sql);
while($row=mysql_fetch_array($result)){
$id=$row["id"];
$title=$row["nombre"];
$descripcion=$row["descripcion"];
$link=$row["url"];
$image_link=$row["url_imagen"];
$condition=$row["condicion"];
$stock=$row["stock"];
$price=$row["precio"].’ EUR’;
$gastos_envio=$row["gastos_envio"];
$shipping="ES:::$gastos_envio EUR";
if ($price>0 && !empty($title) && !empty($descripcion) && !empty($image_link)){
fwrite($fp, "$id \t $title \t $descripcion \t $link \t $image_link \t $condition \t $stock \t $price \t $shipping \t FALSE \n" .PHP_EOL);
}
unset ($id); unset ($title); unset ($descripcion); unset ($link); unset ($image_link); unset ($condition); unset ($stock); unset ($price); unset ($gastos_envio); unset ($shipping);
}

fclose($fp);
[/php]

Este es un ejemplo muy sencillo de cómo crear el feed de datos para Google Merchant Center. En él solo se envían los datos básicos del productos (suficientes para campañas Shopping con Google AdWords) y todos los productos se declaran sin identificador (por lo que no tenemos que enviar ni marca, ni gtin ni mpn).

Si necesitas enviar más datos puedes consultarlos en la documentación oficial de Google Merchant Center.

Como podrás imaginar, este es un caso «feliz» en el que todos los datos se obtienen directamente de la tabla «productos». Lo más habitual es que te toque tener que acomodar los datos para dar valor a las variables: $id, $title, $descripcion, $link, $image_link, $condition, $stock, $price y $shipping.

Por último, una vez que tengas configurado el script, te recomiendo que lo ejecutes automáticamente cada 24 horas mediante un cronjob y que elijas la opción «Recuperación programada» en el método de introducción en Google Merchant Center para mantener el inventario actualizado.

Si tienes cualquier pregunta o sugerencia no dudes en dejar un comentario.

Daniel:
Related Post