ThemeLocal - Des conseils de blog qui fonctionnent comme par magieThemeLocal - Des conseils de blog qui fonctionnent comme par magieThemeLocal - Des conseils de blog qui fonctionnent comme par magie
  • Blogging
  • WordPress
  • Email Marketing
  • SEO
  • Réseaux sociaux
  • More
    • Tutoriels
    • Shopify
    • Avis
    • Conseils
    • Sécurité
    • Logiciels et services
    • Génération de trafic
    • Guide du débutant
    • Showcase
Search
  • Politique de confidentialité
  • Politique de cookies
  • Contactez nous
© 2022 Themelocal. Tous les droits sont réservés.
En lisant: Ajouter une lecture sans distraction à WordPress
Partager
Notification Montre plus
Aa
ThemeLocal - Des conseils de blog qui fonctionnent comme par magieThemeLocal - Des conseils de blog qui fonctionnent comme par magie
Aa
  • Blogging
  • WordPress
  • Email Marketing
  • SEO
  • Réseaux sociaux
  • More
Search
  • Blogging
  • WordPress
  • Email Marketing
  • SEO
  • Réseaux sociaux
  • More
    • Tutoriels
    • Shopify
    • Avis
    • Conseils
    • Sécurité
    • Logiciels et services
    • Génération de trafic
    • Guide du débutant
    • Showcase
Suivez-nous
  • Politique de confidentialité
  • Politique de cookies
  • Contactez nous
© 2022 Themelocal. Tous les droits sont réservés.
ThemeLocal - Des conseils de blog qui fonctionnent comme par magie > Blog > Tutoriels > Ajouter une lecture sans distraction à WordPress
Tutoriels

Ajouter une lecture sans distraction à WordPress

Dernière mise à jour: octobre 26, 2024 5:22 am
ThemeLocal il y a 2 ans 9 minutes lecture minimale
Partager
9 minutes lecture minimale
1639626532 Ajouter une lecture sans distraction a WordPress
Partager

Vous vous souvenez quand WordPress a introduit l’écriture sans distraction, dans la 3.2 ? C’est une fonctionnalité incroyable, qui vous permet d’oublier tout le reste et de vous concentrer sur l’écriture. Mais qu’en est-il des lecteurs ?

Contents
Isoler le titre et le contenu du messageAjout d’une bascule de lecture sans distractionPassage au mode de lecture sans distractionStyling Distraction Contenu de lecture gratuit

Si vous êtes un puriste et que vous aimez consommer votre contenu sans accompagnement d’annonces, de listes de publications les plus récentes, de formulaires de newsletter, de widgets de réseaux sociaux et autres, vous êtes probablement un fan de Clearly d’Evernote, Poche, Reed ou toute autre application similaire. Ne pas dire que tous les plats d’accompagnement sont mauvais, juste que parfois les ignorer et se concentrer sur rien d’autre que le contenu fait du bien et constitue un délicieux « repas d’information ».

Alors, à quel point est-il difficile d’ajouter une lecture sans distraction à votre site Web WordPress et d’améliorer l’expérience de lecture de ses visiteurs ? Morte. Simple.

Voici le plan de match :

  • Trouvez un moyen d’isoler le titre et le contenu de la publication (à l’aide de la fonction WordPress add_filter)
  • Ajouter un lien de basculement de lecture sans distraction (jQuery)
  • Lorsque le lien bascule est cliqué, afficher le modal de lecture sans distraction (jQuery)
  • Style de contenu modal de lecture sans distraction (CSS)
  • Lorsque le lien de fermeture est cliqué, il revient à la normale (jQuery)

Isoler le titre et le contenu du message

Ce que nous devons faire ici, c’est permettre de cibler le titre et le contenu des articles dans une fonction jQuery. Étant donné que les thèmes utilisent des éléments différents pour afficher ces deux éléments, nous devons utiliser la fonction add_filter pour envelopper à la fois le titre et le contenu dans des div que nous pourrions ensuite cibler facilement:

// Wrap post title in a div
add_filter( 'the_title', 'thsp_dfr_title', 1 );
function thsp_dfr_title( $title ) {
	
	global $post;
	// We only want to do this for the post in main loop in single post view
	if( is_singular() && $title == $post->post_title && in_the_loop() ) {
		return '<h1 id="thsp-dfr-title">' . $title . '</h1>';
	}
	return $title;
	
}

// Wrap post content in a div
add_filter( 'the_content', 'thsp_dfr_content', 1 );
function thsp_dfr_content( $content ) {
	
	global $post;
	// Again, only do this in single post view
	if( is_singular() ) {
		/*
		 * New lines are necessary so WordPress wpautop would
		 * create the first paragraph
		 */
		return '<div id="thsp-dfr-content">' . "n" . "n" . $content . '</div>';
	}
	return $content;
	
}

