it-swarm.com.de

Formatieren Sie benutzerdefinierte Spalten in Admin-Bedienfeldern (insbesondere zum Anpassen der Spaltenbreiten).

Ich verwende Wordpress als CMS für ein Projekt, bei dem benutzerdefinierte Beitragstypen in großem Umfang verwendet werden. Ich muss Spalten in Admin-Panels für jeden benutzerdefinierten Beitragstyp auf unterschiedliche Weise anzeigen.

Ich habe bereits die erforderlichen Spalten erstellt und diese ausgefüllt. Was ich tun muss, ist, das CSS ein wenig anzupassen. Vor allem versuche ich, die Breite bestimmter Spalten zu optimieren. Zum Beispiel brauche ich keine Spalte, in der die Beitrags-ID so breit ist wie der Beitragsname.

Ich habe ein Stylesheet in den Admin-Bedienfeldern für meine benutzerdefinierten Beitragstypen in die Warteschlange gestellt, kann die Spaltenbreiten jedoch nicht richtig formatieren.

Ich habe versucht, die maximale Breite der Elemente th oder td anzupassen, aber dies ist unwirksam. Aus Firebug kann ich sehen, dass der CSS-Stil vorhanden ist, aber er tut nichts.

Obwohl ich viele Tutorials zum Hinzufügen/Bearbeiten von benutzerdefinierten Spalten finden konnte, habe ich nicht wirklich viele Informationen zum Stylen solcher Spalten gesammelt. Irgendein Hinweis?

Vielen Dank!

14
unfulvio

Ich habe eine Lösung gefunden, die für mich funktioniert!

Ich habe diesen Code in functions.php abgelegt:

add_action('admin_head', 'my_column_width');

function my_column_width() {
    echo '<style type="text/css">';
    echo '.column-mycolumn { text-align: center; width:60px !important; overflow:hidden }';
    echo '</style>';
}
25

Danke Nicusor: Funktioniert super. Ich konnte die Breite der ausgewählten Spalten im Bereich "Beiträge" (z. B. Titel, Autor, Kategorien) mit Ihrer Lösung wie folgt ändern:

add_action('admin_head', 'my_admin_column_width');
function my_admin_column_width() {
    echo '<style type="text/css">
        .column-title { text-align: left; width:200px !important; overflow:hidden }
        .column-author { text-align: left; width:100px !important; overflow:hidden }
        .column-categories { text-align: left; width:100px !important; overflow:hidden }
    </style>';
}
7
Charles Borden

Sie können versuchen, dies Ihre Probleme gelöst:

add_action('admin_head', 'my_admin_custom_styles');
function my_admin_custom_styles() {
    $output_css = '<style type="text/css">
        .column-date { display: none }
        .column-tags { display: none }
        .column-author { width:30px !important; overflow:hidden }
        .column-categories { width:30px !important; overflow:hidden }
        .column-title a { font-size:30px !important }
    </style>';
    echo $output_css;
}
4
Gaurang P

Sie sollten in der Lage sein, die Spaltenbreite ganz einfach mit CSS einzustellen. Mit der Klasse .column-{name} können Sie Stile auf die Spaltenzellen anwenden (sowohl th als auch td). Zum Beispiel:

.column-mycolumn { width:20%; }

Stellen Sie sicher, dass keine anderen Stile Ihre Spaltenbreite überschreiben, da CSS-Spezifität Regeln. Auch lange Wörter ohne Leerzeichen oder große Bilder können dazu führen, dass die Spalte breiter als in einigen Browsern angegeben ist.

4
Geert