Bonjour,

Voila je rencontre un petit problème avec mon code. C'est la première fois que j'écris sur le forum. J'ai déjà lu des vidéos Graphikart et j'avais eu aucun soucis, jusqu'à aujourd'hui. Du coup, je viens vous demander de l'aide, afin de réaliser un panneau d'option personnalisé comme dans ce tutoriel.

Chapitre 1 - Description du problème

Je réalise un site web pour un client. J'utilise le thème HTML5 Blank : thème vierge, permettant d'écrire soit même tout le css. Afin de continuer dans la personnalisation client, j'ai donc modifier le backoffice, page d'accueil, et je souhaiterai aller encore plus loin en réalisant une interface dans le backoffice permettant de changer le texte de la page d'accueil. Pour cela, j'ai donc suivi le tutoriel, et pour l'instant tout se passe bien. Ma page créé est visible dans le menu, mon formulaire est remplissable et quand je clique sur sauvegarder, il sauvegarde bien les données dans la base de donnée. Mais le problème est le suivant : je ne les vois pas malgré que je les ai appelé.. Étant débutant en php, j'ai intégré les functions dans my-function.php qui est inclut dans fichier function.php. Je vous présente ci-dessous le code que j'ai réalisé.

// Panneau d'option personnalisée
        // Creation page
        function dynamic_homepage_create_menu() {
            add_menu_page('Page d\'accueil', 'Page d\'accueil', define( 'ALLOW_UNFILTERED_UPLOADS', true ), 'baw_settings_page', 'homepage_dynamic');
        }
        add_action('admin_menu', 'dynamic_homepage_create_menu');

        //Enregistrer les variables, mettre à jour, supprimer si vide.
        function homepage_dynamic() {
            if(isset($_POST['home_panel'])){
                foreach( $_POST['options'] as $name => $value){
                    if(empty($value)){
                        delete_option($name);
                    }else{
                        update_option($name, $value);
                    }
                }
            }
        //Création du contenu
        ?>
        <div class="wrap">
            <h1>Page d'accueil</h1>
            <hr class="wp-header-end">
            <form action="" method="post">
                <h2>Section accueil</h2>
                <table class="form-table">
                    <tbody>
                        <tr class="user-description-wrap">
                            <th><label for="blognametitre">Phrase d'accroche</label></th>
                            <td>
                                <input type="text" id="blognametitre" name="options[blognametitre]" class="regular-text" value="<?php get_option('blognametitre', ''); ?>" style="min-width:100%; width:100%; max-width:100%;">
                            </td>
                        </tr>
                    </tbody>
                </table>
                <h2>Section Description</h2>
                <table class="form-table">
                    <tbody>
                        <tr class="user-description-wrap">
                            <th><label for="description_visible">Texte visible</label></th>
                            <td>
                                <textarea id="description_visible" name="options['description_visible']" rows="5" cols="30" style="min-width:100%; width:100%; max-width:100%;"><?php get_option('description_visible', ''); ?></textarea>
                                <p class="description">
                                    Donnez quelques informations biographiques succintes pour décrire votre entreprise.
                                </p>
                            </td>
                        </tr>
                        <tr class="user-description-wrap">
                            <th><label for="description_hidden">Texte caché</label></th>
                            <td>
                                <textarea id="description_hidden" name="options['description_hidden']" rows="5" cols="30" style="min-width:100%; width:100%; max-width:100%;"><?php get_option('description_hidden', ''); ?></textarea>
                                <p class="description">
                                    Donnez l'ensemble des informations biographiques pour décrire qui vous êtes.
                                </p>
                            </td>
                        </tr>
                    </tbody>
                </table>
                <h2>Section Citation</h2>
                <table class="form-table">
                    <tbody>
                        <tr class="user-description-wrap">
                            <td>
                                <textarea id="citationhp" name="options['citationhp']" rows="5" cols="30" style="min-width:100%; width:100%; max-width:100%;">"<?php get_option('citationhp', '') ?>"</textarea>
                            </td>
                        </tr>
                    </tbody>
                </table>
                <table class="form-table">
                    <tbody>
                        <tr class="user-description-wrap">
                            <th><input type="submit" name="home_panel" value="Sauvegarder"></th>
                        </tr>
                    </tbody>
                </table>
            </form>
        </div>
    <?php } ?>

Chapitre 2 - Mon but

Objectif : afficher les variables qui sont enregistré dans la base de donnée.
Je les vois, mais je n'arrive pas à les appeler. Est-ce comme la blague du chien d'aveugle ? Genre, on l'appele pas on va le chercher ?

Chapitre 3 - Mon rêve

Je souhaiterai pouvoir les afficher dans le backoffice, mais en réalité, j'ai rien, aucun contenu. Pour détailler plus, voici le contenu d'une balise :

<input type="text" id="blognametitre" name="options[blognametitre]" class="regular-text" value="" style="min-width:100%; width:100%; max-width:100%;">

Il y a donc un problème vu que mon name n'a pas changé et ma balise value est vide...

Merci de votre aide,
Je suis un jeune padawan qui a soif d'apprendre.

Aucune réponse