Maintenant nous avons #thsp-dfr-title et #thsp-dfr-content éléments avec lesquels travailler, mettons donc en file d’attente des fichiers JS et CSS :

// Enqueue scripts and styles
add_action('wp_enqueue_scripts', 'thsp_dfr_styles');
function thsp_dfr_styles() {

	global $post;
	if( is_singular() ) {
		wp_enqueue_script(
			'thsp_dfr',
			plugins_url( '/js/distraction-free-reading.js', __FILE__ ),
			array( 'jquery' ),
			'v1.0'
		);
		
		wp_enqueue_style(
			'thsp_dfr',
			plugins_url( '/css/distraction-free-reading.css', __FILE__ ),
			array(), 
			'v1.0'
		);
	}

}

Ajout d’une bascule de lecture sans distraction

Étant donné que la lecture sans distraction ne fonctionnera pas avec javascript désactivé, nous utilisons jQuery pour ajouter un basculeur. Cela n’est d’aucune utilité pour les utilisateurs non javascript, pas besoin de leur lancer des liens morts.

// Add distraction free reading toggler
$('body').append('<a id="thsp-dfr-toggle" href="#">Distraction free reading</a>');

Ajoutez du CSS de base à l’élément link et nous nous retrouvons avec ceci :

Bascule de lecture sans distraction

Bascule de lecture sans distraction

Passage au mode de lecture sans distraction

Tout ce dont nous avons besoin pour que cela se produise est déjà là. Un lien pour attacher la fonction de clic à – vérifier, deux éléments avec des identifiants connus que nous pouvons cloner – vérifier. Alors faisons-le.

// Clicking toggle link
$('#thsp-dfr-toggle').click(function(){	
	// Add distraction free modal		
	$('body').append('<div id="thsp-dfr-overlay"><div id="thsp-dfr-wrapper"></div></div>');
	
	// Add post title to distraction free modal
	$('#thsp-dfr-title').clone().attr('id', 'thsp-dfr-title-cloned').appendTo('#thsp-dfr-wrapper');
	
	// Add post content to distraction free modal
	$('#thsp-dfr-content').clone().attr('id', 'thsp-dfr-content-cloned').appendTo('#thsp-dfr-wrapper');

	// Add close link to distraction free modal
	$('body').append('<a id="thsp-dfr-close" href="#">Close</a>');
	
	// Hide show modal link
	$(this).hide();

	return false;
});

// Clicking close link
$('#thsp-dfr-close').live('click', function(){	
	// Remove modal
	$('#thsp-dfr-overlay').remove();
	
	// Show distraction free toggle again
	$('#thsp-dfr-toggle').show();

	// Hide close modal link
	$(this).hide();
	
	return false;
});

Voici donc la répartition de ce que nous faisons ici :

1. Ajouter deux div juste avant de fermer la balise body
2. Cloner le titre et le contenu de la publication et les ajouter au div interne
3. Suppression du lien à bascule
4. Ajouter un autre lien que nous utiliserons pour quitter la lecture sans distraction

Cliquer sur ce lien de fermeture supprimera le lien modal et de fermeture lui-même et ramènera le lien qui active le mode de lecture sans distraction.

Styling Distraction Contenu de lecture gratuit

Nous avons besoin de CSS pour positionner notre lien modal et bascule et leur donner un style de base, alors le voici :

/* 100% width and height element to hide site's regular look */
#thsp-dfr-overlay {
	background: #222;
	background: rgba(0,0,0,0.9);
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	padding: 50px 0;
	
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.admin-bar #thsp-dfr-overlay {
	/* Make it look good with admin bar */
	padding: 78px 0 50px;
}
/* Distraction free reading content wrapper */
#thsp-dfr-wrapper {
	background: #f9f9f9;
	width: 45em;
	max-width: 90%;
	margin: 0 auto;
	padding: 2em 3em;
	height: 100%;
	overflow: scroll;
	
	box-shadow: 0 0 2em rgba(0,0,0,0.8);
	-webkit-box-shadow: 0 0 2em rgba(0,0,0,0.8);
	-moz-box-shadow: 0 0 2em rgba(0,0,0,0.8);
	
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
/* Distraction free toggle and close buttons */
#thsp-dfr-toggle,
#thsp-dfr-close {
	position: fixed;
	bottom: 3px;
	right: 3px;
	z-index: 999;
	display: inline-block;
	background: #333;
	color: #fff;
	padding: 0.5em;
	border: 1px solid #fff;
	text-decoration: none;
}

Gardez à l’esprit que cela ne stylisera que les divs de superposition et de wrapper, pas le contenu qu’ils contiennent. Dans le thème Twenty Twelve, cela finira par ressembler à ceci :

Lecture sans distraction - contenu sans style

Lecture sans distraction – contenu sans style

