Archive for octobre, 2011

25-10-2011

Paypal configuration logoImagePosition

Sur paypal intégral évolution, le paramètre logoImagePosition permet de positionner le logo en haut de la page:

logoImagePosition:left
logoImagePosition:center
logoImagePosition:right

exemple:

<input type="hidden" name="logoImagePosition " value="center" />

Le logo se positionne tout en haut de la page si la hauteur dépasse une certaine valeur.
Si vous souhaitez laisser une marge, l’astuce est de mettre une transparence avec du format png ou bien de mettre une bande de la couleur du fond de la page…

19-10-2011

Prestashop 1.4.5.1 override 1

Astuce 1
Dans mon précédent article je vous ai montré comment créer un hook pour la page order-adress.tpl, dans le tutoriel je présente une redéfinition de méthode (override) de classe enfant.
Dans ce cas dans la méthode que nous redéfinissons, nous re-écrivons le contenu puis ajoutons nos fonctions derrière.

Si vous avez juste besoin d’ajouter un bout de code à la suite dans ce cas vous pouvez raccourcir la méthode en utilisant parent:: le fameux this.super() …

Exemple: nous ajoutons un hook à la méthode de la page adresses des étapes de commande

<?php
class ParentOrderController extends ParentOrderControllerCore
{
	protected function _assignAddress()
	{
		parent::_assignAddress();
		self::$smarty->assign(array('HOOK_ORDERADRESS' => Module::hookExec('orderAdress')));
	}
}
?>

19-10-2011

Prestashop 1.4.5.1 hook et surcharge exemple 1

Dans les dernières versions de prestashop, il est possible de surcharger (override) les classes principales (core / coeur).

Pourquoi surcharger?
- Pour éviter de travailler sur les fichiers maîtres et pour pouvoir faire ainsi des mises à jour (surtout de sécurité) de prestashop en prenant un minimum de risque.

Petit exemple d’utilisation des hook dans la version 1.4.5.1 de prestashop avec l’ajout d’un hook dans la page order-adress.tpl qui par defaut ne contient pas de hook (et j’en avais besoin)…

1- on insert une ligne dans la table ps_hook de votre base de donnée
nom du hook:orderAdresse

2: on va surcharger la méthode _assignAddress() de la classe controllers/ParentOrderController qui est exécutée à l’étape adresse du pannier.
le lien du fichier sera override/controllers/ParentOrderController.php
On y ajoute à la fin le code suivant

self::$smarty->assign(array('HOOK_ORDERADRESS' => Module::hookExec('orderAdress')));

résultat

<?php
class ParentOrderController extends ParentOrderControllerCore
{
	protected function _assignAddress()
	{
		parent::_assignAddress();
		self::$smarty->assign(array('HOOK_ORDERADRESS' => Module::hookExec('orderAdress')));
	}
}
?>

3: on ajoute l’enregistrement du hook dans la méthode install() de notre module

if (!parent::install()
//etc...
OR !$this->registerHook('orderAdress')
)

4:on ajoute la méthode / fonction qui sera appelée (hookorderAdress) dans notre module, il faut juste rajouter hook devant

public function hookorderAdress($params)
{
	echo "ALORSSSSS";;
}

5: On ajoute l’appel à la méthode / fonction dans le fichier order-adress.tpl de votre thème a

{$HOOK_ORDERADRESS}

19-10-2011

So colissimo Flexibilité, installation : document

Installation du service de livraison de la poste So colissimo Flexibilité:

WEB SERVICE SO LIVRAISON
CHOIX DE LIVRAISON

- Spécifications techniques
- Version: 3.2 avril 2011

Fichier pdf: so-colissimo-flexibilite-choix-livraison.pdf

SOAP WSDL
findRDVPointRetraitAcheminement
findPointRetraitAcheminementByID
findRDVPointRetraitAcheminement

1 Commentaire

18-10-2011

Prestashop template-modules variables

Liste de variables globales que vous pouvez utiliser dans vos fichiers template / modules tpl

