Gérer les attributs ALT des images sous WordPress

Fonction pour mettre a jour ou créer l’attribut ALT des images de votre WordPress.

Mettre à jour l'attribut ALT d'une image
function update_image_alt(){
  global $post;
  $args = array( 'post_type' => 'attachment', 'post_mime_type' => 'image/jpeg','posts_per_page' => -1 );
  $myposts = get_posts( $args );
  foreach ( $myposts as $post ) :
    if(empty(get_post_meta( $post->ID , '_wp_attachment_image_alt', true))){
      add_post_meta( $post->ID , '_wp_attachment_image_alt', get_the_title() );
      echo $post->ID.' > '.get_the_title().' - add<br />';
    }else{
      update_post_meta( $post->ID , '_wp_attachment_image_alt', get_the_title() );
      echo $post->ID.' > '.get_the_title().' - update<br />';
    }
  endforeach;
  wp_reset_postdata();
}
update_image_alt();

La fonction est à déclencher une fois. Via un bouton ou en brut dans un fichier php.

update_image_alt();

Calculer le poids d’un fichier

La fonction ci-dessous sert à calculer la taille du fichier qui lui est passé en paramètre.

$file : Lien du fichier

Exemple  de résultat : 125 Kb

Function getSize()
function getSize($file) {
  $bytes = filesize($file);
  $s = array('b', 'Kb', 'Mb', 'Gb');
  $e = floor(log($bytes) / log(1024));
  return sprintf('%.2f ' . $s[$e], ($bytes / pow(1024, floor($e))));
}

Fonction adaptée à partir de ce commentaire sur php.net

Contact Form 7 : Changer le sujet avant l’envoi du mail.

Vous utilisez Contact Form 7 et il vous faut changer le sujet du message avant l’envoi, voici une solution qui peut vous aider.

Changer le sujet d'un message
function change_subject( $instance ) {
  $submission = WPCF7_Submission::get_instance();
  if ($submission) {
    $mail= $instance->prop('mail');
    $mail['subject'] = 'New Subject';
    $instance->set_properties(array("mail" => $mail));
  }
  return $instance;
}
add_action( 'wpcf7_before_send_mail', 'change_subject' );

 

Creer un liste avec des shordcodes sur WordPress

Besoin d’un système pour créer un liste (<ul>) avec des shortcodes sous la forme suivante :

[list_shortcode]Item 1;Item 2;Item 3;Item 4[/list_shortcode]
[list_shortcode]Item 1[/list_shortcode]

Voici une solution à votre problématique

Créer un shortcode
function list_shortcode($atts = [], $content = null)
{
$list_items = explode(';', $content);
if(isset($list_items) && !empty($list_items)):
ob_start();
?>
<ul>
<?php foreach($list_items as $list_item): ?>
<li><?php echo $list_item; ?></li>
<?php endforeach;?>
</ul>
<?php
return ob_get_clean();
else:
$content = do_shortcode($content);
endif;
return $content;
}
add_shortcode('list_shortcode', 'list_shortcode_shortcode');

Voici le résultat

  • Item 1
  • Item 2
  • Item 3
  • Item 4

 

  • Item 1

Mettre un logo sur la page de connexion wp-admin

Un besoin de changer le logo wordpress pour votre logo / photos sur la page de connexion WordPress.
Adaptez et placez ce morceau de code dans functions.php

Functions.php
function my_login_logo() { ?>
  <style type="text/css">
    body.login{
      background: #f5f5f5;
    }
    #login h1 a, .login h1 a {
      background-image: url(<?php echo get_stylesheet_directory_uri(); ?>/logo.svg);
      height:65px;
      width:320px;
      background-size: 240px auto;
      background-repeat: no-repeat;
    }
  </style>
<?php }
add_action( 'login_enqueue_scripts', 'my_login_logo' );

Autoriser l’upload de SVG sur un WordPress

Pour autoriser l’upload de format SVG sur votre WordPress, placez cette petite fonction dans votre fichier functions.php

Fonction pour autoriser le format SVG
// Add SVG Upload
function add_mime_types($mimes) {
  $mimes['svg'] = 'image/svg+xml';
  return $mimes;
}
add_filter('upload_mimes', 'add_mime_types');

Ceci fonction fonctionne aussi pour d’autre format de fichier

D'autres d'extensions
$mimes['zip'] = 'application/octet-stream';
$mimes['iso'] = 'application/octet-stream';
$mimes['mkv'] = 'application/octet-stream';
$mimes['ai'] = 'application/postscript'; // les .ai sur illustrator apr exemple
$mimes['mon autre extension'] = 'mon autre Mime Type';