Il y a en quelque sorte « vive la réinitialisation CSS d’Eric Meyer » partout, donc naturellement, vous voudrez ajouter un CSS de typographie épatant pour le rendre beau. Heureusement, il est facile de créer des sélecteurs CSS suffisamment spécifiques qui remplaceront le CSS par défaut du thème, car notre contenu de lecture sans distraction est enveloppé à l’intérieur #thsp-dfr-overlay et #thsp-dfr-wrapper div. Après lui avoir fait un lifting (vérifier la page Github du projet pour le fichier CSS complet), voici ce que nous avons :

Lecture sans distraction - contenu stylisé

Lecture sans distraction – contenu stylisé

Beaucoup mieux, mais vous savez ce qu’ils disent…

Donnez du CSS à un développeur front-end et il passera des heures à le peaufiner, laissez un développeur front-end écrire son propre CSS et il passera encore des heures à travailler dessus.

Alors n’hésitez pas à faire en sorte que le contenu modal de lecture sans distraction ait l’air aussi bon ou mauvais que vous le souhaitez 🙂

Le plan est de développer ce concept en un plugin WordPress complet, donc si vous souhaitez participer et contribuer, voici la page Github du projet.

Vous pourriez aussi aimer

Comment effectuer une extraction complète des données depuis ChatGPT

Comment déplacer une note dans un dossier dans l’application Notes sur iPhone et iPad

Comment définir une alarme sur votre iPhone et iPad

Comment ajouter une photo à un contact sur iPhone et iPad

Comment ajouter un passeport à Apple Wallet

MARQUÉ: Ajouter, distraction, lecture, sans, une, WordPress
Partagez cet article
Facebook Twitter Pinterest Whatsapp Whatsapp
Partager
Qu-est-ce que tu penses?
Aimer0
Triste0
Heureux0
Somnolent0
Fâché0
Sans commentaires0
Clin d-œil0
Article précédent 1639692061 Ajout dattributs personnalises aux menus WordPress Ajout d’attributs personnalisés aux menus WordPress
Article suivant Comment transférer des photos et des vidéos PS5 vers USB
Laissez un commentaire

Laisser un commentaire Annuler la réponse

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Poste populaire

1784152840 Comment deplacer une note dans un dossier dans lapplication Notes
Comment déplacer une note dans un dossier dans l’application Notes sur iPhone et iPad
Comment
Comment utiliser les options dappel FaceTime pour refuser et accepter
Comment utiliser les options d’appel FaceTime pour refuser et accepter de nouveaux appels
Comment
iOS 27 : accédez au nouvel écran de récupération iPhone
Comment
1784012438 Comment installer la version beta publique diOS 27 sur votre
Comment installer la version bêta publique d’iOS 27 sur votre iPhone
Comment
1784192434 Comment installer la version beta publique de macOS 27 Golden
Comment installer la version bêta publique de macOS 27 Golden Gate
Comment
Comment partager des rappels sur iPhone avec vos amis et
Comment partager des rappels sur iPhone avec vos amis et votre famille
Comment

También podría gustarte

Comment effectuer une extraction complete des donnees depuis ChatGPT
Comment

Comment effectuer une extraction complète des données depuis ChatGPT

il y a 3 jours 6 minutes lecture minimale
1784152840 Comment deplacer une note dans un dossier dans lapplication Notes
Comment

Comment déplacer une note dans un dossier dans l’application Notes sur iPhone et iPad

il y a 3 jours 3 minutes lecture minimale
Comment definir une alarme sur votre iPhone et iPad
Comment

Comment définir une alarme sur votre iPhone et iPad

il y a 1 mois 3 minutes lecture minimale
Comment ajouter une photo a un contact sur iPhone et
Comment

Comment ajouter une photo à un contact sur iPhone et iPad

il y a 1 mois 3 minutes lecture minimale
1777412733 Comment ajouter un passeport a Apple Wallet
Comment

Comment ajouter un passeport à Apple Wallet

il y a 3 mois 4 minutes lecture minimale
Comment ajouter un site Web a votre ecran daccueil sur
Comment

Comment ajouter un site Web à votre écran d’accueil sur iPhone et iPad

il y a 3 mois 3 minutes lecture minimale
Comment ajouter Shazam au centre de controle sur un iPhone
Comment

Comment ajouter Shazam au centre de contrôle sur un iPhone

il y a 4 mois 3 minutes lecture minimale
Comment voir tous les comptes de messagerie a la fois
Comment

Comment voir tous les comptes de messagerie à la fois (dans une seule boîte de réception)

il y a 4 mois 3 minutes lecture minimale
Montre plus
ThemeLocal - Des conseils de blog qui fonctionnent comme par magieThemeLocal - Des conseils de blog qui fonctionnent comme par magie
Suivez-nous
© 2022 Themelocal. Tous les droits sont réservés.
  • Politique de confidentialité
  • Politique de cookies
  • Contactez nous
Welcome Back!

Sign in to your account

Mot de passe perdu?