{$base_dir}
url du site
{$base_dir_ssl}
url https du site
{$content_dir}
Url complète jusqu’au dossier racine
{$img_ps_dir}
dossier img à la racine du site
{$img_dir}
dossier img du thème
{$css_dir}
dossier css du thème
{$js_dir}
dossier js (javascript) situé à la racine du site
{$tpl_dir}
dossiers du thème
{$modules_dir}
dossiers des modules
{$mail_dir}
dossier mail
{$lang_iso}
Code ISO du language courant
{$come_from}
Url absolue de la page précédente
{$shop_name}
Nom de la boutique
{$cart_qties}
Nombre produits dans le panier
{$cart}
Contenu du panier (array)
{$currencies}
Liste des devises disponibles (array)
{$id_currency_cookie}
Identifiant de la devise courante.
{$languages}
Liste des langages disponibles dans la boutique (array)
{$logged}
booléen, etat de connection utilisateur
{$page_name}
Nom de la page actuelle
{$customerName}
Nom et prénom du client connecté.
{$priceDisplay}
Paramètre actuel de l’affichage des prix (identifiant).

lien
emilienmalbranche

18-10-2011

Prestashop template-module: déclarer une variable

Normalement les variable du système de template (smarty) de prestashop se déclarent dans votre controleur de la façon suivante:

$smarty-&gt;assign('nom-variable', 'valeur variable lalala');

Et s’utilisent comme ça:

affiche la valeur: {$nom-variable}

Il se peut que vous ayez besoin de déclarer une variable directement dans la vue (fichier tpl)
Dans ce cas la syntaxe est la suivante:

{assign var=&quot;nom-variable&quot; value=&quot;valeur variable lalala&quot;}

que vous pouvez ensuite utiliser de la même manière:

affiche la valeur: {$nom-variable}

liens utiles: >> fonction assign sur template smarty

18-10-2011

Notepad++ trie par ordre alphabétique

Sur l’éditeur Notepad++, pour trier un texte par ordre alphabétique (avec ou sans prise en compte de la casse)

Il faut selectionner votre texte à trier, aller dans le menu suivant:
=>TextFX=> TextFX Tools => Sort Lines case sensitive (at column) / Sort Lines case sensitive (at column)

18-10-2011

Prestashop 1.4.5.1 registerHook liste

La liste des hook par defaut (66 en tout triés par ordre alphabétique);
Vous pouvez surcharger ces hook avec la méthode registerHook dans vos modules
ex:

$this->registerHook('extraCarrier') 

Pour ensuite travailler sur la fonction correspondante:

public function hookExtraCarrier($params){ ... } 
addproduct
Product creation
adminCustomers
Display in Back-Office
adminOrder
Display in Back-Office
AdminStatsModules
Stats – Modules
afterCreateHtaccess
After htaccess creation
afterSaveAdminMeta
After save configuration in AdminMeta
authentication
Successful customer authentication
backBeforePayment
Redirect in order process
backOfficeFooter
Administration panel footer
backOfficeHeader
Administration panel header
backOfficeHome
Administration panel homepage
backOfficeTop
Administration panel hover the tabs
beforeAuthentication
Before Authentication
beforeCarrier
Before carrier list
cancelProduct
Product cancelled
cart
Cart creation and update
categoryAddition
Category creation
categoryDeletion
Category removal
categoryUpdate
Category modification
createAccount
Successful customer create account
createAccountForm
Customer account creation form
createAccountTop
Block above the form for create an account
customerAccount
Customer account page display in front office
deleteproduct
Product deletion
deleteProductAttribute
Product Attribute Deletion
extraCarrier
Extra carrier
extraLeft
Extra actions on the product page
extraProductComparison
Extra Product Comparison
extraRight
Extra actions on the product page
footer
Footer
GraphEngine
Graph Engines
GridEngine
Grid Engines
header
Header of pages
home
Homepage content
invoice
Invoice
leftColumn
Left column blocks
newOrder
New orders
orderConfirmation
Order confirmation page
orderDetail
Order Detail
orderDetailDisplayed
Order detail displayed
orderReturn
Product returned
orderSlip
Called when a order slip is created
payment
Payment
paymentCCAdded
Payment CC added
paymentConfirm
Payment confirmation
paymentReturn
Payment return
paymentTop
Top of payment page
PDFInvoice
PDF Invoice
postUpdateOrderStatus
Post update of order status
processCarrier
Carrier Process
productActions
Product actions
productfooter
Product footer
productOutOfStock
Product out of stock
productTab
Tabs on product page
productTabContent
Content of tabs on product page
rightColumn
Right column blocks
search
Search
shoppingCart
Shopping cart footer
shoppingCartExtra
Shopping cart extra button
top
Top of pages
updateCarrier
Carrier Update
updateOrderStatus
Order
updateproduct
Product Update
updateProductAttribute
Product attribute update
updateQuantity
Quantity update
watermark
Watermark

17-10-2011

