<?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>wordpress &#8211; Développeur Web</title>
	<atom:link href="https://www.julesgaston.fr/category/developpement/wordpress/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.julesgaston.fr</link>
	<description>Sites Internet, logiciels, accompagnement marketing</description>
	<lastBuildDate>Tue, 11 Feb 2025 18:02:36 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.7.2</generator>
	<item>
		<title>Créer un thème FSE Gutenberg sur WordPress : guide technique avec exemples</title>
		<link>https://www.julesgaston.fr/creer-un-theme-fse-gutenberg-sur-wordpress-guide-technique-avec-exemples/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=creer-un-theme-fse-gutenberg-sur-wordpress-guide-technique-avec-exemples</link>
					<comments>https://www.julesgaston.fr/creer-un-theme-fse-gutenberg-sur-wordpress-guide-technique-avec-exemples/#respond</comments>
		
		<dc:creator><![CDATA[camillejg]]></dc:creator>
		<pubDate>Fri, 31 Jan 2025 16:45:00 +0000</pubDate>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">https://www.julesgaston.fr/?p=1838</guid>

					<description><![CDATA[Lancé en 2021, le Full Site Editing (FSE) de WordPress révolutionne la personnalisation des thèmes. Fini le temps où il fallait tout coder en PHP, maintenant on construit des thèmes principalement avec des fichiers JSON et des blocs, grâce à une interface visuelle intuitive et permettant d&#8217;utiliser Gutenberg pour l&#8217;ensemble des contenus du site. Dans [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Lancé en 2021, le <a href="https://www.ws-interactive.fr/blog/full-site-editing-avec-wordpress/" target="_blank" rel="noreferrer noopener">Full Site Editing (FSE) de WordPress</a> révolutionne la personnalisation des thèmes. Fini le temps où il fallait tout coder en PHP, maintenant on construit des thèmes principalement avec des fichiers JSON et des blocs, grâce à une interface visuelle intuitive et permettant d&rsquo;utiliser Gutenberg pour l&rsquo;ensemble des contenus du site.</p>



<p>Dans cet article, nous allons voir comment mettre en place un thème FSE, avec des extraits de code pour bien comprendre.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">1. Créer la Structure de Base du Thème</h2>



<p>Un thème WordPress FSE suit une structure différente d’un thème classique. Voici l’arborescence minimale :</p>



<pre class="wp-block-code"><code>mon-theme-fse/
│── style.css
│── theme.json
│── index.php
│── templates/
│   ├── index.html
│   ├── single.html
│── parts/
│   ├── header.html
│   ├── footer.html
</code></pre>



<ul class="wp-block-list">
<li><code>style.css</code> : le fichier d’en-tête du thème</li>



<li><code>theme.json</code> : la configuration du thème</li>



<li><code>index.php</code> : fichier obligatoire, même si presque vide</li>



<li><code>templates/</code> : contient les modèles de pages</li>



<li><code>parts/</code> : contient les parties réutilisables comme le header et le footer</li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">2. Ajouter un <code>theme.json</code></h2>



<p>Le fichier <code>theme.json</code> est au cœur d’un thème FSE. Il permet de gérer les couleurs, la typographie, la mise en page, et bien plus encore.</p>



<p>Exemple minimal :</p>



<pre class="wp-block-code"><code>{
  "version": 2,
  "settings": {
    "color": {
      "palette": &#91;
        { "name": "Noir", "slug": "noir", "color": "#000000" },
        { "name": "Blanc", "slug": "blanc", "color": "#ffffff" }
      ]
    },
    "typography": {
      "fontSize": &#91;
        { "name": "Petit", "slug": "small", "size": "12px" },
        { "name": "Grand", "slug": "large", "size": "24px" }
      ]
    }
  },
  "styles": {
    "color": {
      "background": "#ffffff",
      "text": "#000000"
    }
  }
}
</code></pre>



<p>Ce fichier définit une palette de couleurs et des tailles de texte personnalisées accessibles depuis l’éditeur Gutenberg.</p>



<p>Pour en savoir plus sur l&rsquo;ensemble des paramètres disponibles sur ce fichier JSON, <a href="https://developer.wordpress.org/block-editor/how-to-guides/themes/global-settings-and-styles/" target="_blank" rel="noreferrer noopener">rendez-vous sur le site de WordPress</a>.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">3. Construire les Templates avec des Blocs</h2>



<p>Le FSE utilise des fichiers <code>.html</code> dans <code>templates/</code> et <code>parts/</code> au lieu des classiques <code>header.php</code> et <code>footer.php</code>.</p>



