Blogger Store: Opción página para comprobación y solicitud de pedido con formulario | Oloblogger A continuación explicaré cómo cambiar el funcionamiento de los botones que aparecen originalmente en el carro y que pasan los datos a PayPal...

28 de mayo de 2015

Blogger Store: Opción página para comprobación y solicitud de pedido con formulario

A continuación explicaré cómo cambiar el funcionamiento de los botones que aparecen originalmente en el carro y que pasan los datos a PayPal o remiten un pedido por correo electrónico tras indicarnos el comprador su dirección de email. Tras el cambio, esos botones nos llevarán primero a una una página estática intermedia que mostrará un resumen de los artículos seleccionados y desde la que se podrá hacer la petición definitiva.

También modificaremos el script para adicionalmente poder montar en esa página un formulario que pedirá más datos y que así nos llegue todo lo necesario de primeras, evitando tener que volver a contactar de nuevo con el comprador para pedirle dirección, teléfono, etc.

En la demo de la plantilla podéis ver un ejemplo de todo esto.

Resumen pedido

Aunque didácticamente quizás no sea lo más adecuado, voy a describiros las modificaciones que tenéis que hacer, en un orden que permitirá que vuestra tienda esté fuera de servicio el menor tiempo posible aunque os atranquéis. Apenas un par de minutos que es lo que se tarda en hacer el último y definitivo paso.

Configurar el contenido de la página estática


Lo primero sería crear una página estática con un título adecuado; "Compruebe su pedido", "Realizar pedido", "Enviar carro" o cualquier otro que se os ocurra. Doy por supuesto que todos sabéis acceder al escritorio y crear una, pero por si acaso, aquí una captura autoexplicativa.


Parte HTML


En esta página habrá que incluir varias cosas y como parte de ellas será código HTML, mejor hacerlo todo desde la pestaña HTML del editor.

Por comodidad para futuros mantenimientos, empezamos con la parte dónde se cargarán los artículos que en ese momento figuran en el carro. Es el mismo sistema que usábamos desde plantilla, pero incluyendo estas cajas con esas clases concretas en la página haremos que salgan directamente en su cuerpo y no en la cesta de la parte superior.

En el carro: <span class="simpleCart_quantity"></span> item(s)
<br/>
<br/>
Precio total: <span class="simpleCart_total"></span> + <span class="simpleCart_shippingCost"></span> de gastos de envío
<br />
<div class="simpleCart_items"></div>
<div class="clear"></div>
<div align="center">
(<span style="color: #cc0000;">*</span>) Dato requerido

A continuación iría una tabla con todos los datos que queremos solicitar (formulario) y unos avisos sobre los que serán obligatorios. Importante respetar los nombres e identificadores usados para los input porque luego tendremos que usar exactamente los mismos cuando modifiquemos el JavaScript.

<br />
<br />
<table>
<tbody>
<tr><td>Nombre (<span style="color: #cc0000;">*</span>): </td><td><input id="nombre" name="nombre" style="width: 400px;" type="text" value="" /></td></tr>
<tr><td><br /></td></tr>
<tr><td>Teléfono (<span style="color: #cc0000;">*</span>): </td><td><input id="telefono" name="telefono" style="width: 120px;" type="text" value="" /></td></tr>
<tr><td><br /></td></tr>
<tr><td>e-Mail (<span style="color: #cc0000;">*</span>): </td><td><input id="remite" name="remite" style="width: 400px;" type="text" value="" /></td></tr>
<tr><td><br /></td></tr>
<tr><td>Dirección: </td><td><input id="direccion" name="direccion" style="width: 400px;" type="text" value="" /></td></tr>
<tr><td><br /></td></tr>
<tr><td>Cód.Postal: </td><td><input id="codigo" name="codigo" style="width: 70px;" type="text" value="" /> Ciudad: <input id="ciudad" name="ciudad" style="width: 150px;" type="text" value="" /></td></tr>
<tr><td><br /></td></tr>
<tr><td>Provincia: </td><td><input id="provincia" name="provincia" style="width: 150px;" type="text" value="" /> País: <input id="pais" name="pais" style="width: 150px;" type="text" value="" /></td></tr>
<tr><td><br /></td></tr>
<tr><td>Observaciones: </td><td><input id="observaciones" name="observaciones" style="width: 400px;" type="text" value="" /></td></tr>
</tbody></table>
<br />
<div id="error" style="color: #cc0000;"></div>
<span style="font-size: x-small;"><b><span style="color: red;">* Los datos requeridos son necesarios para que la empresa de reparto pueda contactar con usted </span></b></span>

Terminando ya con la parte HTML, añadimos los botones que permitirán el envío definitivo del pedido indicando adicionalmente la forma de pago, así como otro que irá directamente a PayPal. No guardamos todavía porque aún hay más cosas que añadir.

