Comment changer la position par défaut des boîtes de méta WP?

16

Je me demande s’il est possible de modifier la position par défaut des méta-boîtes Wordpresses, telles que "vedette" pour les types de publication personnalisés sans devoir les faire glisser manuellement?

Exemple:

    
posée Mr.Brown 07.11.2011 - 05:57

3 réponses

20

Vous pouvez supprimer les méta-boîtes par défaut avec remove_meta_box et les rajouter à une position différente avec add_meta_box:

add_action('do_meta_boxes', 'wpse33063_move_meta_box');

function wpse33063_move_meta_box(){
    remove_meta_box( 'postimagediv', 'post', 'side' );
    add_meta_box('postimagediv', __('Featured Image'), 'post_thumbnail_meta_box', 'post', 'normal', 'high');
}

Ceci le supprimera de la colonne latérale et l'ajoutera à la colonne principale. remplacez post dans cet exemple par le type de votre message personnalisé.

    
réponse donnée Milo 07.11.2011 - 07:12
5

J'ai eu du mal avec ça aussi. Je n'ai pas vraiment trouvé de moyen propre de redéfinir la mise en page / l'ordre, en particulier parce qu'il peut être modifié par les utilisateurs lorsqu'ils / / déplacent les zones.

J'aime faire des choses "avec" wordpress (cela rapporte généralement), mais ne pas entrer en conflit avec lui et la façon dont wordpress le fait est la suivante:

wordpress enregistre les positions glissées par utilisateur et par écran. De nombreuses méta-clés utilisateur sont utilisées selon la page / l'écran sur lequel il est placé.

Vous pouvez donc ajouter une action ou un filtre pour chaque nouvel utilisateur afin de définir les paramètres utilisateur de la manière que vous souhaitez utiliser par défaut.
1) Faites glisser et organisez la page que vous souhaitez affecter, puis 2) regardez dans phpmyadmin votre user-meta pour votre identifiant et voyez ce que wp y a stocké. 3) puis codez la nouvelle action utilisateur comme suit  Si un utilisateur N'A PAS déjà défini ce paramètre (pour éviter d'écraser un choix personnel), vous pouvez le définir comme vous le souhaitez - avec la valeur que vous avez trouvée en le définissant manuellement.

Pour vous faire une idée des méta-méta-utilisateurs que vous recherchez, regardez ces captures d'écran: enlace

(J'ai fini par écrire un plugin générique afin de pouvoir définir, en tant qu'administrateur, la mise en page de mon choix pour tous les utilisateurs pour toutes sortes de pages / écrans. Ensuite, ils pourraient modifier cela, par exemple à mesure qu'ils deviendraient plus compétents. Lorsque wp change les choses, car le plug-in récupère simplement les valeurs utilisateur du modèle, il n'essaie même pas de définir cette valeur sur une valeur codée en dur.)

    
réponse donnée anmari 07.11.2011 - 07:00
0

Si vous souhaitez commander précisément vos méta-boîtes, vous pouvez utiliser ce plugin: enlace

Il joue sur la meta-box-order_post de l'option utilisateur (table wp_usermeta).

Remarque 1: cette technique peut être appliquée à n'importe quel CPT personnalisé en modifiant la fin du drapeau: meta-box-order_ [YOUR_CPT]

Remarque 2: n'oubliez pas de modifier le hachage dans le code du plug-in pour appliquer votre nouvelle commande à tous les utilisateurs existants.

    
réponse donnée rebe100x 27.09.2016 - 13:28

Lire d'autres questions sur les étiquettes