web-dev-qa-db-fra.com

Comment afficher un message global sur une page de profil utilisateur (en back-end)?

Je souhaite afficher un message global pour tous les utilisateurs dans leur page de profil. Je ne veux pas éditer profile.php quel est le hookpour le faire?

En gros, je veux ajouter un divpour afficher un paragraphen dessous du message div id <div id="message" class="updated"> et au-dessus du <form id="your-profile" novalidate="novalidate" method="post" action="http://localhost/wordpress/gantry/demo2/wp-admin/profile.php">

into this

1
Riffaz Starr

ajoutez ce code à votre function.php

<?php
function showMessage($message, $errormsg = false)
{
    if ($errormsg) {
        echo '<div id="message" class="error">';
    }
    else {
        echo '<div id="message" class="updated fade">';
    }
    echo "<p><strong>$message</strong></p></div>";
} 

function showAdminMessages()
{
    showMessage("This is my message.", true);
}
add_action('admin_notices', 'showAdminMessages');
?>
1
namira

Malheureusement, ce n'est pas possible, il n'y a tout simplement pas de hook à utiliser dans wp-admin/edit-use.php.

Le plus près que vous puissiez faire est de placer quelque chose sous Options personnelles , bien que ce hook soit appelé à la fin de cette section, votre message sera un peu affiché. en bas de la page -

add_action('personal_options', 'my_edit_user_admin_message');
function my_edit_user_admin_message(){
?>
    <tr class="show-admin-bar user-admin-bar-front-wrap">
        <th scope="row"><label for="admin_bar_front"><?php _e( 'Admin message' )?></label></th>
        <td><fieldset>
                <legend class="screen-reader-text"><span><?php _e('Admin message') ?></span></legend>
                <label><p id="my-admin-message">This is my message.</p></label><br />
        </fieldset></td>
    </tr>
<?php
}

Bien que non techniquement valide (la plupart des navigateurs le corrigeront, mais pas tous), vous pouvez utiliser le code ci-dessous, ce qui forcera votre message à se placer en haut des options personnelles section, mais toujours sous l'en-tête.

Cependant, il est recommandé de ne pas l'utiliser, car il est incorrect d'insérer un élément block dans un élément table.

add_action('personal_options', 'my_edit_user_admin_message');
function my_edit_user_admin_message(){
?>
    <div id="my-admin-message">
        <p>This is my message.</p>
    </div>
<?php
}
0
David Gard