<hr />
<h4>
Confirme el pedido eligiendo la forma de pago</h4>
<br />
<br />
<a class="simpleCart_email" href="javascript:void();" onclick="formapago = 'Transferencia'; simpleCart.emailCheckout();">Transferencia</a>
<br />
<br />
<a class="simpleCart_email" href="javascript:void();" onclick="formapago = 'Contra-reembolso'; simpleCart.emailCheckout();">Contra-reembolso<span style="color: red;">*</span></a>
<br />
<br />
<a class="simpleCart_checkout" href="javascript:void();">Paypal</a><br />
<br />
</div>

Llamadas al script


Como dije, seguimos en la edición de la página. Ahora llega el turno de la utilidad de SimpleCart que hace que se muestren los datos referentes a todos y cada uno de los artículos escogidos por el cliente y añadidos al carro. Es esta que veis a continuación y que llama a la función cartHeaders.

<script type="text/javascript">simpleCart.cartHeaders = ['thumb_image','Quantity_input','increment','decrement','name','size','Total'];</script>

Las palabras clave que hay entre los corchetes hacen que se muestre para cada artículo -respectivamente en este mismo orden- la miniatura, la cantidad solicitada, los botones de incremento/decremento de cantidad, el nombre del artículo, la talla (para el caso de que la hubiéramos usado) y el precio parcial que corresponde al montante de cada artículo.

Evidentemente en esta parte si podéis modificar, añadir o eliminar los datos que creáis necesarios de entre los que estéis usando en vuestra tienda.


CSS especial para la página


Esto lo podríamos poner en la plantilla pero como sólo sirve para esta página, lo haremos sobre ella y así nos ahorramos tener que usar condiciones. También nos permitirá desmontar todo fácilmente si alguna vez queremos volver a lo original.

Lo que principalmente hace es ocultar el carro original para evitar problemas, tabular un poco los datos de los artículos y dar estilo a los botones, entre otras cosas menores.

