<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Tuto &#8211; s2prod ⋮</title>
	<atom:link href="https://s2prod.net/wordpress/tuto/feed/" rel="self" type="application/rss+xml" />
	<link>https://s2prod.net</link>
	<description>Pour les concepteurs de sites web</description>
	<lastBuildDate>Wed, 12 Jul 2023 15:54:42 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.8.1</generator>

<image>
	<url>https://s2prod.net/wp-content/uploads/2024/02/cropped-s2prod_icon512-32x32.png</url>
	<title>Tuto &#8211; s2prod ⋮</title>
	<link>https://s2prod.net</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Problème d&#8217;emojis sur WordPress ? La Solution Ici !</title>
		<link>https://s2prod.net/probleme-emoji-wordpress-la-solution-ici/</link>
					<comments>https://s2prod.net/probleme-emoji-wordpress-la-solution-ici/#respond</comments>
		
		<dc:creator><![CDATA[s2prod]]></dc:creator>
		<pubDate>Wed, 12 Jul 2023 15:54:41 +0000</pubDate>
				<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[Tuto]]></category>
		<category><![CDATA[emoji]]></category>
		<category><![CDATA[emoji wordpress]]></category>
		<guid isPermaLink="false">https://s2prod.net/?p=536</guid>

					<description><![CDATA[Si vous êtes ici, c&#8217;est probablement que les emojis 😭n&#8217;apparaissent pas correctement sur votre WordPress. Certains s&#8217;affichent peut-être, d&#8217;autres laissent place à des ??? ou bien encore des espaces vides. Pas de panique, j&#8217;ai la solution et ce problème d&#8217;affichage des émoticônes sur WordPress sera de l&#8217;histoire ancienne. Avant d&#8217;aller plus loin : Faites une [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Si vous êtes ici, c&rsquo;est probablement que les <strong>emojis </strong>😭n&rsquo;apparaissent pas correctement sur votre <strong><a href="https://s2prod.net/wordpress/" data-type="category" data-id="11">WordPress</a></strong>. Certains s&rsquo;affichent peut-être, d&rsquo;autres laissent place à des ??? ou bien encore des espaces vides.</p>



<p>Pas de panique, j&rsquo;ai la solution et ce <strong>problème d&rsquo;affichage des émoticônes sur WordPress </strong>sera de l&rsquo;histoire ancienne.</p>



<div class="gutentoc tocactive nostyle"><div class="gutentoc-toc-wrap"><div class="gutentoc-toc-title-wrap"><div class="gutentoc-toc-title">Sommaire</div><div id="open" class="toggletwo">show</div></div><div id="toclist"><div class="gutentoc-toc__list-wrap"><ul class="gutentoc-toc__list"><li><a href="#avant-daller-plus-loin--faites-une-sauvegarde-">Avant d&rsquo;aller plus loin : Faites une sauvegarde !</a></li><li><a href="#modification-des-jeux-de-caractères-dans-wp-configphp">Modification des jeux de caractères dans wp-config.php</a></li><li><a href="#changement-de-librairie-mysql-depuis-votre-panneau-dadministration">Changement de librairie MySQL depuis votre panneau d&rsquo;administration</a></li><li><a href="#mettre-à-jour-linterclassement-des-tables">Mettre à jour l&rsquo;interclassement des tables</a></li><li><a href="#les-emojis-ne-saffichent-toujours-pas">Les emojis ne s&rsquo;affichent toujours pas</a></li></ul></div></div></div></div>



<h2 class="wp-block-heading" id="avant-daller-plus-loin--faites-une-sauvegarde-">Avant d&rsquo;aller plus loin : Faites une sauvegarde !</h2>



<p>Personnellement, je n&rsquo;ai rencontré aucun problème lors de cette manipulation. Cependant comme nous allons intervenir sur la base de données, je ne tiens pas à être responsable d&rsquo;une perte données. Donc, je ne serai trop vous recommander de faire une<strong> backup de votre WordPress</strong>.</p>



<p>Il est possible que votre hébergeur fasse déjà une sauvegarde quotidienne, c&rsquo;est le cas si vous êtes chez o2switch, <a href="https://ad4.fr/planethoster/" target="_blank" rel="noreferrer noopener nofollow">planethoster</a>, infomaniak et <a href="https://ad4.fr/hostinger" target="_blank" rel="noreferrer noopener nofollow">hostinger </a>selon le plan que vous avez choisi.</p>



<p>Si vous n&rsquo;êtes pas certain d&rsquo;avoir une sauvegarde via votre hébergeur, utilisez le plugin <a href="https://wordpress.org/plugins/updraftplus/" target="_blank" rel="noreferrer noopener nofollow">Udraftplus WordPress Backup</a>. C&rsquo;est un freemium, mais les options gratuites feront le job. </p>



<h2 class="wp-block-heading" id="modification-des-jeux-de-caractères-dans-wp-configphp">Modification des jeux de caractères dans wp-config.php</h2>



<p>Ouvrez votre fichier wp-config.php et vérifiez si la constante concernant les jeux de caractères est définie comme celle ci-dessous :</p>



<pre class="EnlighterJSRAW" data-enlighter-language="php" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">/* utf8mb4 est un jeu de caractères qui permet l'encodage de pratiquement tous les caractères Unicode, y compris les émojis. */
define( 'DB_CHARSET', 'utf8mb4' );</pre>



<p>Si à partir de maintenant les emojis apparaissent, c&rsquo;est formidable 🎉🥳🍾. Ne touchez plus à rien ! Dans le cas contraire, on continue !</p>



<h2 class="wp-block-heading" id="changement-de-librairie-mysql-depuis-votre-panneau-dadministration">Changement de librairie MySQL depuis votre panneau d&rsquo;administration</h2>



<p>Si vous êtes sur un environnement <strong>cPanel</strong>, vous devriez pouvoir choisir votre version de Php en cliquant sur l&rsquo;icône <strong>Select PHP Version</strong>.</p>



<figure class="wp-block-image aligncenter size-full"><img fetchpriority="high" decoding="async" width="424" height="215" src="https://s2prod.net/wp-content/uploads/2023/07/version-php-librairie.png" alt="Désactiver mysqli et activer nd_mysqli" class="wp-image-554" srcset="https://s2prod.net/wp-content/uploads/2023/07/version-php-librairie.png 424w, https://s2prod.net/wp-content/uploads/2023/07/version-php-librairie-300x152.png 300w" sizes="(max-width: 424px) 100vw, 424px" /></figure>



<p><strong><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-palette-color-2-color">①</mark></strong> Dans mon cas je suis en 7.4(native). Conservez votre version de PHP en cliquant dans le menu déroulant et cliquez sur la version native. Une fois le choix effectué, vous devriez voir les librairies (bibliothèques) activées et non activées.</p>



<p> <strong><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-palette-color-2-color">②</mark></strong> Cliquez sur <strong>mysqli </strong>pour la désactiver. Puis cliquez sur <strong>nd_mysqli</strong> pour l&rsquo;activer.</p>



<p>Les emojis apparaissent !? 🎉🥳🍾. Ne touchez plus à rien ! Dans le cas contraire, on continue !</p>



<h2 class="wp-block-heading" id="mettre-à-jour-linterclassement-des-tables">Mettre à jour l&rsquo;interclassement des tables</h2>



<p>Dans mon cas, c&rsquo;était cette dernière partie qui posait problème. Mon installation initiale de WordPress datait de 2012 et toutes mes tables étaient en <strong>latin1_swedish_ci</strong>. Il faut les mettre en <strong>utf8mb4_unicode_520_ci </strong>pour que celles-ci puissent afficher les emojis.</p>



<ol class="wp-block-list">
<li>Pour ce faire, allez sur PhpMyAdmin. </li>



<li>Cliquez sur la base de données concernée.</li>



<li>Cliquez sur l&rsquo;onglet Opérations.</li>



<li>Tout en bas, dans l&rsquo;encadré Interclassement, cliquez sur champ déroulant puis choisissez <strong>utf8mb4_unicode_520_ci</strong>.</li>
</ol>



<figure class="wp-block-image aligncenter size-full"><img decoding="async" width="520" height="421" src="https://s2prod.net/wp-content/uploads/2023/07/interclassement_utf8mb4.png" alt="" class="wp-image-541" srcset="https://s2prod.net/wp-content/uploads/2023/07/interclassement_utf8mb4.png 520w, https://s2prod.net/wp-content/uploads/2023/07/interclassement_utf8mb4-300x243.png 300w" sizes="(max-width: 520px) 100vw, 520px" /></figure>



<p>Retournez sur votre site, ajoutez des emojis et testez. Vous devriez voir des emojis à l&rsquo;écran.</p>



<h2 class="wp-block-heading" id="les-emojis-ne-saffichent-toujours-pas">Les emojis ne s&rsquo;affichent toujours pas</h2>



<p>Si vous utilisez un plugin de mise en cache à l&rsquo;instar de <strong>WP rocket</strong>, <strong>WP-Optimize</strong> ou tout autre plugin de mise en cache, <strong>videz le cache !</strong> Si vous utilisez un plugin de cache objet comme <strong>Redis</strong>, <strong>désactivez-le</strong> puis vérifiez à nouveau. </p>



<p>Enfin pensez également à <strong>vider le cache de votre navigateur</strong>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://s2prod.net/probleme-emoji-wordpress-la-solution-ici/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Comment retirer le bouton « ajouter au panier » sur la page d&#8217;accueil de mon WooCommerce ?</title>
		<link>https://s2prod.net/comment-retirer-le-bouton-ajouter-au-panier-sur-la-page-daccueil-de-mon-woocommerce/</link>
					<comments>https://s2prod.net/comment-retirer-le-bouton-ajouter-au-panier-sur-la-page-daccueil-de-mon-woocommerce/#respond</comments>
		
		<dc:creator><![CDATA[s2prod]]></dc:creator>
		<pubDate>Tue, 07 Mar 2023 19:07:58 +0000</pubDate>
				<category><![CDATA[Tuto]]></category>
		<category><![CDATA[woocommerce]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[wordpress hacking]]></category>
		<category><![CDATA[wordpress snippets]]></category>
		<guid isPermaLink="false">https://s2prod.net/?p=478</guid>

					<description><![CDATA[La question peut paraître farfelue, mais elle m&#8217;a été posée et les raisons pour lesquelles elle a été évoquée étaient loin d&#8217;être stupides. Pourquoi supprimer le bouton ajouter au panier sur votre page d&#8217;accueil ? Le boutique d&#8217;un client qui tourne sous WooCommerce a vu son taux de rebond augmenter et le taux rétention diminuer. [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>La question peut paraître farfelue, mais elle m&rsquo;a été posée et les raisons pour lesquelles elle a été évoquée étaient loin d&rsquo;être stupides. </p>



<div class="gutentoc tocactive nostyle"><div class="gutentoc-toc-wrap"><div class="gutentoc-toc-title-wrap"><div class="gutentoc-toc-title">Sommaire</div><div id="open" class="toggletwo">show</div></div><div id="toclist"><div class="gutentoc-toc__list-wrap"><ul class="gutentoc-toc__list"><li><a href="#pourquoi-supprimer-le-bouton-ajouter-au-panier-sur-votre-page-daccueil-">Pourquoi supprimer le bouton ajouter au panier sur votre page d&rsquo;accueil ?</a></li><li><a href="#diminution-du-taux-de-rebond-et-augmentation-du-taux-de-rétention">Diminution du taux de rebond et augmentation du taux de rétention</a></li><li><a href="#suppression-du-bouton-ajouter-au-panier-et-le-prix-uniquement-sur-la-page-daccueil-avec-css">Suppression du bouton ajouter au panier et le prix uniquement sur la page d&rsquo;accueil avec CSS</a></li><ul class="gutentoc-toc__list"><li><a href="#et-si-on-veut-retirer-le-bouton-ajouter-au-panier-sur-dautres-pages-">Et si on veut retirer le bouton ajouter au panier sur d&rsquo;autres pages ?</a></li></ul><li><a href="#suppression-du-bouton-ajouter-au-panier-et-le-prix-uniquement-sur-la-page-daccueil-avec-javascript">Suppression du bouton ajouter au panier et le prix uniquement sur la page d&rsquo;accueil avec JavaScript</a></li><ul class="gutentoc-toc__list"><li><a href="#1ère-méthode">1ère méthode</a></li><li><a href="#2ème-méthode">2ème méthode</a></li></ul><li><a href="#comment-ajouter-un-fichier-javascript-à-mon-thème-wordpress-">Comment ajouter un fichier Javascript à mon thème WordPress ?</a></li><li><a href="#suppression-du-bouton-ajouter-au-panier-uniquement-sur-la-page-daccueil-avec-php">Suppression du bouton ajouter au panier uniquement sur la page d&rsquo;accueil avec Php</a></li></ul></div></div></div></div>



<h2 class="wp-block-heading" id="pourquoi-supprimer-le-bouton-ajouter-au-panier-sur-votre-page-daccueil-">Pourquoi supprimer le bouton ajouter au panier sur votre page d&rsquo;accueil ?</h2>



<p>Le boutique d&rsquo;un client qui tourne sous <strong>WooCommerce </strong>a vu son <strong>taux de rebond</strong> augmenter et le <strong>taux rétention</strong> diminuer. Outre le fait que cette multitude de boutons ajouter au panier était très moche, l&rsquo;action d&rsquo;avoir supprimée le<strong> bouton ajouter au panie</strong>r ET le <strong>prix </strong>de l&rsquo;article sur la <em>home </em>à complétement changer la donne.</p>



<h2 class="wp-block-heading" id="diminution-du-taux-de-rebond-et-augmentation-du-taux-de-rétention">Diminution du taux de rebond et augmentation du taux de rétention</h2>



<figure class="wp-block-image alignright size-full"><img decoding="async" width="320" height="256" src="https://s2prod.net/wp-content/uploads/2023/03/AmazingAmazedGIF.gif" alt="" class="wp-image-484"/></figure>



<p>En supprimant le bouton <strong>ajouter au panier</strong> et le <strong>prix </strong>sur la page d&rsquo;accueil,<strong> le client doit impérativement cliquer sur l&rsquo;article pour en connaître le prix </strong>et l&rsquo;ajouter dans son panier. </p>



<p>Vous allez me dire : « <em>Rien de révolutionnaire là-dedans</em>« , et vous avez raison. <strong><a href="https://amzn.to/3JltxB8" target="_blank" rel="noreferrer noopener nofollow">Amazon</a> applique déjà cette stratégie</strong>.  Cependant, il n&rsquo;y a pas d&rsquo;option par défaut qui permettent ce <strong>hack </strong>sur un site <strong>WooCommerce </strong>et cela est fort dommage. </p>



<h2 class="wp-block-heading" id="suppression-du-bouton-ajouter-au-panier-et-le-prix-uniquement-sur-la-page-daccueil-avec-css">Suppression du bouton ajouter au panier et le prix uniquement sur la page d&rsquo;accueil avec CSS</h2>



<p>Si on peut reconnaître un point positif à <strong><a href="https://s2prod.net/wordpress/" data-type="category" data-id="11">WordPress</a> </strong>c&rsquo;est son système de <strong>classes CSS</strong> qui est bien pensé. Vous n&rsquo;avez peut-être jamais fait attention mais dans votre balise <strong>&lt;body></strong>, lorsque vous êtes sur votre page d&rsquo;accueil il y une classe <em>home</em>. <strong>Cette classe est uniquement visible sur la page d&rsquo;accueil</strong>. Ainsi, si vous utilisez un sélection commençant par <em>.home</em> les règles ne s&rsquo;appliqueront que sur la page d&rsquo;accueil.</p>



<p>Dans notre cas, nous voulons rendre invisible les boutons ajouter au panier et le prix. Il faudra donc utiliser ceci: </p>



<pre class="EnlighterJSRAW" data-enlighter-language="css" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">/* Suppression du bouton ajouter */
.home .add_to_cart_button{
display:none!important;
}

/* Suppression du prix */
.home .price{
display:none!important;
}</pre>



<h3 class="wp-block-heading" id="et-si-on-veut-retirer-le-bouton-ajouter-au-panier-sur-dautres-pages-">Et si on veut retirer le bouton ajouter au panier sur d&rsquo;autres pages ?</h3>



<p>Même principe. <strong>On regarde la classe du body</strong> et on créer les sélecteurs CSS qui vont bien.</p>



<pre class="EnlighterJSRAW" data-enlighter-language="css" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">/* Suppression du bouton ajouter dans les pages archives*/
.archive.add_to_cart_button{
display:none!important;
}

/* Suppression du prix */
.archive .price{
display:none!important;
}</pre>



<p><strong>Visuellement parlant le CSS fait le job et le prix comme le bouton ont disparu</strong>. Cependant, ils sont <strong>toujours bien visibles dans le code</strong>. Si vous souhaitez totalement supprimer les nœuds html, il faudra passer par <strong><a href="https://s2prod.net/javascript/" data-type="category" data-id="21">JavaScript</a></strong>.</p>



<h2 class="wp-block-heading" id="suppression-du-bouton-ajouter-au-panier-et-le-prix-uniquement-sur-la-page-daccueil-avec-javascript">Suppression du bouton ajouter au panier et le prix uniquement sur la page d&rsquo;accueil avec JavaScript</h2>



<p>Je vais vous proposer deux méthodes. La première est suffisante si vous comptez uniquement supprimer une liste de nœuds, dans notre exemple le bouton ajouter au panier. Si vous souhaitez supprimer le bouton et le prix, il faudra utiliser la seconde méthode.</p>



<h3 class="wp-block-heading" id="1ère-méthode">1ère méthode</h3>



<p>On connaît déjà le sélecteur CSS à cibler pour notre bouton ainsi que la classe que doit contenir notre body.</p>



<pre class="EnlighterJSRAW" data-enlighter-language="js" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">// On sélectionne tous les boutons ajouter au panier
 const addToCart = document.querySelectorAll('.add_to_cart_button'); 

// On teste si la classe home est bien présente dans le body puis on applique la méthode remove() sur tous les boutons.
 if (document.body.classList.contains("home")){
     addToCart.forEach(buttons => buttons.remove())
 }
</pre>



<h3 class="wp-block-heading" id="2ème-méthode">2ème méthode</h3>



<p>Dans celle-ci on veut supprimer le bouton ajouter au panier ainsi que le prix. Le mieux est donc de se créer une petite fonction.</p>



<pre class="EnlighterJSRAW" data-enlighter-language="js" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">// On déclare nos nodeList avec des constantes
const addToCart = document.querySelectorAll('.add_to_cart_button'); 
const price = document.querySelectorAll('.price');

// On créer la fonction hideElements et on met en argument nodeLists avec le spread operator ... qui permettra d'accueillir autant de nodeList que nécessaire. Dans notre cas seulement 2

function hideElements(...nodeLists) {

// On teste si la classe home est bien présente dans le body 
 if (document.body.classList.contains("home")){

// La méthode flat() permet de combiner les nodeLists en une seule
  const combineList= nodeLists.flat();

  combineList.forEach(item => item => buttons.remove())
}
}

// On exécute notre fonction en lui passant en argument nos deux nodeList
hideElements(addToCart, price)</pre>



<h2 class="wp-block-heading" id="comment-ajouter-un-fichier-javascript-à-mon-thème-wordpress-">Comment ajouter un fichier Javascript à mon thème WordPress ?</h2>



<p class="has-text-align-center has-medium-font-size"><em>On est content, on a notre code JavaScript, mais on le place où ?</em></p>



<p>Cela dépend des thèmes, certains proposent cette fonctionnalité en natif, d&rsquo;autres non. Vous pouvez bien évidemment passer par un plugin à l&rsquo;instar<a href="https://wordpress.org/plugins/header-footer/" target="_blank" rel="noreferrer noopener"> Header, Footer and Post Injections </a>qui est gratuit et qui fait bien le job.  </p>



<p>Personnellement, j&rsquo;essaie toujours autant que possible de me passer de plugin. Pour ajouter un fichier Javascript à votre thème vous devez ajouter dans votre fichier <strong>functions.php</strong></p>



<pre class="EnlighterJSRAW" data-enlighter-language="php" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">// Dans l'exemple ci-dessous j'ajoute le fichier myscript.js dans le répertoire "js" du thème. Le script s'ajoutera avant la balise &lt;/body>. Si vous souhaitez l'activer dans le head, remplacer false par true

function my_script_js() {
    wp_enqueue_script( 'my-script-js', get_template_directory_uri() . '/js/myscript.js', array(), '1.0', false);
}
add_action( 'wp_enqueue_scripts', 'my_script_js' );
</pre>



<p class="has-text-align-center has-medium-font-size"><em>Et le php alors ??</em></p>



<p>Je sais ce qu&rsquo;on vont me dire les puristes : »Proposer du JavaScript alors qu&rsquo;on peut faire la même chose à travers une fonction Php &#8230; ». Ce n&rsquo;est pas faux.  Mais personnellement je préfère le JavaScript. </p>



<p>Pour le <a href="https://s2prod.net/php/" data-type="category" data-id="20"><strong>Php</strong></a> il faut taper se taper la lecture de la<strong> <a href="https://woocommerce.github.io/code-reference/files/woocommerce-templates-content-product.html#source-view.65" target="_blank" rel="noreferrer noopener">documentation WooCommerce</a></strong> pour savoir sur quel <em>hook </em>est « accroché » le bouton.  Comme je suis un gars sympa 😁 je vous mets le code en Php à ajouter à votre fichier functions.php</p>



<h2 class="wp-block-heading" id="suppression-du-bouton-ajouter-au-panier-uniquement-sur-la-page-daccueil-avec-php">Suppression du bouton ajouter au panier uniquement sur la page d&rsquo;accueil avec Php</h2>



<pre class="EnlighterJSRAW" data-enlighter-language="php" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">// On vérifie avec la fonction is_home() si on est bien sur la home, si c'est le cas on supprime le bouton ajouter au panier

function remove_add_to_cart_buttons() {
  if (is_home()) {
    remove_action('woocommerce_after_shop_loop_item', 'woocommerce_template_loop_add_to_cart');
  }
}

add_action('template_redirect', 'remove_add_to_cart_buttons');
</pre>



<p>Vous voilà armé pour supprimer le bouton ajouter au panier. A vous de choisir votre arme préférée 🤓</p>
]]></content:encoded>
					
					<wfw:commentRss>https://s2prod.net/comment-retirer-le-bouton-ajouter-au-panier-sur-la-page-daccueil-de-mon-woocommerce/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Comment corriger l&#8217;erreur ERR_TOO_MANY_REDIRECTS sur WordPress ?</title>
		<link>https://s2prod.net/comment-corriger-lerreur-err_too_many_redirects-sur-wordpress/</link>
					<comments>https://s2prod.net/comment-corriger-lerreur-err_too_many_redirects-sur-wordpress/#comments</comments>
		
		<dc:creator><![CDATA[s2prod]]></dc:creator>
		<pubDate>Tue, 06 Dec 2022 14:30:00 +0000</pubDate>
				<category><![CDATA[Tuto]]></category>
		<category><![CDATA[Cloudflare Wordpress]]></category>
		<category><![CDATA[err too many redirects]]></category>
		<category><![CDATA[SSL Wordpress]]></category>
		<guid isPermaLink="false">https://s2prod.net/?p=441</guid>

					<description><![CDATA[Quelque soit la manipulation que vous avez effectuée, votre site WordPress ne fonctionne plus. Pour les impatients, voici la solution. Cloudflare + Cpanel + Worpdress : une cohabitation parfois difficile La première fois que j&#8217;ai obtenu cette erreur c&#8217;est quand j&#8217;ai utilisé Cloudflare sur mon blog WordPress afin de masquer mon IP réelle et de [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Quelque soit la manipulation que vous avez effectuée, votre site <a href="https://s2prod.net/wordpress/" data-type="category" data-id="11">WordPress </a>ne fonctionne plus. <br>Pour les impatients, voici la <a href="#err-too-many-redirects">solution</a>.</p>



<h2 class="wp-block-heading">Cloudflare + Cpanel + Worpdress : une cohabitation parfois difficile</h2>



<p>La première fois que j&rsquo;ai obtenu cette erreur c&rsquo;est quand j&rsquo;ai utilisé Cloudflare  sur mon blog WordPress afin de masquer mon IP réelle et de bénéficier des services de minification et de protection des attaques DDos.</p>



<p>Voulant faire l&rsquo;économie d&rsquo;installer un plugin WordPress et n&rsquo;ayant pas laisser Cloudflare préconfigurer la zone DNS, j&rsquo;avais uniquement créé deux champs : Un CNAME et un A.<br></p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="679" height="130" src="https://s2prod.net/wp-content/uploads/2022/11/cloudflare-exemple.png" alt="" class="wp-image-443" srcset="https://s2prod.net/wp-content/uploads/2022/11/cloudflare-exemple.png 679w, https://s2prod.net/wp-content/uploads/2022/11/cloudflare-exemple-300x57.png 300w" sizes="auto, (max-width: 679px) 100vw, 679px" /><figcaption class="wp-element-caption">Exemple de configuration basique pour Cloudflare</figcaption></figure>



<p>La configuration fonctionne très bien mais dès que je l&rsquo;active je me retrouver avec l&rsquo;erreur ERR_TOO_MANY_REDIRECTS.</p>



<h2 class="wp-block-heading" id="err-too-many-redirects">Réparer l&rsquo;erreur ERR_TOO_MANY_REDIRECTS</h2>



<p>Il y a tout un tas d&rsquo;astuces pour palier à ce problème mais dans mon cas de figure, c&rsquo;est à dire Cloudflare + Cpanel + WordPress, la seule qui fonctionne à 100 % est celle proposée ci-dessous.</p>



<p>Dans votre fichier <em>wp-config.php</em> située à la racine de votre site ajoutez les lignes suivantes :</p>



<pre class="EnlighterJSRAW" data-enlighter-language="php" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="ERR_TOO_MANY_REDIRECTS" data-enlighter-group="">define('WP_HOME','https://www.votre-site.tld/');/*Remplacer l'URL par celle de votre site*/
define('WP_SITEURL','https://www.votre-site.tld/');/*Remplacer l'URL par celle de votre site*/
$_SERVER['HTTPS'] = 'on';</pre>
]]></content:encoded>
					
					<wfw:commentRss>https://s2prod.net/comment-corriger-lerreur-err_too_many_redirects-sur-wordpress/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Comment rediriger http vers https ?</title>
		<link>https://s2prod.net/comment-rediriger-http-vers-https/</link>
					<comments>https://s2prod.net/comment-rediriger-http-vers-https/#respond</comments>
		
		<dc:creator><![CDATA[s2prod]]></dc:creator>
		<pubDate>Tue, 29 Nov 2022 14:25:01 +0000</pubDate>
				<category><![CDATA[Tuto]]></category>
		<category><![CDATA[Activer SSL Wordpress]]></category>
		<category><![CDATA[http vers https]]></category>
		<category><![CDATA[sécurité wordpress]]></category>
		<category><![CDATA[SSL Wordpress]]></category>
		<guid isPermaLink="false">https://s2prod.net/?p=433</guid>

					<description><![CDATA[J&#8217;ai choisi de catégoriser cette règle réécriture apache dans WordPress, mais elle parfaitement valable sur un site statique ou sur un autre CMS. Explications rapides Le code ci-dessous est à coller dans un fichier .htaccess à la racine du site. Autre alternative qui fonctionne tout aussi bien Rediriger le trafic http vers https grâce à [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>J&rsquo;ai choisi de catégoriser cette règle réécriture apache dans <a href="https://s2prod.net/wordpress/" data-type="category" data-id="11">WordPress</a>, mais elle parfaitement valable sur un site statique ou sur un autre CMS.</p>



<h2 class="wp-block-heading">Explications rapides</h2>



<ul class="wp-block-list">
<li>Ligne 1:  copier/coller  <strong>RewriteEngine </strong>On si votre .<em>htaccess </em>est vierge. Sur WordPress il est déjà activé par défaut.</li>



<li>La ligne 2 est une condition qui vérifie le trafic n&rsquo;est pas du https alors, il exécute la règle qui suit.</li>



<li>Ligne 3 est une règle qui s&rsquo;applique à tous les fichiers, quelque soit leur extension et les exécutent avec le <a href="https://s2prod.net/comment-ajouter-ssl-et-passer-wordpress-de-http-a-https/" data-type="post" data-id="350">protocole https</a>.</li>
</ul>



<p>Le code ci-dessous est à coller dans un fichier .<em>htaccess </em>à la<strong> racine du site</strong>.</p>



<pre class="EnlighterJSRAW" data-enlighter-language="lighttpd" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">#DEBUT HTTP VERS HTTPS
RewriteEngine On 
RewriteCond %{HTTPS}  !=on 
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L] 
#FIN HTTP VERS HTTPS</pre>



<p>Autre alternative qui fonctionne tout aussi bien</p>



<pre class="EnlighterJSRAW" data-enlighter-language="lighttpd" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">#DEBUT HTTP VERS HTTPS
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
#FIN HTTP VERS HTTPS</pre>



<h2 class="wp-block-heading">Rediriger le trafic http vers https grâce à la fonction wp_redirect</h2>



<pre class="EnlighterJSRAW" data-enlighter-language="php" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">//Fonction à ajouter dans le fichier functions.php de votre thème
if ( !is_ssl() ) {
    wp_redirect('https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'], 301 );
    exit();
}
</pre>



<p>Attention, si vous n&rsquo;utilisez pas de thème en enfant, vos modifications du fichier functions.php seront supprimées.</p>



<p>L&rsquo;idéal serait la création d&rsquo;un plugin regroupant toutes les fonctions dont vous avez besoin :</p>



<p></p>



<pre class="EnlighterJSRAW" data-enlighter-language="php" data-enlighter-theme="" data-enlighter-highlight="" data-enlighter-linenumbers="" data-enlighter-lineoffset="" data-enlighter-title="" data-enlighter-group="">&lt;?php
/*
Plugin Name: Mes fonctions perso
Description: Toutes mes fonctions de personnalisations de WordPress.
Author: S2prod
Version : 1.0.0
*/

//Fonction à ajouter dans le fichier functions.php de votre thème
if ( !is_ssl() ) {
    wp_redirect('https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'], 301 );
    exit();
}
</pre>



<p>Article mis à jour le : 19/01/2023</p>
]]></content:encoded>
					
					<wfw:commentRss>https://s2prod.net/comment-rediriger-http-vers-https/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
