Rémunération de l'auteur

Mon site

Voir mon site professionnel marieluceberaudo.com

 

Voir mon blog sur Calgary

 


Calendrier

Juillet 2009
L M M J V S D
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    
<< < > >>
Dimanche 14 juin 2009
... en tapant le lien http://www.facebook.com/marieluce. Car maintenant, avec Facebook, c'est trop bien : depuis aujourd'hui (le 13 juin) on peut choisir un pseudo et se créer une url du type http://www.facebook.com/monpseudo. Comme ça, dès que quelqu'un tape mon url, il arrive sur mon profil. En plus, j'ai du bol de ne pas avoir le prénom le plus courant du monde car du coup il était disponible ! Faites bien attention avant de choisir votre pseudo : une fois qu'on l'a sélectionné, on ne peut plus le modifier (à moins de créer un nouveau profil Facebook).
Par Marilus - Publié dans : Culture Web
Ecrire un commentaire - Voir les 0 commentaires - Recommander
Dimanche 26 avril 2009
J'ai trouvé sur Internet le module en flash Image Zoom qui permet de créer un zoom rigolo sur une photo.

Mon idée était de l'utiliser sur mon site oscommerce pour que, en cliquant sur les vignettes des produits, on puisse ensuite faire un zoom sur la grande image.

Voici comment j'ai adapté ce module à Oscommerce (je précise que je suis une bidouilleuse, pas une développeuse, maligne mais pas toujours futée et que cette méthode n'est sans doute pas la meilleure ni la plus rapide) :

- J'ai téléchargé le module image zoom

- J'ai mis le fichier imagezoom.swf à la racine de mon site oscommerce

- J'ai téléchargé la contribution Big images version 1.25 (de Jan Skopek)

- J'ai installé la contribution

- Dans la base de données, j'ai rajouté un champ products_mimage en plus du champ de la contribution products_bimage en utilisant le script sql :

ALTER TABLE `products` ADD `products_mimage` VARCHAR(64) AFTER `products_bimage`;

L'idée était qu'au lieu d'avoir 2 tailles d'images, j'en aurais 3.