<p>Exemple de <code>header.html</code> :</p>



<pre class="wp-block-code"><code>&lt;!-- wp:group {"tagName":"header","align":"full"} --&gt;
&lt;header class="site-header"&gt;
  &lt;!-- wp:site-title /--&gt;
  &lt;!-- wp:navigation /--&gt;
&lt;/header&gt;
&lt;!-- /wp:group --&gt;
</code></pre>



<p>Exemple de <code>index.html</code> :</p>



<pre class="wp-block-code"><code>&lt;!-- wp:template-part {"slug":"header"} /--&gt;
&lt;!-- wp:post-content /--&gt;
&lt;!-- wp:template-part {"slug":"footer"} /--&gt;
</code></pre>



<p>Ici, on inclut un header, le contenu de la page et un footer. Le contenu de la page sera ensuite administré depuis Gutenberg (ou tout autre éditeur).<br>Ce template pourra aussi être customisé directement depuis l&rsquo;interface de gestion de votre FSE, de manière visuelle. De même pour les template-part, qui sera accessible via la gestion des compositions du thème.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">4. Activer le Thème</h2>



<p>Ajoutez ce code minimal dans <code>style.css</code> pour que WordPress reconnaisse le thème :</p>



<pre class="wp-block-code"><code>/*
Theme Name: Mon super thème FSE
Author: Camille JG
Author URI: https://www.julesgaston.fr/
Version: 1.0
*/
</code></pre>



<p>Puis, allez dans <strong>Apparence &gt; Thèmes</strong>, activez votre thème et testez-le dans l’éditeur de site.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">5. Personnaliser avec des Blocs</h2>



<p>Pour ajouter un design plus avancé, utilisez des blocs comme <code>cover</code>, <code>columns</code>, ou <code>buttons</code>. L&rsquo;ensemble des blocs disponibles sont <a href="https://wordpress.org/documentation/article/blocks-list/" target="_blank" rel="noreferrer noopener nofollow">documentés sur le site WordPress</a>.</p>



<p>Exemple d’un <code>footer.html</code> :</p>



<pre class="wp-block-code"><code>&lt;!-- wp:group {"tagName":"footer","align":"full"} --&gt;
&lt;footer class="site-footer"&gt;
  &lt;!-- wp:paragraph --&gt;
  &lt;p&gt;© 2024 - Mon site&lt;/p&gt;
  &lt;!-- /wp:paragraph --&gt;
&lt;/footer&gt;
&lt;!-- /wp:group --&gt;
</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p>Créer un thème FSE avec Gutenberg est devenu bien plus simple qu’avec les thèmes classiques. Tout passe par du HTML et un fichier JSON, ce qui facilite la personnalisation pour les non-développeurs une fois le thème mise en place.</p>



<p><img src="https://s.w.org/images/core/emoji/15.0.3/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Pour en savoir plus sur les possibilités du Full Site Editing avec Gutenberg, rendez-vous sur le site de l&rsquo;<a href="https://www.ws-interactive.fr/" target="_blank" rel="noreferrer noopener">agence WordPress WS Interactive</a>.</p>



