10 outils pour gagner du temps avec PrestaShop et WordPress

Publié le 06 avril 2021 par Amerigeau @arnaudmerigeau

Avant d'aller plus loin dans la lecture de cet article, mettez-le dans vos favoris ! Ce n'est pas un ordre mais plutôt un conseil car le billet qui va suivre vous livre 10 outils pour gagner du temps avec PrestaShop et WordPress.

Pourquoi proposer des outils gratuits ?

Déjà plus de 10 ans que je développe des sites web et des modules PrestaShop. Autant vous dire que certaines actions sont redondantes.

En bon développeur / intégrateur web, je suis un fainéant (si si, mais dans le bon sens) car je suis en perpétuelle recherche d'astuces et d'outils pour gagner du temps ou éviter d'en perdre. Et oui car au fond, en tant que freelance PrestaShop / WordPress, j'échange mon temps / une plus-value contre un budget.

Je vous offre donc un cadeau : 10 outils pour gagner du temps avec PrestaShop et WordPress !

Comme Jack sur la photo de l'article ci-dessous, vous pouvez être content en travaillant. Jack est content car il utilise des outils qui lui simplifient la vie. Faites comme Jack !

Simple, efficace et rapide : c'est les 3 qualités que je recherche dans un bon bout de code.

Ah mais attendez, c'est exactement ce que je vous propose dans la fine sélection d'outils qui va suivre.

J'espère que vous êtes prêts car voici 10 outils PrestaShop & WordPress pour développer plus vite !

Vous remarquerez sûrement que ces snippets sont dynamiques et prennent en compte votre ip. Il ne vous reste plus qu'à copier-coller ces outils !

Et au passage, puisqu'on parle de contenu gratuit : vous pouvez essayer le thème prestashop gratuit Blck.

PHP : condition selon ip

Snippet à utiliser sans modération dans n'importe quel fichier php.

if (in_array($_SERVER['REMOTE_ADDR'], array('54.225.104.196', )))
{

}

Smarty : condition selon ip

Snippet à utiliser dans tous les fichiers smarty.

{if $smarty.server.REMOTE_ADDR == '54.225.104.196' || isset($smarty.get.mode_dev)}

{/if}

Htaccess : condition selon ip

Snippet à placer dans le fichier .htaccess.

deny from all
allow from 54.225.104.196

PrestaShop : mode dev selon ip

Snippet à appliquer dans le fichier /config/defines.inc.php.

if (in_array($_SERVER['REMOTE_ADDR'], array('54.225.104.196', ))
|| isset($_GET['mode_dev'])) {
	define('_PS_MODE_DEV_', true);
} else {
	define('_PS_MODE_DEV_', false);
}

PrestaShop : debug profiling selon ip

Snippet à appliquer dans le fichier /config/defines.inc.php.

if (in_array($_SERVER['REMOTE_ADDR'], array('54.225.104.196', ))
|| isset($_GET['mode_dev'])) {
	define('_PS_DEBUG_PROFILING_', true);
} else {
	define('_PS_DEBUG_PROFILING_', false);
}

PrestaShop 1.6 : condition mobile

Code de détection mobile à utiliser dans un fichier smarty.

{if isset($mobile_device) & $mobile_device}

{/if}

Prestashop 1.7 : détecter un smartphone

PrestaShop 1.7 utilise la class Context qui permet d'utiliser des outils smarty directement dans les fichiers .tpl.

{if Context::getContext()->isMobile() & !Context::getContext()->isTablet()}

{/if}

ou

{if Context::getContext()->getDevice() == 4}

{/if}

Prestashop 1.7 : détecter une tablette

Snippet à utiliser dans des fichiers .tpl.

{if Context::getContext()->isTablet()}

{/if}

ou

{if Context::getContext()->getDevice() == 2}

{/if}

Prestashop 1.7 : détecter un ordinateur

Snippet à utiliser dans des fichiers .tpl.

{if !Context::getContext()->isMobile() & !Context::getContext()->isTablet()}

{/if}

or

{if Context::getContext()->getDevice() == 1}

{/if}

WordPress : thème selon ip

Le snippet suivant est à placer dans un fichier " theme-by-ip.php " que vous aurez créé au préalable dans le dossier /wp-content/plugins.

<?php
/*
Plugin Name: Theme by IP Address
Description: Display differents WordPress themes depending on IP address
*/

$dev_ips = array(
"192.168.0.1",
"192.168.0.2",
);

if(in_array($_SERVER['REMOTE_ADDR'], $dev_ips)){
  //theme visible to developers
  switch_theme( 'the-new-theme-for-developers' );
} else{
  //theme that's visible to the public
  switch_theme( 'the-public-theme' );	
}
?>

J'espère sincèrement que cette sélection d'outil vous sera utile au quotidien autant qu'elle l'est pour moi.

Pensez à m'indiquer en commentaire d'autres snippets qui pourraient compléter cette liste non exhaustive.

A bientôt !