Nota de aplicación Anunciantes: consejos para la integración de los tags Reactivpub en Joomla Versión 1.0.1
Introducción Objeto Reactivpub, plataforma de afiliación basada en la tecnología R-ADServer desarrollada por la sociedad R, permite que los afiliados (o difusores) se pongan en contacto: portales de Internet que deseen rentabilizar su espacio publicitario), y portales de anunciantes que deseen vender o promover sus productos. Existen diferentes modelos técnicos y económicos de difusión publicitaria, que difieren entre sí principalmente a nivel de su implantación. El presente documento expone las recomendaciones técnicas de R acerca de la integración de los marcadores (o tags) de la plataforma de difusión de Reactivpub en el marco de las campañas de publicidad de tipo venta, para un portal ubicado en el CMS Joomla 1.0.13 y en Virtuemart 1.0.14 (Virtuemart es un componente adicional de Joomla que permite la integración de una tienda en línea en un portal implantado en Joomla). A quién va dirigido este documento? El presente documento se dirige a los webmasters, administradores o programadores que deseen utilizar la tecnología de Reactivpub en su portal de Internet implantado en Joomla. Advertencias Como Joomla constituye un producto que Vd. puede haber modificado y adaptado a sus propias necesidades, le aconsejamos que: - realice copias de seguridad de los archivos implicados por los cambios descritos en el presente documento, - realice dichos cambios primeramente en una plataforma de desarrollo, con vistas a comprobar su funcionamiento correcto en su configuración, antes de pasarlos a la producción. Pese a todos los cuidados consagrados a su comprobación, este documento puede incluir determinados errores. Le invitamos a enviarnos cualquier observación o comentario a la dirección production@r-advertising.com. La información incluida en este documento podrá ser modificada sin previo aviso. Anunciantes : consejos para la integración de los tags Reactivpub en Joomla 2
Principio Aspectos generales El dispositivo de trazabilidad Reactivpub es compatible con las soluciones principales de pago del mercado. En el portal del anunciante implantado en Joomla, se deberán incluir dos tags: un tag para marcar la transacción (lead o venta) y un tag para validar dicha transacción. Tag de marcado de la transacción: tracking.php El recurso a este primer tag debe implantarse antes de acudir al dispositivo de pago, en la primera página Web visualizada por el visitante (por ejemplo, en la página de confirmación del pedido). La forma general de dicho tag es la siguiente: <iframe src="http://nodes.reactivpub.fr/scripts/tracking.php? params=p1 P2&id_transaction=P3&track=P4&prix=P5 width="1" height="1" marginwidth="0" marginheight="0" frameborder="0" scrolling="no"></iframe> En este tag: - P1 y P2: representan valores suministrados por Reactivpub, específicos a su campaña. Estros valores podrán recuperarse en la sección tag anunciante de su campaña, en la interfaz de administración de Reactivpub, o podrán ser suministrados por su gestor de cuenta. - P3: representa un identificador exclusivo de la transacción que se inicia. Normalmente, puede tratarse de un número de pedido, una concatenación de varias informaciones (número de pedido + importe del pedido + fecha del pedido ) siempre y cuando dicho valor sea exclusivo. - P4: representa el valor de la dirección de correo electrónico del cliente que realiza la transacción (la compra). - P5: representa el precio total de la transacción. Importante: todos los parámetros (P1 a P5) deberán indicarse cuando acuda a tracking.php. Anunciantes : consejos para la integración de los tags Reactivpub en Joomla 3
Por ejemplo: <iframe src="http://nodes.reactivpub.fr/scripts/tracking.php?params= 123 4567&id_transaction=ABCDE12345&track=test@test.fr &prix=9876.43 width="1" height="1" marginwidth="0" marginheight="0" frameborder="0" scrolling="no"></iframe> Tag de validación de la transacción: tracking_transaction.php El recurso a este segundo tag debe realizarse en un script PHP del portal, una vez que se haya realizado el pago. Por ejemplo, el recurso puede realizarse en el script de validación del pedido solicitado por el dispositivo de pago, o en un script encargado del envío de un correo electrónico de confirmación del pedido. A diferencia del primer tag, el recurso a dicho tag puede realizarse fuera de cualquier navegador. La forma general de dicho tag es la siguiente: http://nodes.reactivpub.fr/scripts/tracking_transaction.php? params=p1 P2&id_transaction=P3 Los parámetros P1, P2 y P3 deben tener los mismos valores que cuando se acuda a tracking.php. Importante: todos los parámetros (P1 a P3) deberán indicarse cuando acuda a tracking_transaction.php. Por ejemplo: http://nodes.reactivpub.fr/scripts/tracking_transaction.php? params=123 4567&id_transaction=ABCDE12345Z Observaciones: - el recurso al tag tracking_transaction.php conlleva el registro de la transacción en el estado en espera en su interfaz de administración Reactivpub. Por lo tanto, podrá aceptarla o rechazarla definitivamente. - El recurso al tag tracking_transaction.php tan sólo debe realizarse cuando se haya aceptado el pago. En caso contrario, este tag no deberá ser solicitado. Anunciantes : consejos para la integración de los tags Reactivpub en Joomla 4
Integración de los tags Etapa 1: colocación del tag tracking.php Edite el archivo checkout.index.php ubicado en la carpeta Joomla administrator\components\com_virtuemart\html e introduzca el código de Reactivpub presentado a continuación, tras la línea 207, bajo el código fuente siguiente: elseif ($checkout_this_step == CHECK_OUT_GET_FINAL_CONFIRMATION) { // -CHECK_OUT_GET_FINAL_CONFIRMATION // shows a total summary including all payments // Now llet the user confirm Línea 207?> Introduzca el código Reactivpub a partir de aquí. Código Reactivpub que deberá introducir en la línea 208, cuidando en sustituir los valores de los parámetros P1 y P2 por los valores correspondientes a su campaña: <?php // // Reactivpub : call tracking tag // // Get session ID and date $reac_date = date("dmyhis"); $_SESSION["date"] = $reac_date; $reac_session_id = session_id(). "-". $reac_date; // Cleaning $reac_session_id = str_replace(" ", "", $reac_session_id = str_replace("/", "", $reac_session_id = str_replace(";", "", // Get customer s email $reac_dbbt = new ps_db; $reac_qt = " SELECT * FROM # {vm}_user_info WHERE "; $reac_qt.= " user_id='".$auth['user_id']."' AND "; $reac_qt.= " address_type='bt' "; $reac_dbbt->query($reac_qt); $reac_dbbt->next_record(); $reac_track = $reac_dbbt->f("user_email"); // Get total price $reac_prix = $order_total + $tax_total; $reac_prix = round($reac_prix, 2); Anunciantes : consejos para la integración de los tags Reactivpub en Joomla 5
// Build first tag (client tag) // (Warning : replace P1 P2 with campaign specific IDs // given by Reactivpub) $reac_iframe = '<iframe '; $reac_iframe.= 'src="http://nodes.reactivpub.fr/'; $reac_iframe.= 'scripts/tracking.php?params=p1 P2'; $reac_iframe.= '&id_transaction='.$reac_session_id; $reac_iframe.= '&track='.$reac_track; $reac_iframe.= '&prix='.$reac_prix.'" '; $reac_iframe.= ' width="1" height="1" marginwidth="0" '; $reac_iframe.= ' marginheight="0" frameborder="0" '; $reac_iframe.= ' scrolling="no">'; $reac_iframe.= '</iframe>'; // Call Reactivpub tag echo $reac_iframe;?> Nota: este código determina el valor del parámetro P3 (id_transaction) como la concatenación del ID de la sesión PHP del visitante y la fecha actual. Etapa 2: colocación del tag tracking_transaction.php Edite el archivo ps_checkout.php ubicado en la carpeta Joomla administrator\components\com_virtuemart\classes\ e introduzca el código Reactivpub indicado a continuación, al principio de la función email_receipt() (tras la línea 1451, justo después de la definición de las variables globales): Línea 1447 function email_receipt($order_id) { global $sess, $ps_product, $VM_LANG, Línea 1451 $mosconfig_smtpuser, $mosconfig_smtppass, ; Introduzca el código Reactivpub a partir de aquí. Código Reactivpub que deberá introducir en la línea 1452, cuidando en sustituir los valores de los parámetros P1 y P2 por los valores correspondientes a su campaña: // Get session ID and date $reac_date = $_SESSION["date"]; $reac_session_id = session_id(). "-". $reac_date; // Cleaning $reac_session_id = str_replace(" ", "", $reac_session_id = str_replace("/", "", $reac_session_id = str_replace(";", "", Anunciantes : consejos para la integración de los tags Reactivpub en Joomla 6
// Build second tag (server to server tag) // (Warning : replace P1 P2 with campaign specific IDs // given by Reactivpub) $reac_url = "http://nodes.reactivpub.fr/scripts/"; $reac_url.= "tracking_transaction.php?"; $reac_url.= "params=p1 P2"; $reac_url.= "&id_transaction=". $reac_session_id; file($reac_url); Nota: la instrucción file(..) tan sólo funciona con una URL cuando la opción PHP fopen wrappers haya sido activada (php.ini: allow_url_fopen = On). Acuda a http://fr.php.net/manual/es/function.fopen.php para obtener más información al respecto. Fin de la operación Pruebas y validación Una vez realizados los cambios, deberá realizar algunas transacciones de prueba, como por ejemplo: - Añada productos a la cesta, confirme el pedido, y a continuación, realice un pago que será aceptado. - Añada productos a la cesta, confirme el pedido, y a continuación, realice un pago que será rechazado. Cuide en anotar, para cada transacción, el importe del pedido y la dirección de correo electrónico utilizada. Durante estas pruebas, no deberá aparecer ningún error ni advertencia de PHP o Javascript. A continuación, conéctese a la interfaz de administración de Reactivpub, y compruebe que las transacciones de pruebas para las cuales ha sido aceptado el pago aparecen correctamente en la lista de transacciones a esperas de validación. Así pues, podrá rechazarlas para hacer que desaparezcan de la lista. Tenga en cuenta que las transacciones de pruebas pueden tardar un poco en aparecer en la lista de transacciones a validar. SI lo desea, póngase en contacto con su gestor de cuenta con vistas a que compruebe en su lugar, si las transacciones se han registrado correctamente. Anunciantes : consejos para la integración de los tags Reactivpub en Joomla 7