2010-08-11 7 views
19

Sto installando il codice Clicky su un sito Magento. Vorrei utilizzare il tracker HTTPS solo su pagine abilitate HTTPS di Magento. Come posso fare questo?Posso verificare la presenza di HTTPS nei file PHTML di Magento?

ho cercato

<?php if($_SERVER['https'] == 'on') : ?> 

ma che non funziona.

Qualsiasi suggerimento per l'identificazione delle pagine HTTPS sarà di grande aiuto!

Grazie.

+0

Come nota a margine alla risposta di seguito, non puoi semplicemente omettere il protocollo? –

risposta

59

Magento fornisce effettivamente un metodo per questo per voi.

Utilizzare questo per verificare se si è in modalità sicura:

// check to see if your store is in secure mode 
$isSecure = Mage::app()->getStore()->isCurrentlySecure(); 

Speranza che aiuta!

Grazie, Joe

+0

+1 la soluzione nativa vince sempre. –

+0

getStore() -> isCurrentlySecure()):>

+0

Ho usato questa opzione come mi piace usare la soluzione in-built. Sono sicuro che anche gli altri metodi funzionano. Grazie mille a tutti quelli che hanno risposto. –

-3

Questo può sembrare un po 'un "hack" ma è possibile controllare il protocollo del server e verificare l'esistenza dei caratteri "HTTPS" nel protocollo? :

<?php 
$protocol = $_SERVER['SERVER_PROTOCOL']; 
$protocol = substr($protocol,0,5); //will return something like HTTP/ or HTTPS 
if(preg_match("^HTTPS^",$protocol)){ 
echo "ITS HTTPS"; 
} 
?> 
-3

La cosa migliore è la seguente soluzione

<?php if($_SERVER['HTTPS'] || strtolower($_SERVER['HTTPS']) == 'on'){ /* HTTPS */ } else{ /* NOT SO HTTPS */ } ?> 
4

Native Magento

$isSecure = Mage::app()->getFrontController()->getRequest()->isSecure(); 
($isSecure) ? 'https://' : 'http://'; 

Questo aiuta a controllare se il vostro fronte negozio è in https o http

Problemi correlati