{"id":372138,"date":"2023-05-15T13:38:00","date_gmt":"2023-05-15T10:38:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=372138"},"modified":"2023-05-15T13:38:07","modified_gmt":"2023-05-15T10:38:07","slug":"comment-afficher-le-temps-de-lecture-estime-sur-les-articles-de-blog","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/fr\/comment-afficher-le-temps-de-lecture-estime-sur-les-articles-de-blog\/","title":{"rendered":"Comment afficher le temps de lecture estim\u00e9 sur les articles de blog"},"content":{"rendered":"\n<p>Si vous g\u00e9rez un <a href=\"https:\/\/themewp.inform.click\/fr\/comment-creer-un-article-de-blog-wordpress-genial\/\" title=\"blog WordPress\">blog WordPress<\/a>, vous essayez probablement de trouver diff\u00e9rents plugins et extraits afin de garder vos visiteurs occup\u00e9s et de les encourager \u00e0 lire vos messages sans cliquer.<\/p>\n<p>De nos jours, les visiteurs souhaitent souvent obtenir le plus d&rsquo;informations possible en parcourant simplement une page. L&rsquo;affichage du temps de lecture estim\u00e9 d&rsquo;un article est tr\u00e8s pratique pour cela. De cette fa\u00e7on, un visiteur saura combien de temps il lui faut pour obtenir des informations en lisant un sujet qui l&rsquo;int\u00e9resse. \u00c0 son tour, cela encouragera \u00e9galement les r\u00e9dacteurs de blogs \u00e0 r\u00e9diger des articles qui seront plus int\u00e9ressants et prendront moins de temps. De plus, en tant que propri\u00e9taire de blog, vous serez en mesure de d\u00e9terminer la meilleure approche si vous v\u00e9rifiez les mesures et comparez le temps que les visiteurs passent sur diff\u00e9rents messages.<\/p>\n<p>Certains plugins couvrent certes cette fonctionnalit\u00e9, mais la fonction WordPress qui g\u00e8re cela est tr\u00e8s simple \u00e0 utiliser. Par cons\u00e9quent, il n&rsquo;est pas n\u00e9cessaire d&rsquo;encombrer votre blog avec un autre plugin uniquement \u00e0 cette fin.<\/p>\n<p>Afin de comprendre facilement cette m\u00e9thode, nous allons l&rsquo;expliquer en int\u00e9grant des modifications dans le th\u00e8me gratuit WordPress Twenty Sixteen.<\/p>\n<h2>Commen\u00e7ons par la fonction<\/h2>\n<pre><code>if( !function_exists('content_estimated_reading_time')) {\n\/**\nFunction that estimates reading time for a given $content.\n@param string $content Content to calculate read time for.\n@paramint $wpm Estimated words per minute of reader.\n@returns int $time Esimated reading time.\n*\/\nfunction content_estimated_reading_time( $content = '', $wpm = 200) {\n$clean_content= strip_shortcodes( $content );\n$clean_content= strip_tags( $clean_content);\n$word_count= str_word_count( $clean_content);\n$time = ceil( $word_count\/ $wpm );\n$output = '&lt;span class=\"read-time-holder\"&gt;';\n$output .= '&lt;span class=\"read-time\"&gt;'. $time .'&lt;\/span&gt;' .' ';\n$output .= '&lt;span class=\"read-text\"&gt;'. esc_attr__('min read', 'twentysixteen' ). '&lt;\/span&gt;';\n$output .='&lt;\/span&gt;';\nreturn $output;\n}\n}<\/code><\/pre>\n<p>La fonction accepte deux param\u00e8tres &#8211; <strong>contenu<\/strong> ($ contenu) et <strong>mots estim\u00e9s par minute de lecteur<\/strong> ($ wpm). Le deuxi\u00e8me param\u00e8tre est d\u00e9fini sur 200 pour un lecteur moyen, mais vous pouvez le d\u00e9finir sur une autre valeur. Vous pouvez recueillir <a href=\"http:\/\/www.readingsoft.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">des informations utiles<\/a> \u00e0 ce sujet sur Internet.<\/p>\n<p>\u00c0 l&rsquo;int\u00e9rieur de la fonction, nous devons supprimer le contenu de tout le reste, \u00e0 l&rsquo;exception des mots eux-m\u00eames. Donc, d&rsquo;abord, nous allons utiliser deux fonctions pour supprimer les shortcodes et les balises (<strong><a href=\"https:\/\/codex.wordpress.org\/Function_Reference\/strip_shortcodes\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">strip_shortcodes<\/a><\/strong> et <strong><a href=\"https:\/\/php.net\/manual\/en\/function.strip-tags.php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">strip_tags<\/a><\/strong> ).<\/p>\n<p>Ensuite, nous devons compter les mots dans le contenu nettoy\u00e9. Par cons\u00e9quent, nous stockerons le contenu dans une variable $word_count. La fonction de comptage des mots utilis\u00e9e ici est <a href=\"https:\/\/php.net\/manual\/en\/function.str-word-count.php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">str_word_count<\/a>.<\/p>\n<p>Afin de calculer le temps de lecture moyen, il suffit de diviser le nombre de mots par les mots lus par minute, tandis que la fonction <strong><a href=\"https:\/\/php.net\/manual\/en\/function.ceil.php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">ceil<\/a><\/strong> utilis\u00e9e ici sert \u00e0 arrondir le r\u00e9sultat.<\/p>\n<p>La deuxi\u00e8me partie de la fonction sert uniquement \u00e0 afficher le code HTML avec l&rsquo;heure et le texte qui suivent.<\/p>\n<p>Pour int\u00e9grer la fonction dans votre th\u00e8me, il suffit de l&rsquo;ajouter \u00e0 la fin du fichier functions.php du th\u00e8me que vous utilisez actuellement.<\/p>\n<p>Comme vous pouvez le voir, toute la logique derri\u00e8re le temps de lecture moyen est tr\u00e8s simple. Pourtant, la fonction ne fera rien par elle-m\u00eame. C&rsquo;est pourquoi, pour l&rsquo;afficher sur votre liste de blogs ou vos articles individuels, nous devons d&rsquo;abord l&rsquo;appeler.<\/p>\n<h2>Appel de la fonction<\/h2>\n<p>Il existe diff\u00e9rentes mani\u00e8res d&rsquo;utiliser la fonction. Nous en aborderons trois ci-dessous.<\/p>\n<p>G\u00e9n\u00e9ralement, le moyen le plus simple pour une grande majorit\u00e9 d&rsquo;utilisateurs est d&rsquo;appeler la fonction directement depuis l&rsquo;int\u00e9rieur du fichier o\u00f9 ils en ont besoin. Disons que, par exemple, vous devez appeler la fonction \u00e0 l&rsquo;int\u00e9rieur du fichier single.php, qui est un mod\u00e8le pour afficher des messages uniques. Cela signifie simplement que vous devez ouvrir ce fichier, puis faire \u00e9cho \u00e0 la fonction avec le contenu du message comme param\u00e8tre, comme ceci\u00a0:<\/p>\n<pre><code>&lt;?php echo content_estimated_reading_time( get_the_content() ); ?&gt;<\/code><\/pre>\n<p>C&rsquo;est bien s\u00fbr si vous avez une boucle et toute la structure \u00e0 l&rsquo;int\u00e9rieur du fichier single.php, mais tr\u00e8s probablement, vous ne le ferez pas. Un exemple de structure peut ressembler \u00e0 ceci\u00a0:<\/p>\n<h3>2 Utiliser le filtre<\/h3>\n<p>Des th\u00e8mes modernes et mieux cod\u00e9s s\u00e9parent ces modules en diff\u00e9rents fichiers. Par cons\u00e9quent, une meilleure m\u00e9thode consiste \u00e0 utiliser un filtre et \u00e0 renvoyer le contenu avec l&rsquo;ajout de la fonction de filtre. Le sujet sur <a href=\"https:\/\/developer.wordpress.org\/plugins\/hooks\/filters\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">la fa\u00e7on d&rsquo;ajouter un filtre<\/a> a d\u00e9j\u00e0 \u00e9t\u00e9 largement couvert sur Internet.<\/p>\n<h3>3 Modifier la fonction existante pour plus de contr\u00f4le<\/h3>\n<p>C&rsquo;est probablement la meilleure approche car vous pouvez avoir plus de contr\u00f4le pour positionner la sortie. Dans le th\u00e8me Twenty Sixteen, il existe une fonction responsable de l&rsquo;impression des cat\u00e9gories et des balises pour chaque publication de la liste et des publications individuelles. Il s&rsquo;agit d&rsquo;une fonction Twentysixteen_entry_taxonomies. Il ne vous reste plus qu&rsquo;\u00e0 le copier-coller dans functions.php et \u00e0 modifier sa derni\u00e8re partie avec notre fonction d&rsquo;appel du temps de lecture estim\u00e9.<\/p>\n<p>Nous aimerions mentionner bri\u00e8vement que puisque nous avons gard\u00e9 le m\u00eame nom pour la fonction, il remplacera celui d&rsquo;origine. Maintenant, la fonction avec notre modification sera ex\u00e9cut\u00e9e partout dans le th\u00e8me.<\/p>\n<p>Les fonctions modifi\u00e9es devraient ressembler \u00e0 ceci\u00a0:<\/p>\n<pre><code>\/**\n* Function override of default function in parent theme\n* Adding reading time function at the end\n*\/\nfunction twentysixteen_entry_taxonomies() {\n$categories_list= get_the_category_list( _x( ', ', 'Used between list items, there is a space after the comma.', 'twentysixteen') );\nif ($categories_list&amp;&amp;twentysixteen_categorized_blog()) {\nprintf( '&lt;span class=\"cat-links\"&gt;&lt;span class=\"screen-reader-text\"&gt;%1$s &lt;\/span&gt;%2$s&lt;\/span&gt;',\n_x( 'Categories', 'Used before category names.', 'twentysixteen' ),\n$categories_list\n);\n}\n$tags_list= get_the_tag_list( '', _x( ', ', 'Used between list items, there is a space after the comma.', 'twentysixteen') );\nif ($tags_list&amp;&amp;! is_wp_error( $tags_list)) {\nprintf( '&lt;span class=\"tags-links\"&gt;&lt;span class=\"screen-reader-text\"&gt;%1$s &lt;\/span&gt;%2$s&lt;\/span&gt;',\n_x( 'Tags', 'Used before tag names.', 'twentysixteen' ),\n$tags_list\n);\n}\n\/*our code modification to this function*\/\nprint content_estimated_reading_time(get_the_content());\n}<\/code><\/pre>\n<p>De cette fa\u00e7on, nous afficherons le temps de lecture dans la partie avec les balises et les cat\u00e9gories auxquelles il appartient.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2022\/10\/post-279910-633e28b2a99df.jpg\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2022\/10\/post-279910-633e28b2a99df.jpg\" alt=\"Comment afficher le temps de lecture estim\u00e9 sur les articles de blog\"><\/a><\/p>\n<p>Le code \u00e0 l&rsquo;int\u00e9rieur du fichier functions.php du th\u00e8me Twenty Sixteen devrait ressembler \u00e0 ceci :<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2022\/10\/post-279910-633e28b548cb0.jpg\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2022\/10\/post-279910-633e28b548cb0.jpg\" alt=\"Comment afficher le temps de lecture estim\u00e9 sur les articles de blog\"><\/a><\/p>\n<pre><code>if (!function_exists('content_estimated_reading_time')) {\n\/**\nFunction that estimates reading time for a given $content.\n@param string $content Content to calculate read time for.\n@param int $wpm Estimated words per minute of reader.\n@returns int $time Esimated reading time.\n*\/\nfunction content_estimated_reading_time( $content = '', $wpm = 200) {\n$clean_content = strip_shortcodes( $content );\n$clean_content = strip_tags( $clean_content );\n$word_count = str_word_count( $clean_content );\n$time = ceil( $word_count \/ $wpm );\n$output = '&lt;span class=\"read-time-holder\"&gt;';\n$output .= '&lt;span class=\"read-time\"&gt;'. $time. '&lt;\/span&gt;'. ' ';\n$output .= '&lt;span class=\"read-text\"&gt;'. esc_attr__( 'min read', 'twentysixteen' ). '&lt;\/span&gt;';\n$output .= '&lt;\/span&gt;';\nreturn $output;\n}\n}\n\/**\n* Function override of default function in parent theme\n* Adding reading time function at the end\n*\/\nfunction twentysixteen_entry_taxonomies() {\n$categories_list = get_the_category_list( _x( ', ', 'Used between list items, there is a space after the comma.', 'twentysixteen') );\nif ($categories_list &amp;&amp; twentysixteen_categorized_blog()) {\nprintf( '&lt;span class=\"cat-links\"&gt;&lt;span class=\"screen-reader-text\"&gt;%1$s &lt;\/span&gt;%2$s&lt;\/span&gt;',\n_x( 'Categories', 'Used before category names.', 'twentysixteen' ),\n$categories_list\n);\n}\n$tags_list = get_the_tag_list( '', _x( ', ', 'Used between list items, there is a space after the comma.', 'twentysixteen') );\nif ($tags_list &amp;&amp;! is_wp_error( $tags_list)) {\nprintf( '&lt;span class=\"tags-links\"&gt;&lt;span class=\"screen-reader-text\"&gt;%1$s &lt;\/span&gt;%2$s&lt;\/span&gt;',\n_x( 'Tags', 'Used before tag names.', 'twentysixteen' ),\n$tags_list\n);\n}\n\/*our code modification to this function*\/\nprint content_estimated_reading_time(get_the_content());\n}<\/code><\/pre>\n<p>De pr\u00e9f\u00e9rence, cette modification doit se faire dans le th\u00e8me enfant.<\/p>\n<p>Lors de l&rsquo;ajout de la fonction de temps de lecture estim\u00e9 dans diff\u00e9rents th\u00e8mes, veuillez garder \u00e0 l&rsquo;esprit que les meilleures fa\u00e7ons d&rsquo;int\u00e9grer l&rsquo;appel de fonction peuvent varier. Essayez de prendre un peu de temps en parcourant les \u00e9tapes que nous avons couvertes afin de trouver la meilleure approche.<\/p>\n<p>Nous esp\u00e9rons que vous avez trouv\u00e9 cet article utile. Si vous l&rsquo;avez aim\u00e9, n&rsquo;h\u00e9sitez pas \u00e0 consulter \u00e9galement certains de ces articles\u00a0!<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Source d&rsquo;enregistrement:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/wpklik.com\" class=\"external external_icon\">wpklik.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>L&rsquo;affichage du temps de lecture estim\u00e9 d&rsquo;un article est tr\u00e8s pratique pour obtenir le plus d&rsquo;informations possible en parcourant simplement une page.<\/p>\n","protected":false},"author":1,"featured_media":363314,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[568],"tags":[844],"class_list":["post-372138","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-les-bases-de-wordpress","tag-affiai-fr"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/372138","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/comments?post=372138"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/posts\/372138\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media\/363314"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/media?parent=372138"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/categories?post=372138"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/fr\/wp-json\/wp\/v2\/tags?post=372138"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}