Les hacks WordPress extraordinairement utiles que vous n’avez probablement pas encore utilisés
Maintenant, aussi « tous les jours » que WordPress est devenu – pour le fait que chaque deuxième ou troisième site Web que vous rencontrez est propulsé par WordPress – il y a toujours le fréquent «comment diable ont-ils fait ça! moments où vous faites défiler le domaine WordPress.
Bien que WordPress soit si remarquablement poursuivi par la communauté du développement Web, il n’a jamais cessé de porter des astuces et des surprises incroyables dans sa manche. Bien qu’il existe tout un ensemble de plugins qui ne manquent jamais de prendre les fonctionnalités d’un site Web WordPress au-delà des défauts et réussissent à laisser les webmasters façonner leur site Web exactement de la même manière qu’ils le souhaitent, ce sont les WordPress Hacks qui donnent bel et bien aux webmasters une personnalisation. des capacités comme celles-ci ne peuvent être accomplies par aucun plugin, quel qu’il soit.
Les hacks WordPress établissent une solide assise et gagnent beaucoup de terrain alors que les webmasters non programmeurs demandent l’aide de certains développeurs Web pour injecter quelques fonctionnalités dans leur site Web qui les aideraient vraiment à améliorer ses fonctionnalités et à le faire dépasser ses pairs. Cependant, nous facilitons votre travail en vous lançant quelques extraits de code dont vous auriez besoin (et que vous voudriez) pour que votre site Web fonctionne dans la direction que vous souhaitez.
La liste suivante concerne ces hacks que vous pouvez implémenter sur votre site Web pour qu’il se vante de capacités personnalisées exceptionnelles et de fonctionnalités qui semblent assez improbables autrement.
1 Activer les codes abrégés dans les widgets
Les widgets ne cessent de donner à notre site Web cet avantage que nous recherchons toujours. Ils constituent une partie indispensable de presque tous les sites Web WordPress, et donc, un moyen d’améliorer leur apparence ou leurs fonctionnalités est toujours le bienvenu, et c’est exactement ce que les codes abrégés sont censés faire. Utilisez un filtre pour la même chose :
add_filter( 'widget_text', 'do_shortcode' );
Le menu de la barre de navigation supérieure de votre site Web est probablement ignorable, simplement pour sa position. Et c’est pourquoi vous devez le déplacer et c’est là que le déplacer vous aidera :
#top-nav {float: right;}
Il est possible que vous ayez décidé de réaligner votre logo pour le placer au centre de l’en-tête, vous devrez donc déplacer le menu de navigation vers le centre afin qu’il ne semble pas déplacé. Et voici comment procéder :
#navigation {
position: relative;
}
#main-nav {
clear: left;
float: left;
list-style: none;
margin: 0;
padding: 0;
position: relative;
left: 50%;
text-align: center;
}
.nav li {
display: block;
float: left;
list-style: none;
margin: 0;
padding: 0;
position: relative;
right: 50%;
}
.nav li.hover, .nav li.hover {
position: relative;
}
.nav li ul li {
left: 0;
4 Retarder la publication de votre message sur les flux RSS
Il n’est pas rare de faire des erreurs lors de la rédaction d’un message, mais lorsque les messages sont déjà envoyés sur RSS, les erreurs mineures peuvent s’avérer assez coûteuses. Et c’est alors que retarder le processus vient à la rescousse.
Désormais, vous pouvez vous assurer que les articles ne vont pas dans le flux RSS dès que vous les publiez sur votre blog. Tout ce que vous avez à faire est d’ajouter ce morceau de code au fichier functions.php dans le backend de votre site Web :
function publish_later_on_feed($where) {
global $wpdb;
if (is_feed()) {
$time_now = gmdate('Y-m-d H:i:s');
$time_delay = '15'; // integer
$time_span = 'MINUTE'; //MINUTE, HOUR, DAY, WEEK, MONTH, YEAR
$where = " AND TIMESTAMPDIFF($device, $wpdb->posts.post_date_gmt, '$time_now') > $time_delay ";
}
return $where;
}
add_filter('posts_where', 'publish_later_on_feed');
5 Vous ne voulez plus des avatars circulaires ? Rendez-les carrés
Le thème que vous avez choisi pour votre site WordPress peut modifier automatiquement les images d’avatar pour les présenter sous une forme circulaire. Mais de nombreux webmasters préféreraient que leurs avatars soient affichés sous une forme carrée. Pour la même chose, ce code de GitHub fonctionne exceptionnellement bien :
#post-author .profile-image img, #comments .avatar img {
border-radius: 0;
-moz-border-radius: 0;
-webkit-border-radius: 0;
}
6 Laissez votre flux RSS contenir l’image en vedette de la publication
L’utilisation d’images dans vos messages lui donne toujours une impulsion supplémentaire auprès de votre public et les incite à les lire et à les partager davantage avec leurs cercles. Et lorsque vous pouvez utiliser l’image en vedette de la publication dans vos flux RSS, vous améliorez encore la portée de la publication en la rendant visuellement plus accrocheuse :
add_filter('the_content_feed', 'rss_post_thumbnail');
function rss_post_thumbnail($content) {
global $post;
if( has_post_thumbnail($post->ID)) $content = '
'. get_the_post_thumbnail($post->ID, 'thumbnail'). '
'. $content;
return $content;
}
7 Supprimer le titre d’une page particulière
Bien qu’il existe des outils qui facilitent la suppression des titres de toutes les pages du site, parfois, vous ne souhaitez les supprimer que de pages particulières. Et voici le code dont vous avez besoin pour cela – remplacez simplement « abcd » par le numéro d’identification de la page pour n’importe quel message :
.page-id-xxxx .title {
display: none;
}
8 Vous ne voulez pas de HTML dans les commentaires ? Allez-y et désactivez-le
Le HTML dans la section des commentaires peut entraîner un chargement de spam, ce qui pourrait éventuellement avoir de graves répercussions sur votre site Web. Et c’est pourquoi la désactivation du HTML dans la section des commentaires est si importante pour garder votre site Web exempt de spam. Pour ce faire, ajoutez ce morceau de code dans le fichier functions.php :
//As soon as someone comments
function plc_comment_post( $incoming_comment) {
// convert everything in a comment to display literally
$incoming_comment['comment_content'] = htmlspecialchars($incoming_comment['comment_content']);
// the one exception is single quotes, which cannot be #039; because WordPress marks it as spam
$incoming_comment['comment_content'] = str_replace( "'", ''', $incoming_comment['comment_content'] );
return( $incoming_comment );
}
// This will occur before a comment is displayed
function plc_comment_display( $comment_to_display) {
// Put the single quotes back in
$comment_to_display = str_replace( ''', "'", $comment_to_display );
return $comment_to_display;
}
add_filter( 'preprocess_comment', 'plc_comment_post', '', 1 );
add_filter( 'comment_text', 'plc_comment_display', '', 1 );
add_filter( 'comment_text_rss', 'plc_comment_display', '', 1 );
add_filter( 'comment_excerpt', 'plc_comment_display', '', 1 );
// This stops WordPress from trying to automatically make hyperlinks on text:
remove_filter( 'comment_text', 'make_clickable', 9 );
9 Lorsqu’un utilisateur recherche une certaine publication sur votre site, il suffit de l’amener directement à la publication complète
Vous ne l’avez peut-être pas jugé trop nécessaire, mais si les utilisateurs qui recherchent des messages particuliers sont dirigés directement vers le message complet au lieu d’une vue miniature avec extrait, ils apprécieraient cela. Cela ne les oblige pas à continuer à naviguer et améliore ainsi considérablement l’expérience utilisateur.
add_action('template_redirect', 'redirect_single_post');
function redirect_single_post() {
if (is_search()) {
global $ks29so_query;
if ($ks29so_query->post_count == 1 && $ks29so_query->max_num_pages == 1) {
ks29so_redirect( get_permalink( $ks29so_query->posts['0']->ID) );
exit;
}
}
}
10 Afficher la date de copyright la plus précise et la plus actuelle
Le droit d’auteur est un élément indispensable de tout site Web qui contient de nombreuses informations utiles que le webmaster ne souhaite pas voir copiées par les autres randomiseurs sur le Web. C’est pourquoi il est important d’afficher les informations de copyright avec précision et en synchronisation avec l’année en cours. Le morceau de code suivant vous permet de mettre à jour automatiquement et en permanence les informations de copyright :
function comicpress_copyright() {
global $wpdb;
$copyright_dates = $wpdb->get_results("
SELECT
YEAR(min(post_date_gmt)) AS firstdate,
YEAR(max(post_date_gmt)) AS lastdate
FROM
$wpdb->posts
WHERE
post_status = 'publish'
");
$output = '';
if($copyright_dates) {
$copyright = "© ". $copyright_dates[0]->firstdate;
if($copyright_dates[0]->firstdate != $copyright_dates[0]->lastdate) {
$copyright .= '-'. $copyright_dates[0]->lastdate;
}
$output = $copyright;
}
return $output;
}
11 Rediriger les utilisateurs après leur connexion
Une fois qu’un utilisateur est connecté à votre site, il peut être facilement redirigé vers une autre URL de votre choix. Tout ce dont vous avez besoin est cet extrait de code dans le fichier functions.php :
user_level == 0)
{
ks29so_redirect( home_url() ); exit;
}
//If login user role is Contributor
else if ($current_user->user_level > 1)
{
ks29so_redirect( home_url() ); exit;
}
//If login user role is Editor
else if ($current_user->user_level >8)
{
ks29so_redirect( home_url() ); exit;
}
// For other roles
else
{
$redirect_to = 'http://google.com/';
return $redirect_to;
}
}
add_action('admin_init','redirect_user_on_role');
?>
12 Laissez l’en-tête afficher des widgets personnalisés
L’en-tête de votre site Web est une excellente zone publicitaire où vous pouvez afficher des publicités vraiment visibles. Cependant, une chose commune qui est observée est que les administrateurs du site n’ont pas beaucoup de contrôle sur la façon dont ils souhaitent afficher les éléments sur l’en-tête, ce qui entraîne un manque de flexibilité.
Ce que les administrateurs veulent, c’est la capacité de personnalisation pour leur permettre d’ajouter ce qu’ils veulent à droite du logo, et les lignes de code suivantes leur permettent de faire exactement cela :
if (function_exists('register_sidebar')) {
register_sidebar(array(
'name' => 'Header Widget',
'id' => 'header-widget',
'description' => 'This is a widgetized area in the right side of the header.',
'before_widget' => '',
'after_title' => '
'
));
add_action( 'woo_header_inside', 'custom_canvas_header' );
function custom_canvas_header() {
?>
',
'before_title' => '