<style>.cartHeaders, .add a {display:none;}
#menu-wrapper .menu-cart {font-size:12px;}
.menu-cart {position: relative;font-size:16px;}
.menu-cart .bag {height:0; width:0; padding:0; overflow:hidden;}
.itemContainer {display: block;height: 105px;}
.itemQuantity, .itemname, .itemTotal, .itemsize, .itemthumb, .itemincrement, .itemdecrement {display:inline-block; *display:inline;zoom:1; padding:5px;line-height: 70px;vertical-align: middle;}
div.itemname {width: 260px;overflow: hidden;}
.itemsize { padding:0;}
.itemthumb img {width: 70px;height: 70px;float: left;padding: 5px;}
.itemTotal {width:70px; display:inline-block; text-align:right; }
.itemincrement, .itemdecrement {display: inline-block;*display:inline;zoom:1;padding: 0;height: 22px;}
div.simpleCart_items {background: #fefefe;padding: 5px 5px 0;}
.simpleCart_items .itemincrement a, .simpleCart_items .itemdecrement a {display: block;width: 20px;height: 20px;font-size: 20px;line-height: 20px;font-weight:bold;overflow: hidden;margin-bottom: -6px;border: 1px solid #ccc;background: white;text-align: center;}
.itemQuantity input[type="text"] {width: 20px;}
a.botonnar {font-size: 14px;}
a.simpleCart_empty, a.simpleCart_checkout, a.simpleCart_email {background:url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjYiPmM6N9I-UVGTTiB4U-Pb7kSRjDITa6UtN-8m9c5nFAACIOJWQb13MUy-ixRg-hSKQLtLWSkZ5JTefFLrn9aRzey29yz0CQuslQry-1rcW39mBE7N3_BfbQnjSMIkoK0aC11sQCkxlA/s1600/fade.png) repeat-x top left;color:#fff;font-size:14px;text-transform:uppercase;font-weight:700;border-radius:3px;margin-right:10px;padding:3px 8px;-moz-text-shadow:none;-webkit-text-shadow:none;-ms-text-shadow:none;text-shadow:none;}
a.simpleCart_empty:hover, a.simpleCart_checkout:hover, a.simpleCart_email:hover {background-image:url(https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgq2qx5ETlCYF-NIWiI03ttv-6Y8-bV6hj5R-2DMnquRgndjs_4c23czjxZqTXazXsG_0GI0qwunsB6_UNs5mwGw2FGAI9hWmrXjKRUhE9bC-MddskalwSutmoCNr6pgTnrAmPIxHgXrDU/h1600/fade-hover.png);}
a.simpleCart_empty {background-color:#ef9007;border:1px solid #c77f18;}
a.simpleCart_checkout, a.simpleCart_email {background-color:#8bbd13;border:1px solid #7aa514;}</style>

Ahora sí que podemos guardar la página. Si antes de seguir queremos comprobar que funciona bien y que todo se ve como queremos, sólo hay que simular una compra añadiendo unos cuantos productos al carro y luego visitar la página recién creada.

Como de momento no disponemos de ningún enlace o botón para acceder a ella, lo más rápido será que después de añadir esos artículos de prueba, desde ese mismo apartado Páginas del Escritorio, pasemos el puntero por encima del título de la página y pinchemos en el enlace que saldrá.


Modificar SimpleCart.js


Ahora toca acceder a nuestro fichero simplecart.js y modificarlo. En primer lugar necesitamos la dirección de nuestro fichero .php, aquel que en su momento creamos para añadir la funcionalidad de pedidos por email con SimpleCart. La anotamos y reservamos, como en las recetas de cocina.

Da igual que SimpleCart.js lo hubiéramos modificado previamente o no, porque lo vamos a reconstruir casi por completo. Lo que hay que borrar es todo lo que está entre las líneas que he marcado en color gris:

...
document.body.removeChild( form );
};

me.emailCheckout = function() {
...
me.customCheckout = function() {
return;
};

/******************************************************
data storage and retrival
******************************************************/
...

De esta manera habremos borrado todas las líneas de la función emailCheckout. Ahora las sustituimos por estas que pongo a continuación.

me.emailCheckout = function() {
var remite = document.getElementById("remite").value;
var nombre = document.getElementById("nombre").value;
var telefono = document.getElementById("telefono").value;
var direccion = document.getElementById("direccion").value;
var direccion = document.getElementById("direccion").value;
var codigo = document.getElementById("codigo").value;
var ciudad = document.getElementById("ciudad").value;
var provincia = document.getElementById("provincia").value;
var pais = document.getElementById("pais").value;
var observaciones = document.getElementById("observaciones").value;

if (remite != '' && remite != null && nombre != '' && nombre != null && telefono != '' && telefono != null) {
itemsString = "";
esubtotal = 0;
egastos = 0;
etotal = 0;
for( var current in this.items ){
var item = this.items[current];
esubtotal = item.quantity * item.price;
itemsString += item.name;
if (item.size) itemsString += " " + item.size + "\n";
itemsString += item.quantity + " x " + item.price + " = " + String(esubtotal) + " " + me.currency + "\n";
etotal += esubtotal;
};
itemsString += "\nSubtotal = " + etotal + " " + me.currency +"\n";
var gastos = me.shippingCost;
if (formapago == "Contra-reembolso") {
gastos += 8;
etotal += 8;
}
if (gastos){
itemsString += "Gastos de envio = " + gastos + " " + me.currency +"\n";
etotal += me.shippingCost;
} else {itemsString += "Gastos de envio = GRATIS\n";}
itemsString +="\nTOTAL: " + String(etotal) + me.currency + "\n\n" + "Remitente: " + remite;
itemsString +="\n\nNOMBRE: " + nombre + "\nTelefono: " + telefono;
itemsString +="\nDIRECCION: " + direccion;
itemsString +="\nCIUDAD/PAIS: " + codigo + " " + ciudad + " - " + provincia + " (" + pais + ")";
itemsString +="\n\nOBSERVACIONES: " + observaciones;
itemsString +="\n\nFORMA DE PAGO: " + formapago;


var form = document.createElement("form");
form.style.display = "none";
form.method = "POST";
form.action = "http://loquesea.com/email.php";
form.acceptCharset = "utf-8";
form.appendChild(this.createHiddenElement("jcitems", itemsString));
form.appendChild(this.createHiddenElement("jcremite", remite));

document.body.appendChild(form);
me.empty();
form.submit();
document.body.removeChild(form);
if (p == null || p=='');

}
else {
var error = document.getElementById("error");
var mensaje = "<b>Nombre, teléfono y email son imprescindibles para poder contactar con Vd.</b>";
error.innerHTML = mensaje;
}

return;
};
me.customCheckout = function() {
return;
};

Antes de guardar los cambios tendremos que sustituir la dirección que marqué en verde tras form.action (http://loquesea.com/email.php) por vuestra propia dirección, esa que os dije que reservaráis al principio de este apartado.


Una vez hecho ahora sí guardamos los cambios. Si vuestro hosting os cambia la dirección de alojamiento (por ejemplo http://yourjavascript.com lo hace) tendréis que tomar nota de esa nueva dirección de SimpleCart y nada más empezar el siguiente paso, cambiar la actual por la nueva en la plantilla.


Modificaciones en la plantilla


Aparte del posible cambio anterior referente a la dirección de simplecart.js, aquí ya no tendremos que hacer casi nada más, apenas cambiar los destinos de los botones que siguen apareciendo en el carro para que en lugar de ir a PayPal o directamente hacer el pedido por email, apunten a la página que hemos creado para todo esto.

El HTML que tenemos que modificar es fácil de localizar porque tiene un comentario que reza <!--//end of .menu-cart-->. Justo antes de él está lo necesario para construir el carro desplegable y los botones antes citados. Ahora tendrá que quedar justo así:

<div class='menu-cart'>
<a class='mycart' href='#'>En el carro : <span class='simpleCart_quantity'></span> Articulo(s)</a>
Precio total : <span class='simpleCart_total'></span>
+ Gastos: <span class='simpleCart_shippingCost'></span>
<div class='bag'>
<div class='simpleCart_items'></div>
<div class='clear'></div>
<a class='simpleCart_empty' href='javascript:;'>Vaciar carro</a>
<!-- ANULAMOS BOTON PAYPAL <a class='simpleCart_checkout' href='javascript:;'>Pedido prepago</a> -->
<a class='simpleCart_email' href='http://midominio.com/p/enviar-tu-pedido.html'>Pedido</a>
</div>
</div>
<!--//end of .menu-cart-->

Una vez sustituido el anterior código por este ya sólo restará cambiar la dirección que marqué de color por la de la página que construisteis en el primer paso. Una vez hecho ya podéis guardar los cambios.


Espero que todo os funcione bien a la primera pero si no os habéis saltado nada, estoy casi seguro de que será así.


Noviembre 2015
Los comentarios de todas estas entradas han sido cerrados por su excesiva extensión y porque en los existentes se ha contestado ya a las dudas más comunes que han ido surgiendo durante más de tres años.

¿Vemos otro post al azar por si le encuentras utilidad o quizás prefieres ser más metódico y suscribirte a nuestras entradas por correo? También puedes imprimir este artículo y por supuesto compartirlo en redes sociales si fue de tu agrado.

Compartir
Copy URL

Y muchos más artículos interesantes si nos sigues en...

follow us in feedly

71 comentarios :

  1. Hola, no se en que estoy fallando, coloque el dominio del php en en lugar donde indicas, pero al momento de dar comprar sigue saliendo "http://singenio.com/email.php" y no se redirige a mi email. :(

    ResponderEliminar
    Respuestas
    1. Esa dirección la has de poner en TU fichero simplecart.js, según explico en el apartado de cómo modificar ese fichero, pero evidentemente, el fichero de simplecart.js también debe ser cargado desde tu plantilla en lugar del fichero demo que viene.
      Todo esto viene de otras entradas anteriores, así que aquí sólo expliqué cómo realizar esta modificación, a partir de lo anterior.

      Eliminar
  2. Ésto nos puede servir para lo que ya sabes Oloman ;)

    ResponderEliminar
    Respuestas
    1. Sí, quizás sea otra plantilla interesante, pero habría que cambiarla bastante pues ya me cansé de la estética de esta :)

      Eliminar
  3. Añadí productos al carro y al pasarlos a 'pedido por email' no me aparecieron los items. Parece que no funciona amigo, saludos!

    ResponderEliminar
    Respuestas
    1. ¿Dónde te paso eso? En la demo no creo, porque ese botón de "pedido por email" ya no existe

      Eliminar
  4. que tal , lo hice como dijiste pero , no me desactiva el carrito de compras original , al confirmar el pedido los productos salen en el carro original y no en el que se construyo en la nueva pagina, a que se debe esto, gracias. paso enlace de prueba http://mesasdeexploracion.blogspot.mx/

    ResponderEliminar
    Respuestas
    1. Pues a priori no veo motivo, pero puede ser porque en tu plantilla se conserva el carrito de compras siempre visible en la barra lateral.
      Prueba a anularlo cuando se accede a la página de comprobación, encerrando la barra lateral con una condición como esta:
      <b:if cond='data:blog.url == &quot;http://mesasdeexploracion.blogspot.mx/p/compruebe-su-pedido.html&quot;'>
      CONTENIDO SIDEBAR
      </b:if>

      Eliminar
    2. muchas gracias por la informacion pero no pude lograrlo ya que no se donde pegar la condicion que me indicas, lo hice en la pagina de compruebe su pedido pero no sucedio nada.

      Eliminar
    3. No Eduardo, eso hay que incluirlo en la plantilla, buscando la parte que construye la barra lateral (sidebar) y poniendo alrededor la condición, pero si no eres muy ducho con eso, mejor que no arriesgues.

      Eliminar
  5. ya e conseguido subir el email.php a 000webhost y me funciona bien aparte de las otras consultas, como hago para que rellenen el formulario y paguen directamente por paypal y me llegue el correo de mi web por si la direccion de paypal del usuario estuviera desactualizada que me la pusiera bien en el formulario, como hago pa recibir el formulario en mi correo pagando por paypal saludos y es q cada vez avanzo mas pero sigo teniendo todas esas dudas Oloman a ver si me puedes ayudar saludos desde tarragona,!!

    ResponderEliminar
    Respuestas
    1. Eso es algo que no sé hacer Topoyiyo. O vamos a PayPal o se envía un correo. No sabría cómo hacer que después de pagar se envíe un formulario.

      Eliminar
  6. Buenos días:
    Lo primero es felicitarte y agradecer los esfuerzos para conseguir resolver todas las preguntas.

    He intentado leerme todos los comentarios por si a alguien le pasaba lo mismo que yo, pero no lo he conseguido.

    Necesitaria saber porque en mi carrito me suma bien las cantidades, pero pone la coma decimal entre la primera y segunda cifra, es decir, si pongo un articulo de 39€, me pone €3,900.00.
    Mi blog es http://okarinatienda.blogspot.com.es/

    Se que el error estará en el .js pero no lo encuentro.
    Por cierto, despues de mucha pelea, he conseguido que funcione lo del envio por mail. He alojado el .js en dropbox (que ya no tiene carpeta publica pero cambiando las www por dl y borrando lo del final, lo que hay despues de .js, funciona). El php lo he alojado en 000webhost.

    ResponderEliminar
    Respuestas
    1. Maropaes, el sistema de notación que usa el script es el norteamericano, con puntos para separar los decimales en lugar de comas. Tú pones los precios como 39,000 y por eso se ve que la cosa no pita bien. Prueba con 39.00

      Eliminar
    2. Buenos días:
      Muchas Gracias, me estaba volviendo loca con esa tontería. Tanto cambiar código....

      Un Saludo,
      Marisa

      Eliminar
    3. Maropaes: Buenos dias
      yo logre alojar el Js en http://yourjavascript.com
      el PHP en 000webhost
      me manda el mensaje Su pedido ha sido enviado.
      Nos pondremos en contacto con Vd. mediante el correo facilitado:

      pero no me llega el mensaje

      ayudame por favor, creo que algun error esta en el archivo php o en el Js

      Eliminar
  7. Hola oloman, de nuevo, como podria hacer para que se pudieran pedir mas de 4 pedidos es que solo deja 3 y a veces 4, ley algo por los comentarios pero no me acuerdo como se podria pedir infefinidamente? eso y como se podria dar a pagar por paypal y me llegue el formulario en vede contra reembolso, por que hasta ahora solo he podido enviar el formulario contra reembolso saludos, !!!

    ResponderEliminar
    Respuestas
    1. No hay límite para pedidos Topoyiyo, pero pudiera ser que el servidor dónde alojaste el .js o el .php, sea de peticiones limitadas y que a partir de ciertas visitas te deje de funcionar. Es el inconveniente de usar sistemas gratuitos.

      Sobre lo segundo ya te contesté en otro comentario anterior... no sé hacerlo.

      Eliminar
  8. Gracias oloman por responder, me referia a numero de productos solo me deja escojer a veces 3 a veces 4 maximo en la pagina y luego hacer el pedido por paypal, si escojo 5 productos y le doy a pagar por paypal me sale este error :
    Bad Request
    Your browser sent a request that this server could not understand.

    Reference #7.4e081002.1439129834.0
    crees que sera por donde tengo alojado tambien el simplecart en dropbox? saludos! y gracias por responder!

    ResponderEliminar
  9. lo he cambiado el simplecart.js a 000webhost y me pasa igual no se de que puede ser... :(

    ResponderEliminar
  10. el blog es http://complementosparapconline.blogspot.com.es tengo puesto un precio de los productos para que nadie compre por que aun no la tengo abierta por eso los productos estan tan caros xD

    ResponderEliminar
    Respuestas
    1. No sé Topoyiyo. Utilizas una versión no actualizada y podría ser cualquier cosa.
      Prueba primero con el apartado "Productos que desaparece..." de este enlace o como segunda opción, instalando la plantilla que yo actualicé y que puedes encontrar en el último enlace del final de este mismo artículo.Ya sabes que esto segundo eliminará la que tienes actualmente, así que haz una copia de seguridad primero por si tienes que volver.

      Eliminar
  11. por cierto como se podrian poner 2 o 3 imagenes en la pagina de un producto para que fueran pasandolas saludos!

    ResponderEliminar
    Respuestas
    1. Para eso tendrás que buscar un slider. Hay muchos sistemas distintos, así que no te costará encontrarlo.

      Eliminar
  12. Hola, una pregunta como añades la opcion de mercado prepago arriaba del formulario?

    ResponderEliminar
    Respuestas
    1. Hola Alan. Supongo que te refieres a Mercado Pago ¿no? Si es así, una vez lo intenté pero no pude habilitarlo en Blogger.

      Eliminar
    2. Hola, no sabes si aun se puede, me interesa para mi blog. Gracias de antemano

      Eliminar
    3. No se si se puede Sarita. Yo desde luego no sabría cómo hacerlo a día de hoy.

      Eliminar
  13. Oloman, buenas tardes, muchas gracias por tu ayuda, pero aqui estoy de nuevo
    ya pase y repase todo el blog y nadamas no hago que me llegue el pedido por e mail
    ayudame por favor
    ya subi el archivo .js a dropbox, ya aloje el archivo php y nada
    seguire intentando y espero si alguien ya lo logro me puedan compartir informacion

    muchas gracias

    ResponderEliminar
    Respuestas
    1. Te acabo de contestar a lo mismo en otros post. Mejor concentra las preguntas sobre el mismo tema en el post que más trate sobre eso.

      El caso es que me tendrías que informar de un fallo o síntoma concreto para poderte ayudar, porque entre entradas y comentarios está prácticamente todo escrito.

      Eliminar
  14. asi es Olomam y muchas gracias por contestar, no encontre ya tu otra respuesta
    pero mi tema es simplemente que no logro alojar el archivo PHP para que me llegue el pedido a mi correo, y te pido una disculpa por preguntar varias veces, espero me puedas ayudar

    ResponderEliminar
    Respuestas
    1. Encontrar un alojamiento para PHP, gratuito y que funcione bien, es complicado. El que en todas las entradas anteriores he recomendado ha sido siempore 000Webhost, pero no por nada especial, sino porque hasta la fecha, a mí siempre me ha funcionado.

      Eliminar
    2. A mi me funcionó muy bien Hostinger (http://www.hostinger.es/)

      Eliminar
  15. Hola Oloman,,, primero felicitaciones por tu blog, es una gran ayuda, segundo quiero consultar algo.
    Tengo un problema con la plantilla, lo que pasa es que cree una nueva pagina dentro del blog y quiero poner unas imagenes de cabecera pero las imagenes que pongo siempre me salen con el mismo marco que tienen las imagenes en miniatura,, nose como modificar la plantilla para que al momento de insertar una nueva imagen esta salga con su tamaño original!!!! Gracias y saludos

    ResponderEliminar
    Respuestas
    1. Te contesté en el otro comentario anterior que escribiste sobre el mismo asunto

      Eliminar
    2. Este comentario ha sido eliminado por el autor.

      Eliminar
  16. Hola Oloman perdona que te moleste mucho!!! logre solucionar lo de las imágenes con un código css que pusiste en otro tema, gracias por eso, pero ahora surgió otro problema, y es que no me aparecen las vistas en miniatura, ni en el formulario de pedido, ni en el carro, revise el código y los tamaños coinciden, no se que mas puede alterar eso, ayuda porfa!!!!

    Gracias y Saludos

    ResponderEliminar
    Respuestas
    1. Wûrth, no puedo ayudarte si cada vez que entro en tu tienda me encuentro una cosa distinta...

      Eliminar
  17. Hola Oloman,gracias por ofrecernos tu inestimable ayuda a los que con escasos conocimientos vamos tirando en el montaje de nuestras páginas.
    Estoy construyendo un nuevo blog incluyendo la página estatica correspondiente al carro pero no consigo que me aparezca la imagen(.itemthumb)en su lugar aparece la URL.no soy capaz de encontrar que es lo que ha cambiado respecto a la plantilla antigua donde si aparecia la imagen.
    Saludos y felicitaciones por tu blog.

    ResponderEliminar
    Respuestas
    1. Hola. Para cargar los datos de los productos necesitas añadir a la página esa línea que indiqué que a su vez carga las cabeceras (simpleCart.cartHeaders). Las imágenes son concretamente el parámetro thumb_image

      Eliminar
  18. Tengo varias dudas, por mas que busco dentro del archivo js no encuentro lo que dices, no existen esas lineas por lo que no puedo poner ese codigo entre medio. He descargado nuevamente el archivo js varias veces y no existe.

    Luego el tema del php, dices, En primer lugar necesitamos la dirección de nuestro fichero .php, aquel que en su momento creamos para añadir la funcionalidad de pedidos por email. ¿Que significa en su momento? ¿en que momento creamos eso? No tengo ni idea de donde sacar esa direccion y por mas que busco no encuentro esa informacion.

    Muchas gracias por tu trabajo por cierto

    ResponderEliminar
    Respuestas
    1. Hola Manel. Estoy seguro de que "me.emailCheckout = function() {" figura con seguridad en el script que utilicé en todos estos tutoriales. Quizás tengas una versión más moderna de SimpleCart. Si consultas la serie de posts que figuran enlazados al final de la entrada, podrás comprobar si tienes el mismo fichero.

      Sobre el fichero PHP, también está explicado en posts anteriores y por eso no lo expliqué de nuevo.

      Lo mejor es que veas todas esas entradas anteriores para estar más dentro del contexto.

      Eliminar
  19. Hola! Disculpa que te moleste, ojala me puedas ayudar (en la solicitud de pedido con formulario)... En el momento de enviarlo sale una leyenda "su pedido ha sido enviado, nos pondremos en contacto con vd. mediante el correo facilitado.... Pero no llega ningun mensaje al correo del comprador, ni al correo del vendedor... El php es de byethost... Muchas gracias y felicidades por tu trabajo...

    ResponderEliminar
    Respuestas
    1. Hola. Últimamente algunos me han indicado lo mismo, así que seguramente byethost esté empezando a fallar. Habrá que buscar otro hosting que funcione bien para el PHP. No hay otra.

      Eliminar
  20. Hola! Muchisimas Gracias por tu ayuda y tus atenciones, probé con HOSTINGER y ya está funcionando perfectamente!!! saludos...

    ResponderEliminar
    Respuestas
    1. Bien, pues ya sabemos de uno que sí funciona. Gracias ;)

      Eliminar
  21. Oloman
    Gracias por todo tu trabajo, ya que pude armar un blog ami gusto para ventas simples, pero tengo unas dudas.
    Como puedo eliminar los decimales en los precios, y la sigla de la divisa en el envío mediante el formulario? Vivo en Chile y tanto los decimales como la divisa (que debí adoptar el paso mexicano) llevan a confusión.
    Te agradezco tu respuesta.
    Saludos

    ResponderEliminar
    Respuestas
    1. Ah! no ocupo PayPal, solo pago por transferencia, es decir, solo el formulario.
      Te agradezco tu respuesta de antemano

      Eliminar
    2. Hola Alexis. Anduve algo alejado del blog este mes...
      No veo decimales en un blog de prueba que tienes. Supongo que fue un tema que ya solucionaste. Mejor porque eso siempre me dió mucha guerra y nunca supe cómo solucionarlo bien.

      Eliminar
    3. Oloman, noooo, perdí la oportunidad de ayuda parece!!! el blog del que te hablo es joyaselyabarca.blogspot.com, e incluso en el de pruebas si está con decimales. Por ejemplo, necesito que el valor quede como $11.000 y no como $11,000.00 que es lo que aparece ahora por culpa de PayPal.
      Por otro lado, al hacer la solicitud via formulario aparece al lado del valor la sigla MXN de la divisa (que es la que estoy ocupando) y quisiera que tampoco apareciera eso, solo el valor en numeros.
      Podrás revisar de nuevo????

      http://joyaselyabarca.blogspot.com

      Eliminar
    4. Oloman, los decimales a los que me refiero, por si no me expliqué bien, son a los que estan desde el punto ($xxx.00), esos no me sirven ya que acá los valores son enteros. El valor monetario minimo aqui es $1
      Y en el formulario, al hacer el pedido, aparece el precio como $xxx.00MXN, y es todo lo que está despues del punto lo que quisiera eliminar.

      Eliminar
    5. Alexis, ya ni me acuerdo de cómo funcionaba todo este script. Piensa que ando con mil cosas a la vez y no soy capaz de recordar todo. Cerré los comentarios de todos los posts de SimpleCart precisamente por eso, porque ya no tengo fresco el código y no puedo andar repasándolo cada vez que me preguntáis cosas. Eso me ocupa demasiado tiempo.

      Esta fue mi última publicación sobre el tema y por eso dejé los comentarios, pero ya tiene casi un año. Si quieres soporte especial como es el caso, ya te tengo que remitir aquí.

      Eliminar
  22. Oloman, nuevamente estoy aqui, buscando tu ayuda. De un momento a otro, el blog dejó de mostrar las miniaturas de las imagenes, tanto en el view cart como en la página de Carro de Compras... He intentado varias posibles soluciones, incluso desinstalé un shadowbox que puse, pero no tiene nada que ver. Ayudame por favor en eso

    ResponderEliminar
    Respuestas
    1. Estimado Oloman, esta respuesta ya no es necesaria. Al final me di cuenta que el problema era el link de la foto desde Dropbox, asi que terminé haciendo lo que debí hacer desde un principio, y es subir las imagenes directo a Blogger. Ahora aparecen todas las fotos.

      Eliminar
    2. Así es. Subir las imágenes a Blogger SIEMPRE es lo más recomendable

      Eliminar
  23. no podrias hacer responsive esta pantilla?

    ResponderEliminar
    Respuestas
    1. La respuesta es sí, pero no dispongo de tiempo suficiente para poder hacer todo lo que me pedís. Lo siento.

      Eliminar
  24. Hola,
    Hace tiempo que creé una tienda online con esta plantilla y gracias a toda tu ayuda y esfuerzo. Los javascript de googlecode ya no existen y la tienda ha dejado de funcionar. Hay algun sitio de respaldo donde pueda encontrar el codigo para alojarlo en otro sitio?
    Muchas gracias

    ResponderEliminar
    Respuestas
    1. Hola Maria Angeles
      En la demo que monté, si ves el código fuente podrás encontrar todos los ficheros JS necesarios para que la plantilla funcione, alojados en Google Drive. También puedes ver -entre comentarios- otros alojamientos alternativos.

      view-source:http://oloblogger-bloggerstore.blogspot.com

      Eliminar
  25. Hola Oloman, excelente plantilla nos ha servido de mucho.
    Nos sucedió algo similar, alojamos los ficheros en otro sitio, todo funciona excelente,(cambiamos todo lo que habia que cambiar en los códigos) pero no nos están llegando los mails de los pedidos por mails, utilizamos una cuenta gmail intentamos con otras pero nada. sera que el email.php ya no esta enviando ?
    podrías ayudarnos :) super Oloman !!

    ResponderEliminar
    Respuestas
    1. solucionado, Hostinger es la solucion :)

      Eliminar
    2. Ah, pues perfecto. Los servidores gratuitos completos (que soporten PHP, por ejemplo) escasean.

      Eliminar
  26. Amigos, este blog nos ha sido de mucha ayuda :) y a modo de agradecimiento, les tenemos el siguiente regalo. Todos los amigos de Oloman que visiten nuestra tienda tendrán un 50% de descuento en el valor de cualquier producto.
    Sólo deben ingresar el código:" oloblogger.com "
    espero lo disfruten. Saludos.
    https://kamillustore.blogspot.com/

    ResponderEliminar
  27. Hola, es justo lo que necesito, una orden de pedido para servicios domicilio de mi ciudad, ya que lo manejaremos con un pago contraentrega.
    Necesito saber si para usar esta forma que explicas necesito descargar la planilla de la tienda virtual primero?
    Y también me gustaría saber cuál es el formato que debe tener el formulario ( en esa parte me perdí un poco) si me puedes ayudar le agradecería infinitamente. Gracias

    ResponderEliminar
    Respuestas
    1. Hola Yajaira. Este formulario es precisamente para SimpleCart.js y además adaptado a la plantilla que se explica en esta serie de entradas (Blogger Store). En consecuencia, si no sabes cómo adaptar esto a tu plantilla, la respuesta es que SÍ deberías descargarla. Por otra parte todos los posts enlazados con este forman una colección cuyo contenido sería imposible mejorar en ayuda a través de comentarios, así que te tengo que remitir a su lectura. Saludos

      Eliminar
  28. Buenas tardes Oloman. Quería preguntarte si has planteado alguna solución a la gestión de referencias sin stock.
    Estoy gestionando desde hace años la tienda de la editorial de un amigo (http://tiendapalabrasdelcandil.blogspot.com.es/) y se me plantea un problema que no sé cómo solucionar: de algunos libros ya no hay stock y no queremos que se puedan añadir a la cesta, sin embargo interesa no eliminarlos del listado para que se puedan consultar todos los títulos de las diferentes colecciones (insisto, aunque no tengan stock).
    Lo dicho, has pensado o desarrollado algo para que no se pueda añadir a la cesta una referencia sin stock??
    Muchísimas gracias por adelantado, haya o no solución sobre tu fantástica plantilla.

    ResponderEliminar
    Respuestas
    1. Hola Jose Luis. Pues sí que en una ocasión se me ocurrió algo para poner en el post que anulaba la posibilidad de pinchar en el Añadir, pero sinceramente ya no me acuerdo ni me viene a la cabeza ninguna idea genial. Como medida de emergencia podrías cambiar la imagen por una que llevara superpuesta la expresión "agotado" o similar, aunque eso no evitaría que el usuario pinchara y añadiera al carro, al menos ya se le está advirtiendo de primeras.

      Eliminar
    2. Muchas gracias por la respuesta Oloman!
      Esa solución era la que tomamos desde un principio, pero aún así ha habido clientes "cabezotas" que han intentado comprar libros agotados. Al final hemos decidido eliminarlos de la tienda para evitar males mayores. Como en la página de la editorial tenemos el catálogo completo, no nos rompía demasiado.
      Gracias por el interés anyway ;)

      Eliminar
  29. Hola, dos cosas:
    No leí que las monedas que se usan son limitadas, perdí mi tiempo.
    Los templates que bajé están en inglés y no me sirven, es muy latoso y se pierde mucho tiempo tratando de cambiar el idioma. Me funciona el template pero al pinchar en el carrito no pasa nada y ya me cansé :(

    ResponderEliminar