- J'ai ouvert le fichier admin/categories.php inclus dans la contribution et j'ai cherché tout ce qui avait été rajouté pour la contribution big images (c'est-à-dire tout ce qui comportait le commentaire added code for big product image) et j'ai tout dupliqué pour créer une troisième taille d'image.

Par exemple, pour le code :

if (isset($HTTP_POST_VARS['products_bimage']) && tep_not_null($HTTP_POST_VARS['products_bimage']) && ($HTTP_POST_VARS['products_bimage'] != 'none')) {
            $sql_data_array['products_bimage'] = tep_db_prepare_input($HTTP_POST_VARS['products_bimage']);
          }


J'ai ajouté juste derrière :

  if (isset($HTTP_POST_VARS['products_mimage']) && tep_not_null($HTTP_POST_VARS['products_mimage']) && ($HTTP_POST_VARS['products_mimage'] != 'none')) {
            $sql_data_array['products_mimage'] = tep_db_prepare_input($HTTP_POST_VARS['products_mimage']);
          }


Et pour un code du type :

$product_query = tep_db_query("select products_quantity, products_model, products_image, products_bimage, products_price, products_date_available, products_weight, products_tax_class_id, manufacturers_id from " . TABLE_PRODUCTS . " where products_id = '" . (int)$products_id . "'");

Je l'ai remplacé par :

$product_query = tep_db_query("select products_quantity, products_model, products_image, products_mimage, products_bimage, products_price, products_date_available, products_weight, products_tax_class_id, manufacturers_id from " . TABLE_PRODUCTS . " where products_id = '" . (int)$products_id . "'");

(la partie en rose étant celle qui a changé).

Et ainsi de suite dans tout le fichier pour que mon image de taille medium soit bien prise en compte.

- J'ai ouvert le fichier admin/includes/languages/french/categories.php et j'ai ajouté :

define('TEXT_PRODUCTS_MIMAGE', 'Image moyenne du produit :');

au-dessus de :

define('TEXT_PRODUCTS_BIMAGE', 'Grande image du produit :');


- J'ai ouvert le fichier product_info.php et j'ai remplacé le code (ligne 72) :

$product_info_query = tep_db_query("select p.products_id, pd.products_name, pd.products_description, p.products_model, p.products_quantity, p.products_image, pd.products_url, p.products_price, p.products_tax_class_id, p.products_date_added, p.products_date_available, p.manufacturers_id from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_status = '1' and p.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "'");

par celui-ci :

$product_info_query = tep_db_query("select p.products_id, pd.products_name, pd.products_description, p.products_model, p.products_quantity, p.products_image, p.products_mimage, p.products_bimage, pd.products_url, p.products_price, p.products_tax_class_id, p.products_date_added, p.products_date_available, p.manufacturers_id from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_status = '1' and p.products_id = '" . (int)$HTTP_GET_VARS['products_id'] . "' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "'");

- J'ai remplacé le code (ligne 108) :

<script language="javascript"><!--
document.write('<?php echo '<a href="javascript:popupWindow(\\\'' . tep_href_link(FILENAME_POPUP_IMAGE, 'pID=' . $product_info['products_id']) . '\\\')">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], addslashes($product_info['products_name']), SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT, 'hspace="5" vspace="5"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>'; ?>');
//--></script>
<noscript>
<?php echo '<a href="' . tep_href_link(DIR_WS_IMAGES . $product_info['products_image']) . '" target="_blank">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], $product_info['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT, 'hspace="5" vspace="5"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>'; ?>
</noscript>


par celui-ci :

<script type="text/javascript">
document.write('<?php echo '<a href="javascript:popupWindow(\\\'' . 'imagezoom.swf?image=' . DIR_WS_IMAGES . $product_info['products_mimage'] . '&imagebig=' . DIR_WS_IMAGES . $product_info['products_bimage'] . '&imgW=750&imgH=400\\\')">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], addslashes($product_info['products_name']), SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT, 'hspace="5" vspace="5"') . '<br>' . TEXT_CLICK_TO_ENLARGE . '</a>'; ?>');
</script>

<noscript>
<?php echo '<a href="imagezoom.swf?image=' . DIR_WS_IMAGES . $product_info['products_mimage']. '&imagebig=' . DIR_WS_IMAGES . $product_info['products_bimage'] . '&imgW=
750&imgH=400\">' . tep_image(DIR_WS_IMAGES . $product_info['products_image'], addslashes($product_info['products_name']), SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) .'</a>'; ?>
</noscript>


en me basant sur le mode d'emploi de configuration du module imagezoom.

- J'ai aussi remplacé le code (ligne 28) :

<script language="javascript"><!--
function popupWindow(url) {
  window.open(url,'popupWindow','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no,width=100,height=100,screenX=150,screenY=150,top=150,left=150')
}
//--></script>


par celui-ci :

<script language="javascript"><!--
function popupWindow(url) {
  window.open(url,'popupWindow','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no,width=750,height=400,screenX=150,screenY=150,top=150,left=150')
}
//--></script>


Bien sûr, les dimensions sont à modifier selon votre goût.

Je crois n'avoir rien oublié. En tout cas, à la fin, ça marchait !



Par Marilus - Publié dans : E-commerce
Ecrire un commentaire - Voir les 1 commentaires - Recommander
Dimanche 26 avril 2009
Vu que j'ai déjà créé et/ou géré un certain nombre de sites avec oscommerce (vous savez, l'espèce de CMS spécial e-commerce), j'ai maintenant une certaine idée de pourquoi oscommerce c'est bien et de pourquoi oscommerce c'est pas bien.

Oscommerce c'est bien parce que :

- Quand on n'est pas développeur, on peut arriver à créer quand même un vrai site d'e-commerce sur lequel les gens peuvent venir acheter des produits et même payer en ligne pour de vrai
- C'est gratuit et "open source", donc on peut en faire ce qu'on veut si on sait un peu bidouiller
- Il existe une communauté oscommerce très développée et sur les forums (anglophone et franchophone) on peut trouver de l'aide pour les bugs qu'on n'arrive pas à résoudre ou des idées
- Grâce à cette communauté très développée, il existe tout un tas de contributions qui nous permettent de faire encore mieux qu'oscommerce avec oscommerce
- C'est rapide à télécharger, facile à installer

Oscommerce c'est pas bien parce que :

- Même s'il n'y a pas besoin d'être un vrai développeur pour l'utiliser, il faut quand même savoir bidouiller et se débrouiller avec l'informatique car il y a souvent des bugs et, surtout, des demandes de clients qui ne correspondent pas à des contributions existantes.
- C'est à proprement parler une usine à gaz ! Beaucoup de fichiers, souvent beaucoup plus que ce dont on a besoin, et la configuration n'est pas toujours très intuitive.
- Le code n'est (pour l'instant) pas du tout adapté aux standards W3C et toute la mise en page est construite en tableaux, ce qui le rend assez lourd.
- La configuration présente des failles de sécurité (auxquelles on peut palier mais elles existent)

