Paternité du contenu de vos articles (obsolète)

20 avril 2014
Posted in Code
20 avril 2014 Occitaweb

balisegplus02Vous avez sûrement déjà remarqué que certains résultats de recherche sur google affiche la photo de profil de  l’auteur. C’est grâce à la paternité du contenu de google. La méthode plus simple pour atteindre un tel résultat consiste, à ajouter « ?rel=author » à la fin d’un liens vers votre page google+.

https://plus.google.com/+OccitawebFr?rel=author

Cependant si votre site est déjà en ligne il vous faudra reprendre chacun de vos articles pour y ajouter le lien, opération fastidieuse s’il en est… Voici donc un code simple à mettre en place pour automatiser cette démarche  et ceux pour tous les auteurs de votre blog !


Pré-requis :

Un site wordpress.
Une page google plus.

Bonne pratique : thème enfant

Vous êtes sur le point de modifier des fichiers de votre thème wordpress, pour éviter d’avoir à remodifier vos fichiers à chaque mise à jour du thème, wordpress recommande l’utilisation de thème enfant. Un thème  enfant ou child en version originale, repose sur un principe simple, vous aller créer un nouveau dossier dans votre répertoire thème de wordpress (wp-content/themes/). Dans ce dossier vous ajouter un fichier style.css structuré comme ceci

/*
Theme Name: nom du theme Child
Theme URI: http://www.url-du-design.com
Description: description du theme
Version: n° de version
Author: auteur
Author URI: http://www.url-de-l'auteur.com
Template: nom exact du design //nom du design de référence.
*/
@import url("../dossier du design de référence/style.css");

Une fois votre thème enfant créer il suffit d’y copier les fichiers que vous souhaiter modifier, si le fichier n’est pas dans votre dossier child c’est le fichier présent dans le thème de référence qui sera utilisé. de cette maniére vous conserverez vos modifications après les mises à jours. Certains design premium exige plus de fichiers que le style.css, habituellement ces designs fournissent les dossiers child dans leurs archives, si ce n’est pas le cas tournez-vous vers le forum de l’éditeur.

Mise en place

Si vous avez utilisé un thème enfant, il vous faut maintenant, créer un fichier functions.php, pour coller le code qui suit ; si vous souhaitez modifier directement votre thème (déconseillé cf. plus haut), coller le code à la fin de votre functions.php.

Google Plus profile information

<?php

function google_plus_authorship_link ($gplus_return) {
    $gplus_author_name = esc_attr( get_the_author_meta( 'gplus_author_name', $user->ID ) );
    $gplus_author_display = esc_attr( get_the_author_meta( 'display_name', $user->ID ) );
    $gplus_author_url = esc_attr( get_the_author_meta( 'gplus_author_url', $user->ID ) );

    $author_name = "+";

    $gplus_return .= '<a href="'.$gplus_author_url.'" rel="'.(is_author()?" author":"me").'"';
    $gplus_return .= ' title="Google Plus Profile for '.$author_name.'" plugin="Google Plus Authorship">'.$author_name.'</a>';

    return $gplus_return;
}

add_filter( 'get_the_author_link',    'google_plus_authorship_link',10,3 );
add_filter( 'the_author_posts_link',    'google_plus_authorship_link',10,3 );
add_action( 'show_user_profile',    'gplus_authorship_profile_fields' );
add_action( 'edit_user_profile',    'gplus_authorship_profile_fields' );

function gplus_authorship_profile_fields( $user ) {
    global $current_user;

    get_currentuserinfo();
    $gplus_author_name = esc_attr( get_the_author_meta( 'gplus_author_name', $current_user->ID ) );
    $gplus_author_url = esc_attr( get_the_author_meta( 'gplus_author_url', $current_user->ID ) );

    ?>
    <h3>Google Plus profile information</h3>

    <table class="form-table">

        <tr>
            <th><label for="gplusauthor">Google Plus Profile URL</label></th>

            <td>
                <input type="text" name="gplus_author_url" id="gplus_author_url" value="<?php echo esc_attr( get_the_author_meta( 'gplus_author_url', $user->ID ) ); ?>" class="regular-text" /><br />
                <span class="description">Please enter your Google Plus Profile URL. ("https://plus.google.com/1234567890987654321" or "https://plus.google.com/+YourName")</span>
            </td>
        </tr>

    </table>
<?php }

add_action( 'profile_update', 'gplus_authorship_profile_save' );

function gplus_authorship_profile_save( $user_id ) {
    if ( !current_user_can( 'edit_user', $user_id ) ){
        echo "You can't edit this user";
        return false;
    }
    update_usermeta( $user_id, 'gplus_author_url', $_POST['gplus_author_url'] );
    update_usermeta( $user_id, 'gplus_author_name', $_POST['gplus_author_name'] );

}

?>

Une fois le code mis en place, il vous suffit de vous rendre sur votre profil dans l’administration wordpress (utilisateurs/votre profil), et de coller l’url de votre page ou profil google+, dans le champ « URL du votre profil google+ », présent en fin de page.

La dernière étape s’effectue sur votre page google plus, dans la parti bio (about en anglais), dans le bloc liens, cliquer sur modifier et ajouter les url des sites où vous publiez vos articles.

Une fois fini google mettra entre 2 semaines et un mois pour actualiser ses données et faire apparaître votre photo de profil dans les résultats. mais vous pouvez tester votre balisage grâce à l’outil disponible ici.

balisagegplus01
Si vous obtenez ce résultat c’est que la manipulation à fonctionné correctement.

N’hésitez pas à me laisser vos commentaires, compliments, questions ou reproche ^^.

Liens utiles:

Sources du code (en anglais) : frederik.se.
Wordpress-child thème : anglais, français.
Google paternité du contenu : français.

, ,

Occitaweb

Passionné par internet et le design. je suis toujours en recherche de nouveauté, de concept originaux et efficace pour les interfaces.

Laisser un commentaire

Occitaweb création de site internet Albi

Création / formation / réseaux sociaux
18 rue dominique de florence
81000 albi