<p><img src="https://s.w.org/images/core/emoji/15.0.3/72x72/1f449.png" alt="👉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Testez-le et explorez l’éditeur de site pour peaufiner votre design !</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.julesgaston.fr/creer-un-theme-fse-gutenberg-sur-wordpress-guide-technique-avec-exemples/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Comment installer reCAPTCHA v3 sur Contact Form 7</title>
		<link>https://www.julesgaston.fr/installer-recaptcha-v3-contact-form-7/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=installer-recaptcha-v3-contact-form-7</link>
					<comments>https://www.julesgaston.fr/installer-recaptcha-v3-contact-form-7/#comments</comments>
		
		<dc:creator><![CDATA[camillejg]]></dc:creator>
		<pubDate>Wed, 01 Apr 2020 12:40:41 +0000</pubDate>
				<category><![CDATA[Autres]]></category>
		<category><![CDATA[Développement]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[contact form 7]]></category>
		<category><![CDATA[recaptcha]]></category>
		<guid isPermaLink="false">https://www.julesgaston.fr/?p=1672</guid>

					<description><![CDATA[Après un premier article détaillant comment installer reCaptcha v2 sur le populaire plugin Contact Form 7 sur WordPress, il est désormais grand temps de se mettre à jour, recaptcha v2 n&#8217;étant plus pris en charge. Pour ce faire, rien de plus simple que ce que je vous avais présenté lors de ce précédent article. L&#8217;installation [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Après un premier article détaillant comment installer reCaptcha v2 sur le populaire plugin Contact Form 7 sur WordPress, il est désormais grand temps de se mettre à jour, recaptcha v2 n&rsquo;étant plus pris en charge.</p>



<span id="more-1672"></span>



<p>Pour ce faire, rien de plus simple que ce que je vous avais présenté lors de ce <a rel="noreferrer noopener" href="https://www.julesgaston.fr/comment-installer-recaptcha-sur-contact-form-7/" target="_blank">précédent article</a>. L&rsquo;installation de reCAPTCHA ne nécessite que deux étapes à la portée de tous. Une fois Contact Form 7 installé sur votre site :</p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img fetchpriority="high" decoding="async" width="631" height="519" src="https://www.julesgaston.fr/wp-content/uploads/2020/04/recaptcha-v3-formulaire.png" alt="" class="wp-image-1674" srcset="https://www.julesgaston.fr/wp-content/uploads/2020/04/recaptcha-v3-formulaire.png 631w, https://www.julesgaston.fr/wp-content/uploads/2020/04/recaptcha-v3-formulaire-300x247.png 300w" sizes="(max-width: 631px) 100vw, 631px" /></figure></div>



<p>Créez votre clé API reCAPTCHA version depuis votre compte Google : <a rel="noreferrer noopener" href="https://www.google.com/recaptcha/admin/create" target="_blank">https://www.google.com/recaptcha/admin/create</a>. Choisissez bien reCaptcha V3, la version 2 n&rsquo;étant plus disponible sur Contact Form 7.</p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img decoding="async" width="1005" height="679" src="https://www.julesgaston.fr/wp-content/uploads/2020/04/recaptcha-v3-cles.png" alt="" class="wp-image-1675" srcset="https://www.julesgaston.fr/wp-content/uploads/2020/04/recaptcha-v3-cles.png 1005w, https://www.julesgaston.fr/wp-content/uploads/2020/04/recaptcha-v3-cles-300x203.png 300w, https://www.julesgaston.fr/wp-content/uploads/2020/04/recaptcha-v3-cles-768x519.png 768w" sizes="(max-width: 1005px) 100vw, 1005px" /></figure></div>



<p>Une fois votre demande envoyée, vous obtenez instantanément votre du site et votre clé secrète. Rendez-vous désormais dans votre administration WordPress, allez dans « Contact », puis « Intégration ». Cliquez sur « Configuration de l&rsquo;intégration » dans le cadre reCaptcha, puis saisissez vos clé.  </p>



<div class="wp-block-image"><figure class="aligncenter size-large"><img decoding="async" width="520" height="355" src="https://www.julesgaston.fr/wp-content/uploads/2020/04/recaptcha-v3-contactform7.png" alt="" class="wp-image-1676" srcset="https://www.julesgaston.fr/wp-content/uploads/2020/04/recaptcha-v3-contactform7.png 520w, https://www.julesgaston.fr/wp-content/uploads/2020/04/recaptcha-v3-contactform7-300x205.png 300w" sizes="(max-width: 520px) 100vw, 520px" /></figure></div>



<p>Le tour est joué ! Vous pouvez dire adieu aux spams intempestifs sur votre site <img src="https://s.w.org/images/core/emoji/15.0.3/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.julesgaston.fr/installer-recaptcha-v3-contact-form-7/feed/</wfw:commentRss>
			<slash:comments>7</slash:comments>
		
		
			</item>
		<item>
		<title>Installer une réécriture d&#8217;URL personnalisée avec paramètre sur WordPress</title>
		<link>https://www.julesgaston.fr/installer-une-reecriture-durl-personnalisee-avec-parametre-sur-wordpress/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=installer-une-reecriture-durl-personnalisee-avec-parametre-sur-wordpress</link>
					<comments>https://www.julesgaston.fr/installer-une-reecriture-durl-personnalisee-avec-parametre-sur-wordpress/#respond</comments>
		
		<dc:creator><![CDATA[camillejg]]></dc:creator>
		<pubDate>Wed, 05 Jun 2019 20:38:41 +0000</pubDate>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[rewrite_rule]]></category>
		<category><![CDATA[urlrewriting]]></category>
		<guid isPermaLink="false">https://www.julesgaston.fr/?p=1634</guid>

					<description><![CDATA[La réécriture d&#8217;adresses est toujours un indispensable du référencement naturel, et peut s&#8217;avérer utile à mettre en place lorsque l&#8217;on développe des pages sur -mesure ou des plugins WordPress. Pour ce faire, et lorsque vous souhaitez passer certains paramètres dans vos URL, il est indispensable de suivre certaines règles éditées par le CMS. Ces déclarations [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>La réécriture d&rsquo;adresses est toujours un indispensable du référencement naturel, et peut s&rsquo;avérer utile à mettre en place lorsque l&rsquo;on développe des pages sur -mesure ou des plugins WordPress.</p>



<span id="more-1634"></span>



<p>Pour ce faire, et lorsque vous souhaitez passer certains paramètres dans vos URL, il est indispensable de suivre certaines règles éditées par le CMS. Ces déclarations sont à faire soit dans votre plugin, soit dans le fichier functions.php de votre thème.<br>Premièrement, la déclaration des variables, qui autorise leur utilisation des les URL chargées.</p>



<pre class="wp-block-code"><code>// Installation de la variable
function wpd_add_query_vars( $qvars ) {
  $qvars[] = 'ma_variable';
  return $qvars;
}
add_filter( 'query_vars', 'wpd_add_query_vars' );</code></pre>



<p>Deuxième étape, la définition de ma règle de réécriture. Pour l&rsquo;exemple ci-dessous, je souhaites que toutes les pages appelées « /mon_url/ », et suivies de n&rsquo;importe quoi d&rsquo;autre, appeleront ma page « mon_url » définie dans mes pages WordPress. J&rsquo;y ajoutes la récupération de ma variable, qui va ici aller chercher le premier paramètre situé après « mon_url/ ».</p>



<pre class="wp-block-code"><code>// Initialisation de la règle de réécriture
function wpd_page_rewrite(){
    add_rewrite_rule(
        '^mon_url/([^/]*)?',
        'index.php?pagename=mon_url&amp;ma_variable=$matches[1]',
        'top'
    );
}
add_action( 'init', 'wpd_page_rewrite' );</code></pre>



<p>Votre réécriture est prête. Reste plus qu&rsquo;à la déclarer à WordPress afin qu&rsquo;elle soit bien prise en compte. Attention, sans cette réinitialisation des règles de réécriture, votre rewriting personnalisé ne sera jamais pris en compte.<br>Dans cette fonction, j&rsquo;ai ajouté un test sur les règles existantes afin que la réinitialisation ne soit prise en compte que dans le cas où « mon_url » n&rsquo;a jamais été prise en compte.</p>



<pre class="wp-block-code"><code>// Installation de la réécriture dans les règles de rewriting de WordPress
function my_flush_rules()
{
    $rules = get_option( 'rewrite_rules' );
    if ( ! isset( $rules['(mon_url)/(\d*)$'] ) ) {
        global $wp_rewrite; $wp_rewrite->flush_rules();
    }
}
add_action( 'wp_loaded','my_flush_rules' );</code></pre>



<p>Et c&rsquo;est gagné ! A vous les belles URL réécrites <img src="https://s.w.org/images/core/emoji/15.0.3/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>



<h2 class="wp-block-heading">Récapitulatif du code à créer :</h2>



<pre class="wp-block-code"><code>// Installation de la variable
function wpd_add_query_vars( $qvars ) {
  $qvars[] = 'ma_variable';
  return $qvars;
}
add_filter( 'query_vars', 'wpd_add_query_vars' );

// Initialisation de la règle de réécriture
function wpd_page_rewrite(){
    add_rewrite_rule(
        '^mon_url/([^/]*)?',
        'index.php?pagename=mon_url&amp;ma_variable=$matches[1]',
        'top'
    );
}
add_action( 'init', 'wpd_page_rewrite' );

// Installation de la réécriture dans les règles de rewriting de WordPress
function my_flush_rules()
{
    $rules = get_option( 'rewrite_rules' );
    if ( ! isset( $rules['(mon_url)/(\d*)$'] ) ) {
        global $wp_rewrite; $wp_rewrite->flush_rules();
    }
}
add_action( 'wp_loaded','my_flush_rules' );</code></pre>
]]></content:encoded>
					
					<wfw:commentRss>https://www.julesgaston.fr/installer-une-reecriture-durl-personnalisee-avec-parametre-sur-wordpress/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Personnaliser le Widget moteur de recherche de WordPress</title>
		<link>https://www.julesgaston.fr/personnaliser-le-widget-moteur-de-recherche-de-wordpress/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=personnaliser-le-widget-moteur-de-recherche-de-wordpress</link>
					<comments>https://www.julesgaston.fr/personnaliser-le-widget-moteur-de-recherche-de-wordpress/#respond</comments>
		
		<dc:creator><![CDATA[camillejg]]></dc:creator>
		<pubDate>Mon, 28 Jan 2019 21:40:49 +0000</pubDate>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[widget]]></category>
		<guid isPermaLink="false">https://www.julesgaston.fr/?p=231</guid>

					<description><![CDATA[WordPress donne la possibilité, de manière assez simple, d&#8217;ajouter des widgets afin de construire votre site Internet. Ceux-ci peuvent être des listes d&#8217;articles, des listes de pages, des menus, du html personnalisé, un moteur de recherche, &#8230; La présentation par défaut de ces éléments est définie par WordPress, et il est souvent nécessaire de jouer [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>WordPress donne la possibilité, de manière assez simple, d&rsquo;ajouter des widgets afin de construire votre site Internet. Ceux-ci peuvent être des listes d&rsquo;articles, des listes de pages, des menus, du html personnalisé, un moteur de recherche, &#8230;</p>



<span id="more-231"></span>



<p>La présentation par défaut de ces éléments est définie par WordPress, et il est souvent nécessaire de jouer avec les possibilités de WP afin de les customiser et obtenir le rendu que vous souhaitez.</p>



<p>Pour ce faire, il est nécessaire d&rsquo;insérer le code suivant dans le fichier functions.php de votre thème, et personnaliser votre formulaire.</p>



<blockquote><pre class="wp-block-preformatted"> // A inclure dans votre functions.php<br>function your_search_form( $form ) {<br>      $form = '&lt;form role="search" method="get" id="search-form" action="' . home_url( '/' ) . '" &gt;
     &lt;input type="search" value="' . get_search_query() . '" name="s" id="s" placeholder="Rechercher" /&gt;
     &lt;input type="submit" id="searchsubmit" value="Ok" /&gt;
     &lt;/form&gt;';<br>      return $form;<br> }<br>
add_filter( 'get_search_form', 'your_search_form' );
</pre></blockquote>
]]></content:encoded>
					
					<wfw:commentRss>https://www.julesgaston.fr/personnaliser-le-widget-moteur-de-recherche-de-wordpress/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Comment installer reCAPTCHA v2 sur Contact Form 7</title>
		<link>https://www.julesgaston.fr/comment-installer-recaptcha-sur-contact-form-7/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=comment-installer-recaptcha-sur-contact-form-7</link>
					<comments>https://www.julesgaston.fr/comment-installer-recaptcha-sur-contact-form-7/#comments</comments>
		
		<dc:creator><![CDATA[camillejg]]></dc:creator>
		<pubDate>Tue, 04 Dec 2018 21:25:45 +0000</pubDate>
				<category><![CDATA[Autres]]></category>
		<category><![CDATA[Développement]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[contact form 7]]></category>
		<category><![CDATA[recaptcha]]></category>
		<guid isPermaLink="false">https://www.julesgaston.fr/?p=224</guid>

					<description><![CDATA[Vous en avez marre de recevoir tout un tas de spams provenant de vos installations Wordpress ? Et vous utilisez Contact Form 7 pour la gestion de vos formulaires, notamment vos formulaires de contact.]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-group"><div class="wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow">
<div class="wp-block-group"><div class="wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow">
<p>Vous en avez marre de recevoir tout un tas de spams provenant de vos installations WordPress ? Et vous utilisez Contact Form 7 pour la gestion de vos formulaires, notamment vos formulaires de contact.</p>



<span id="more-224"></span>



<p class="has-text-color has-background has-text-align-center has-normal-font-size has-very-light-gray-color has-vivid-red-background-color">Attention : recaptcha V2 n&rsquo;est plus disponible sur Contact Form 7 !<br>Un nouvel article expliquant l&rsquo;intégration de recaptcha V3 a été rédigé, vous le trouverez ici : <a href="https://www.julesgaston.fr/installer-recaptcha-v3-contact-form-7/"><strong>Installation reCaptcha version 3</strong></a></p>



<p>L&rsquo;installation de reCAPTCHA ne prends pas plus de 2 minutes, et se déroule en trois étapes toute simple :</p>



<ul class="wp-block-list"><li>Créer une clé API reCAPTCHA V2 avec case à cocher en vous rendant sur votre compte Google : <a href="https://www.google.com/recaptcha/admin#list" target="_blank" rel="noopener noreferrer">https://www.google.com/recaptcha/admin#list</a>. Attention de bien choisir reCaptcha V2, la V3 (mode invisible) n&rsquo;étant à ce jour pas prise en compte par Contact Form 7 ;</li><li>Une fois la clé créée, vous obtenez une « Clé du site », et une clé secrète. Rendez-vous dans le menu « Intégration » de Contact Form 7, sur lequel vous pourrez alors ajouter vos clés ;</li><li>Vous pouvez désormais ajouter le tag&nbsp; [recaptcha] en bas de vos formulaire, généralement avant le bouton d&rsquo;envoi</li></ul>



<p>Et voilà, fini les spams intempestifs !</p>
</div></div>
</div></div>
]]></content:encoded>
					
					<wfw:commentRss>https://www.julesgaston.fr/comment-installer-recaptcha-sur-contact-form-7/feed/</wfw:commentRss>
			<slash:comments>8</slash:comments>
		
		
			</item>
		<item>
		<title>WordPress : configurer l&#8217;envoi des mails au format HTML</title>
		<link>https://www.julesgaston.fr/wordpress-configurer-lenvoi-des-mails-au-format-html/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=wordpress-configurer-lenvoi-des-mails-au-format-html</link>
					<comments>https://www.julesgaston.fr/wordpress-configurer-lenvoi-des-mails-au-format-html/#respond</comments>
		
		<dc:creator><![CDATA[camillejg]]></dc:creator>
		<pubDate>Fri, 17 Aug 2018 09:13:10 +0000</pubDate>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[mails]]></category>
		<guid isPermaLink="false">https://www.julesgaston.fr/?p=221</guid>

					<description><![CDATA[Par défaut,les emails envoyés grâce à la fonction wp_mail() de WordPress sont envoyés au format texte brut. Gênant lorsque l&#8217;on souhaite envoyer des mails qui ne ressemblent pas à un texte froid, noir sur fond blanc 😉 Afin de procéder à cette modification, et ouvrir la possibilité d&#8217;envoyer des emails au format html, un simple [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Par défaut,les emails envoyés grâce à la fonction wp_mail() de WordPress sont envoyés au format texte brut. Gênant lorsque l&rsquo;on souhaite envoyer des mails qui ne ressemblent pas à un texte froid, noir sur fond blanc <img src="https://s.w.org/images/core/emoji/15.0.3/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" /><span id="more-221"></span></p>
<p>Afin de procéder à cette modification, et ouvrir la possibilité d&rsquo;envoyer des emails au format html, un simple initialisation est nécessaire. Vous pouvez l&rsquo;ajouter dans votre fichier functions.php, ou directement dans un plugin.</p>
<blockquote>
<pre>// A inclure dans votre functions.php ou dans votre plugin
function wp_set_mail_to_html(){
    return "text/html";
}
add_filter( 'wp_mail_content_type','wp_set_mail_to_html' );
</pre>
</blockquote>
<p>Rien de plus simple !</p>
<p>Et pour réaliser l&rsquo;envoi de vos mails, je vous conseille l&rsquo;utilisation d&rsquo;un SMTP de type <a href="_wp_link_placeholder" data-wplink-edit="true">Brevo</a> afin de sécuriser vos envois et obtenir une analyse détaillée de vos taux de réception et d&rsquo;ouverture.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.julesgaston.fr/wordpress-configurer-lenvoi-des-mails-au-format-html/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Ajouter une URL personnalisée avec paramètres dans WordPress</title>
		<link>https://www.julesgaston.fr/ajouter-une-url-personnalisee-avec-parametres-dans-wordpress/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ajouter-une-url-personnalisee-avec-parametres-dans-wordpress</link>
					<comments>https://www.julesgaston.fr/ajouter-une-url-personnalisee-avec-parametres-dans-wordpress/#respond</comments>
		
		<dc:creator><![CDATA[camillejg]]></dc:creator>
		<pubDate>Tue, 17 Apr 2018 09:45:20 +0000</pubDate>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[rewriting]]></category>
		<guid isPermaLink="false">https://www.julesgaston.fr/?p=192</guid>

					<description><![CDATA[Lors de développements spécifiques, notamment pour la mise en place de pages pour les types de post personnalisés que vous allez créer, il est nécessaire d&#8217;initialiser la nouvelle URL et les nouveaux paramètres que vous souhaitez récupérer dans votre code PHP. Il y a de multiples manières de mettre en place le rewriting sur des [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Lors de développements spécifiques, notamment pour la mise en place de pages pour les types de post personnalisés que vous allez créer, il est nécessaire d&rsquo;initialiser la nouvelle URL et les nouveaux paramètres que vous souhaitez récupérer dans votre code PHP.<span id="more-192"></span></p>
<p>Il y a de multiples manières de mettre en place le rewriting sur des url personnalisées, celle-ci fonctionne très bien. La partager me permet aussi de m&rsquo;en faire un mémo et ne pas avoir à rechercher dans les développements d&rsquo;anciens sites Internet afin de remettre en place ce bout de code sur de nouveaux sites ;).</p>
<p>Pour cela, quelques lignes suffisent. A inclure dans le fichier functions.php de votre thème, ou directement dans le plugin que vous êtes en train de développer.</p>
<blockquote>
<pre>/* Initialisation de la variable que je souhaites récupérer */
function wpd_add_query_vars( $qvars ) {
    $qvars[] = 'mavariable';
    return $qvars;
}
add_filter( 'query_vars', 'wpd_add_query_vars' );

/* Initialisation du rewriting de l'URL */
function wpd_page_rewrite(){
    add_rewrite_rule( '^mapage/([^/]*)?', 'index.php?pagename=mapage&amp;mavariable=$matches[1]', 'top' );
}
add_action( 'init', 'wpd_page_rewrite' );</pre>
</blockquote>
<p>Une fois le code en place dans mon functions.php, rendez-vous sur les réglages, puis Permaliens, et cliquez sur « Enregistrer les modifications » afin que votre bout de code soit bien pris en compte.</p>
<p>Enfin, pour récupérer la valeur de votre variable « mavariable », utilisez la fonction get_query_var :</p>
<blockquote>
<pre>$variable = get_query_var('mavariable');</pre>
</blockquote>
]]></content:encoded>
					
					<wfw:commentRss>https://www.julesgaston.fr/ajouter-une-url-personnalisee-avec-parametres-dans-wordpress/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Cacher la barre d&#8217;outil d&#8217;administration sur WordPress pour certains utilisateurs</title>
		<link>https://www.julesgaston.fr/cacher-la-barre-doutil-dadministration-sur-wordpress-pour-certains-utilisateurs/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=cacher-la-barre-doutil-dadministration-sur-wordpress-pour-certains-utilisateurs</link>
					<comments>https://www.julesgaston.fr/cacher-la-barre-doutil-dadministration-sur-wordpress-pour-certains-utilisateurs/#comments</comments>
		
		<dc:creator><![CDATA[camillejg]]></dc:creator>
		<pubDate>Fri, 30 Mar 2018 07:47:32 +0000</pubDate>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[admin]]></category>
		<guid isPermaLink="false">https://www.julesgaston.fr/?p=185</guid>

					<description><![CDATA[Par défaut, lors de la création de d&#8217;utilisateurs sur WordPress, la barre d&#8217;outil d&#8217;administration leur est affichée en haut de page, qu&#8217;importe leur rôle et leurs droits. Lorsque vous gérez des comptes membres qui n&#8217;ont aucun intérêt à avoir un accès à l&#8217;espace d&#8217;administration, il peut donc être intéressant de ne pas leur afficher cette [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Par défaut, lors de la création de d&rsquo;utilisateurs sur WordPress, la barre d&rsquo;outil d&rsquo;administration leur est affichée en haut de page, qu&rsquo;importe leur rôle et leurs droits. Lorsque vous gérez des comptes membres qui n&rsquo;ont aucun intérêt à avoir un accès à l&rsquo;espace d&rsquo;administration, il peut donc être intéressant de ne pas leur afficher cette barre d&rsquo;outil.<span id="more-185"></span></p>
<p>Il existe sur WordPress une fonction assez simple permettant de gérer l&rsquo;affichage. Ce bout de code est à insérer dans votre plugin en développement, ou directement dans le fichier functions.php de votre thème.</p>
<blockquote>
<pre>add_action('after_setup_theme', 'remove_admin_bar');
function remove_admin_bar() {
    if (!current_user_can('administrator') &amp;&amp; !is_admin()) {
        show_admin_bar(false);
    }
}</pre>
</blockquote>
<p>Ce code va donc cacher la barre d&rsquo;outil d&rsquo;administration pour tous les utilisateurs n&rsquo;ayant pas le rôle Admin.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.julesgaston.fr/cacher-la-barre-doutil-dadministration-sur-wordpress-pour-certains-utilisateurs/feed/</wfw:commentRss>
			<slash:comments>5</slash:comments>
		
		
			</item>
		<item>
		<title>Configurer un SMTP sur WordPress sans plugin</title>
		<link>https://www.julesgaston.fr/configurer-un-smtp-sur-wordpress-sans-plugin/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=configurer-un-smtp-sur-wordpress-sans-plugin</link>
					<comments>https://www.julesgaston.fr/configurer-un-smtp-sur-wordpress-sans-plugin/#comments</comments>
		
		<dc:creator><![CDATA[camillejg]]></dc:creator>
		<pubDate>Tue, 27 Mar 2018 13:07:31 +0000</pubDate>
				<category><![CDATA[Développement]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[mailing]]></category>
		<category><![CDATA[smtp]]></category>
		<guid isPermaLink="false">https://www.julesgaston.fr/?p=181</guid>

					<description><![CDATA[Depuis que les grands fournisseurs d&#8217;adresse emails ont durci les règles sur la réception des emails, la configuration d&#8217;un SMTP est devenu incontournable sur tous les sites Internet qui font de l&#8217;envoi transactionnel ou commercial. D&#8217;une part pour sécuriser les envois, et d&#8217;autre part pour s&#8217;approcher d&#8217;un taux de réception des emails proche de 100%. [&#8230;]]]></description>
										<content:encoded><![CDATA[
<div class="wp-block-group"><div class="wp-block-group__inner-container is-layout-flow wp-block-group-is-layout-flow">
<p>Depuis que les grands fournisseurs d&rsquo;adresse emails ont durci les règles sur la réception des emails, la configuration d&rsquo;un SMTP est devenu incontournable sur tous les sites Internet qui font de l&rsquo;envoi transactionnel ou commercial. D&rsquo;une part pour sécuriser les envois, et d&rsquo;autre part pour s&rsquo;approcher d&rsquo;un taux de réception des emails proche de 100%.</p>



<span id="more-181"></span>



<p>Sur WordPress, de nombreux plugins permettent d&rsquo;effectuer cette configuration de manière assez simple. Mais la solution technique est elle aussi très simple et rapide à mettre en place, et permet d&rsquo;éviter l&rsquo;installation d&rsquo;un plugin supplémentaire sur votre site.</p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img loading="lazy" decoding="async" width="728" height="90" src="https://www.julesgaston.fr/wp-content/uploads/2018/03/Marketing-Platform.jpg" alt="" class="wp-image-1846" srcset="https://www.julesgaston.fr/wp-content/uploads/2018/03/Marketing-Platform.jpg 728w, https://www.julesgaston.fr/wp-content/uploads/2018/03/Marketing-Platform-300x37.jpg 300w, https://www.julesgaston.fr/wp-content/uploads/2018/03/Marketing-Platform-150x19.jpg 150w" sizes="auto, (max-width: 728px) 100vw, 728px" /></figure></div>


<p>Pour ce faire, WordPress propose la fonction phpmailer_init(), qui se configure ainsi:</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<pre class="wp-block-preformatted">add_action( 'phpmailer_init', 'my_phpmailer_configuration' );
function my_phpmailer_configuration( $phpmailer ) {
    $phpmailer-&gt;isSMTP();     
    $phpmailer-&gt;Host = 'smtp.exemple.com';
    $phpmailer-&gt;SMTPAuth = true; // Indispensable pour forcer l'authentification
    $phpmailer-&gt;Port = 465;
    $phpmailer-&gt;Username = 'utilisateur';
    $phpmailer-&gt;Password = 'motdepasse';

    // Configurations complémentaires
    //$phpmailer-&gt;SMTPSecure = "ssl"; // Sécurisation du serveur SMTP : ssl ou tls
    //$phpmailer-&gt;From = "wordpress@exemple.com"; // Adresse email d'envoi des mails
    //$phpmailer-&gt;FromName = "Nom Exemple"; // Nom affiché lors de l'envoi du mail
}</pre>
</blockquote>



<p>Ce code est à ajouter dans le fichier functions.php de votre thème WordPress.</p>



<h2 class="wp-block-heading">Quel service SMTP choisir ?</h2>



<p>Vous ne savez quel service SMTP choisir, voici une liste non-exhaustive de quelques services performants et avec lesquels j&rsquo;ai pu travailler sur mes différents projets :</p>



<ul class="wp-block-list">
<li>Mailjet (service Français)</li>



<li><a href="https://www.brevo.com/?tap_a=30591-fb13f0&amp;tap_s=792183-6af024" target="_blank" rel="noreferrer noopener">Sendinblue</a> (service Français)</li>



<li><a href="https://aws.amazon.com/fr/ses/" target="_blank" rel="noopener noreferrer">Amazon Web Services &#8211; SES</a> (Simple Email Services)</li>
</ul>
</div></div>
]]></content:encoded>
					
					<wfw:commentRss>https://www.julesgaston.fr/configurer-un-smtp-sur-wordpress-sans-plugin/feed/</wfw:commentRss>
			<slash:comments>9</slash:comments>
		
		
			</item>
	</channel>
</rss>