Du coup, je ne serais pas contre utiliser un autre type d'outil e-commerce de ce genre, juste pour essayer. Ceci dit, parmi les recherches que j'ai faites, oscommerce semble être l'outil e-commerce open source le plus utilisé, ce qui le rend incontournable du fait de la communauté qui l'entoure. Car ça m'embêterait d'utiliser un outil que personne d'autre ne connaît, je ne pourrais plus aller pleurer sur les forums quand j'ai un bug à résoudre !

Par Marilus - Publié dans : E-commerce
Ecrire un commentaire - Voir les 0 commentaires - Recommander
Mardi 17 février 2009
Pour l'instant. Mais il va sans doute revivre dès que j'aurai trouvé un nouveau travail. Oui, car je suis bien au chômage depuis fin novembre (période à laquelle j'ai écrit mon dernier billet), tout ça parce que j'ai eu l'idée saugrenue de déménager au Canada... Dès que j'aurai trouvé un nouveau travail, mon activité va repartir, et mes idées de billets aussi certainement ! Patience, patience...
Par Marilus - Publié dans : Hors catégorie
Ecrire un commentaire - Voir les 0 commentaires - Recommander
Mardi 25 novembre 2008

Pour quelle raison pourrait-on être amené à remplacer le prix qui apparaît dans la liste des produits sous oscommerce par une image ?


Oui, parce qu'un gif animé qui fait clignoter le prix ça fait kitsch, on est bien d'accord ? C'est beaucoup plus professionnel de laisser un texte simple quitte à le grossir un peu pour qu'il soit plus visible, pas vrai ? Et pourtant : il y a des clients qui ont envie que le prix de chacun de leur produit clignote en jaune sur un gros pavé rouge. Dans ce cas-là on est un peu obligé d'utiliser un gif animé...


Du coup, j'ai créé un gif animé par prix pour le faire apparaître à côté de chaque produit. Ensuite, il a fallu que je réfléchisse à comment le faire apparaître dans la colonne "prix" à la place du prix affiché en texte.


Et voici la solution que j'ai trouvée :


- Il faut que chaque image .gif commence par le même nom du type prix_1290.00.gif et qu'il n'y ait que le prix qui change dans le nom.

- Dans l'espace d'administration, aller dans la rubrique Localisation --> devise Euro.

- Il faut que le point décimal défini soit bien un point ( . ) comme dans le nom de l'image.

- Il faut que le nombre de décimales après la virgule soit bien de deux comme dans le nom de l'image prix_1290.00.gif (du coup, tous les noms d'image doivent comporter des décimales même s'il n'y en a pas, dans ce cas-là il faut juste laisser .00)

- Effacer le séparateur de milliers s'il y en a un

- Effacer le symbole gauche et le symbole droit s'il y en a un

- Ensuite, dans catalog/includes/modules/product_listing.php, retrouver ce code :


    case 'PRODUCT_LIST_PRICE':
            $lc_align = 'right';
            if (tep_not_null($listing['specials_new_products_price'])) {
              $lc_text = '&nbsp;<s>' .  $currencies->display_price($listing['products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . '</s>&nbsp;&nbsp;<span class="productSpecialPrice">' . $currencies->display_price($listing['specials_new_products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . '</span>&nbsp;';
            } else {
              $lc_text = '&nbsp;' . $currencies->display_price($listing['products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . '&nbsp;';
            }
            break;


Le remplacer par celui-ci :


    case 'PRODUCT_LIST_PRICE':
            $lc_align = 'right';
            if (tep_not_null($listing['specials_new_products_price'])) {
              $lc_text = '&nbsp;<s>' .  $currencies->display_price($listing['products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . '</s>&nbsp;&nbsp;<span class="productSpecialPrice">' . $currencies->display_price($listing['specials_new_products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . '</span>&nbsp;';
            } else {
              $lc_text = '&nbsp;<img src="http://www.monsite.fr/catalog/images/prix_' . $currencies->display_price($listing['products_price'], tep_get_tax_rate($listing['products_tax_class_id'])) . '.gif">&nbsp;';
            }
            break;


La partie en bleu étant celle que j'ai rajoutée : il faut bien sûr que vous changiez le lien vers l'image.


Et comme ça, ça marche !





Par Marilus - Publié dans : E-commerce
Ecrire un commentaire - Voir les 0 commentaires - Recommander
 
Créer un blog sur over-blog.com - Contact - C.G.U. - Rémunération en droits d'auteur - Signaler un abus