¿Por qué la dirección IP de un cliente no mostrar en órdenes a veces?
Pregunta
En el tablero de instrumentos: Sistema> Configuración> Ventas> Ventas ...
Tengo "Ocultar IP del cliente: No"
y significa esto los clientes IP se muestra en los pedidos y facturas, etc ...
Esto funciona en casi todos los órdenes, pero un par de órdenes simplemente no muestran una IP en absoluto. Esto es muy raro, y quizás a 1 de cada 100 pedidos no muestran una IP.
Bueno, lo que podría causar esto? Me preguntó por qué esto es, pero yo no tenía una respuesta, y ahora tengo curiosidad.
Gracias a todos.
Solución
Lo más probable es el pedido se hizo desde el back-end.
La dirección IP en el orden viene de la cita.
en app/code/core/Mage/Sales/etc/config.xml
no es lo siguiente:
<config>
...
<global>
...
<fieldsets>
...
<sales_convert_quote>
<remote_ip>
<to_order>*</to_order>
</remote_ip>
...
</sales_convert_quote>
...
</fieldsets>
...
</global>
...
</config>
La dirección IP en la cita se encuentra en Mage_Checkout_Model_Session::getQuote()
if ($remoteAddr = Mage::helper('core/http')->getRemoteAddr()) {
$this->_quote->setRemoteIp($remoteAddr);
$xForwardIp = Mage::app()->getRequest()->getServer('HTTP_X_FORWARDED_FOR');
$this->_quote->setXForwardedFor($xForwardIp);
}
no se utiliza cuando la creación de una orden de la Mage_Checkout_Model_Session
backend. En lugar Mage_Adminhtml_Model_Session_Quote
se utiliza y no hay rastro de remoteIp
o remoteAddr
su interior.