it-swarm.com.de

So ändern Sie die Standardposition von WP Meta-Boxen?

Ich frage mich, ob es eine Möglichkeit gibt, die Standardposition von Wordpresses-Metaboxen wie "Featured Image" für benutzerdefinierte Beitragstypen zu ändern, ohne sie manuell ziehen zu müssen.

Beispiel:  Meta Box Positioning Example

16
Mr.Brown

Sie können die Standard-Meta-Boxen mit remove_meta_box entfernen und sie an einer anderen Position mit add_meta_box erneut hinzufügen:

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');
}

Dadurch wird es aus der Seitenspalte entfernt und der Hauptspalte hinzugefügt. Ändern Sie in diesem Beispiel post in den Namen Ihres benutzerdefinierten Beitragstyps.

20
Milo

Ich hatte auch damit zu kämpfen. Ich habe nicht wirklich eine saubere Möglichkeit gefunden, das Layout/die Reihenfolge neu zu definieren - zumal es von den Benutzern geändert werden kann, wenn/wenn sie die Felder ziehen.

Ich mag es, Dinge mit WordPress zu tun (das zahlt sich normalerweise aus), mich zu überschneiden, und wie WordPress es tut, ist es wie folgt:

wordPress speichert die gezogenen Positionen pro Benutzer und Bildschirm und es gibt eine ganze Reihe von Benutzer-Meta-Tasten, die es verwendet, je nachdem, auf welcher Seite/auf welchem ​​Bildschirm es sich befindet.

Sie können also für jeden neuen Benutzer eine Aktion oder einen Filter hinzufügen, um den Benutzer so einzustellen, wie Sie es möchten.
1) Ziehe und ordne die Seite, die du beeinflussen möchtest, und 2) schaue in phpmyadmin in deiner Benutzermeta nach deiner ID und finde heraus, was wp dort gespeichert hat. 3) Codieren Sie dann die neue Benutzeraktion wie folgt, wenn ein Benutzer diese Einstellung NICHT bereits festgelegt hat (um zu vermeiden, dass eine persönliche Auswahl überschrieben wird). Sie können sie so festlegen, wie Sie es möchten - mit dem Wert, den Sie durch manuelles Festlegen erhalten haben.

In den folgenden Screenshots können Sie sich ein Bild von den von Ihnen gesuchten Benutzer-Meta-Metas machen: http://wpusersplugin.com/related-plugins/amr-user-templates/screenshots-for-user-templates/

(Am Ende habe ich ein allgemeines Plugin geschrieben, damit ich als Administrator mein bevorzugtes Layout für alle Benutzer für alle Arten von Seiten/Bildschirmen definieren kann. Dann könnten sie das ändern, z. B. weil sie erfahrener geworden sind. Außerdem wird es nicht kaputt gehen, wenn sich WP ändert Dinge wie das Plug-in ruft nur die Benutzerwerte der Vorlage ab, es versucht nicht einmal, den Wert auf einen fest codierten Wert zu setzen.)

5
anmari

Wenn Sie genau Ihre Meta-Boxen bestellen möchten, können Sie dieses Plugin verwenden: https://wordpress.org/plugins/post-meta-box-order/

Es wird auf der Meta-Box-Order_post der Benutzeroption (Tabelle wp_usermeta) abgespielt.

Hinweis 1: Diese Technik kann auf jeden benutzerdefinierten CPT angewendet werden, indem das Ende des Flags geändert wird: meta-box-order_ [YOUR_CPT]

Hinweis 2: Vergessen Sie nicht, den Hash im Code des Plugins zu ändern, um Ihre neue Bestellung auf alle vorhandenen Benutzer anzuwenden.

0
rebe100x