L’équipe Gmail FERMETURE DE VOTRE COMPTE: arnaque

Phishing / Arnaque / tentative de piratage de votre compte gmail.
Signalez le mail
>> comment signaler une tentative de phishing sur gmail
>> formulaire pour signaler un phishing sur gmail

ça fait peur ces mots fermeture de votre compte
Service Clientele: box-contact@web-org.info

Le contenu du mail ...
En raison de la décongestion de notre réseau qui entrainera la suppression de toutes les adresses de
messagerie inutilisés, en vue de lutter
contre les spams et de rendre nos applications plus éfficace, notre service sera obligé de fermer
votre adresse de messagerie. Pour éviter tout
désagrément dû à ce fait, nous vous prions de bien vouloir nous fournir les informations ci-dessous.
Vous devrez remplir minitieusement le
formulaire faute de quoi, nous nous verrons dans l\'obligation de suspendre sans regret votre
application dans les 72 heures pour des raisons de
sécurité dès réception de ce mail.

Confirmation de votre identité et vérification de votre compte.

etc..

Après avoir répondu au questionnaire et après vérification par nos services, votre compte mail
Google continuera de fonctionner normalement. Tout
refus de coopération entraînera la suppression systématique de votre compte Google.

Tout en nous excusant pour ces désagréments.
Service Clientèle

14-10-2011

Prestashop: smarty boucle foreach 1

Le système de template de prestashop (smarty) demande une certaine syntaxe pour boucler sur un tableau:

Exemple:

//php
$tab = array(1, 2, 3);
$smarty->assign('tab', $tab);

//tpl
{foreach from=$tab item=resultat}
{$resultat}
{/foreach}

//affiche 123

Nous verrons à la suite les variantes de tableaux, sous-tableaux (avec indice numérique et texte)

14-10-2011

Vhosts ehcp op=applyfordomainaccount

Encore des détections de faille sur ce serveur …

EHCP: Easy Hosting Control Panel, interface de gestion de domaines sur un servceur linux

La faille est corrigé sur les dernières version.

L’adresse ip qui a tenté la faille:

82.204.11.106 (Netherlands)
ISP:BBNED NV

12-10-2011

So colissimo flexibilité: connexion aux web services en https

La solution So colissimo en mode flexibilité vous permet de récupérer les informations de livraison par web-services

Vous pouvez récupérer ces info:
- avec un client SOAP (en php sur ubuntu sudo avec apt-get install php-soap)
- ou en requete https, ce que nous allons voir

Lien de connexion pour faire appel aux services

https://ws.colissimo.fr/pointretrait-ws-cxf/PointRetraitServiceWS/

Exemple avec un appel au service findRDVPointRetraitAcheminement:
les paramètres obligatoires sont:
- accountNumber
- password
- zipCode
- city
- shippingDate

Il suffit de faire un file_get_content sur l’url…

$url =&quot;https://ws.colissimo.fr/pointretrait-ws-cxf/PointRetraitServiceWS/findRDVPointRetraitAcheminement?accountNumber=123456&amp;amp;password=AAAAAA&amp;amp;zipCode=91630&amp;amp;city=LEUDEVILLE&amp;amp;shippingDate=12/10/2011&quot;;
$res = file_get_contents($url);
echo $res;

Il faut ensuite parser / interpréter les résultats bien sûr !
Nous verrons par la suite une connexion par SOAP (si j’ai le temps de tester …)

MAJ: 18h03

la connexion par SOAP fonctionne bien, reste plus qu’à vous expliquer comment, c’est assez simple en fait et plus pratique et fiable.

12-10-2011

Protection dossier sur free

Pour protéger efficacement un dossier / répertoire sur votre site hébergé sur free avec un login et mot de passe, il suffit de mettre un fichier .htaccess ainsi qu’un fichier de mot de passe.

Je mets à disposition un petit générateur pour bloquer l’accès de votre dossier.
Je rajouterais la possibilité de télécharger les fichiers générés prochainement.

>> générateur .htaccess pour free

12-10-2011

Prestashop : désactiver les bons de réduction

Comment retirer / cacher l’affichage « Mes bons de réduction » sur la page Mon compte. ?

Dans votre page d’administration de votre boutique:

Administration => Onglet Paiement => Bons de réduction => Activer les bons, case à cocher non

11-10-2011

Prestashop : désactiver emballage recyclé

Pour désactiver l’affichage « J’accepte de recevoir ma commande dans un emballage recyclé« , avec le choix de la case à cocher …

Il faut aller dans l’administration de votre site:

Préférences => Proposer des emballages cadeaux => cocher Non

11-10-2011

Prestashop: nombre d’articles en page catégorie

Pour augmenter le nombre d’articles / produits affichés dans une page catégorie, qui par défaut est de 10:

dans l’administration de votre boutique:

Préférences => produits => Produits par page

11-10-2011

Mon compte free : connexion

Page de connexion mon compte free

Et oui pas facile de trouver cette page pour se connecter à son compte…, heureusement que je suis là !

https://subscribe.free.fr/login/

1 Commentaire

10-10-2011

wordpress 3.2 version php

Votre serveur utilise la version 4.4.3-dev de PHP mais WordPress 3.2.1 nécessite au moins la version 5.2.4.
Warning: file_exists() [function.file-exists]: Unable to access /mnt/142/sda/e/0/wp-config.php

Depuis PHP 5.2 setcookie demande un nouveau paramètre « httponly » :
setcookie() expects at most 6 parameters, 7

pour ce problème voir mon autre post: >>wordpress-warning-setcookie-expects-at-most-6-parameters

Pour le message suivant:

Fatal error: Call to undefined function array_fill_keys() in …wp-includes/update.php on line 88
Traduction: il manque une fonction dans votre code…

Solution trouvé sur le manuel php (function.array-fill-keys)

Ajouter le code suivant au début du fichier wp-includes/functions.php
à mettre juste au dessus de la première fonction (ou à la fin si vous voulez !)

function array_fill_keys($target, $value = '') {
    if(is_array($target)) {
        foreach($target as $key => $val) {
            $filledArray[$val] = is_array($value) ? $value[$key] : $value;
        }
    }
    return $filledArray;
}

2 Commentaires

10-10-2011

WordPress: Warning : setcookie() expects at most 6 parameters

Si vous tentez d’installer une version récente de wordpress qui a été développé pour des version 5.2.* de php (avec de la bidouille) , vous serez confronté à des problème de paramètre de cookies du genre

Warning: setcookie() expects at most 6 parameters, 7 given

Solution: supprimer le dernier paramètre de vos lignes qui posent problème
exemple pour la version 3.2.1, fichier wp-includes/pluggable.php ligne 737

//remplacer
setcookie($auth_cookie_name, $auth_cookie, $expire, PLUGINS_COOKIE_PATH, COOKIE_DOMAIN, $secure, true);
//par
setcookie($auth_cookie_name, $auth_cookie, $expire, PLUGINS_COOKIE_PATH, COOKIE_DOMAIN, $secure);
//etc...

Les version 5.2.* attendent 7 paramètres dans la fonction …, les versions précédentes 6

10-10-2011

WordPress télécharger

La derniere version en français (à ce jour 3.2.1 )

>> http://fr.wordpress.org/

Téléchargement des anciennes versions:
3.2.1, 3.1.4, 3.0.5, 2.9.2, 2.8.6, 2.3, 2.2.3, 2.0.11
>> http://fr.wordpress.org/releases/#older

Autres liens:
Liste des traductions
(1.5, 1.5.1.3, 1.5.2, 2.0, 2.0.1, 2.0.10, 2.0.11, 2.0.2, 2.0.3, 2.0.4, 2.0.5, 2.0.6, 2.0.7, 2.0.8, 2.0.9, 2.1, 2.1.2, 2.1.3, 2.2, 2.2.1, 2.2.2, 2.2.3, 2.3, 2.3.1, 2.3.2, 2.3.3, 2.5, 2.5.1, 2.6, 2.6.1, 2.6.2, 2.6.3, 2.6.5, 2.7, 2.7.1, 2.8, 2.8.1, 2.8.2, 2.8.3, 2.8.4, 2.8.5, 2.8.6, 2.9, 2.9.1, 2.9.2, 3.0, 3.0.1, 3.0.5, 3.1, 3.2, mu-1.0, mu-1.2.2, mu-1.2.3, mu-1.2.4, mu-1.2.5a, mu-1.3, mu-1.3.2, mu-1.3.3, mu-1.5.1, mu-2.6, mu-2.6.1, mu-2.6.3, mu-2.6.5, mu-2.7.1, mu-2.8.3, mu-2.8.4, mu-2.8.5.2, mu-2.8.6, mu-2.9.1, mu-2.9.2)
>> http://svn.automattic.com/wordpress-i18n/fr_FR/tags/

Dernière version officielle
>> http://wordpress.org/latest.zip