Was ist die Rolle und der Verlauf der globalen Variablen $ content_width?

16

Ich bin gerade über eine globale Variable namens gestolpert $content_width. Es war neu für mich, soweit ich sehen konnte, dass es in Themen verwendet wird, sowohl in den Standard-Einundzwanzigern als auch in denen von Dritten.

Es sieht so aus, als ob es die Breite des Inhaltsbereichs in Pixel enthält. Da globale Variablen im Codex nicht dokumentiert sind, konnte ich keine Informationen dazu finden.

Wann $content_widthund aus welchem ​​Grund wurde die globale Variable eingeführt? Gibt es ein Ticket dazu?

hakre
quelle
2
wirklich gute frage. Ich hoffe, Sie aktualisieren den Codex, sobald Sie eine endgültige Lösung erhalten haben.
Kaiser
Wenn Sie ein Thema an das WordPress-Verzeichnis senden, bestehen sie darauf, dass es festgelegt wird, bevor das Thema in Ordnung ist. Ich bin mir nicht sicher, wofür es ist: Sie könnten CSS / HTML in allen Szenarien von Philip verwenden.
@kaiser: Ich habe keine Ahnung, ob es überhaupt möglich ist, globale Variablen im Codex zu dokumentieren, aber ich werde hier oder da zumindest eine Korrektur vornehmen, wenn ich zu einer Schlussfolgerung komme.
Hakre
Ich habe eine Dokumentation im Codex erstellt: codex.wordpress.org/Content_Width
Rami
Seltsam, dass dieser Beitrag gerade im Stream auftauchte, als ich hier etwas darüber schrieb (warum es nervt) wycks.wordpress.com/2013/02/14/…
Wyck

Antworten:

5

Ich glaube, es wurde wieder auf WordPress 2.6 (vielleicht 2.5) hinzugefügt. Hier können Sie eine maximale Breite für Bilder festlegen, die als Inhalt in Ihrem Thema angezeigt werden. Beispiel: Wenn Ihr Hauptinhaltsbereich nur 475 Pixel breit ist, können Sie $ content_width = 450 festlegen, um sicherzustellen, dass Ihr Bild nicht aus Ihrem Hauptinhaltsbereich ausbricht.

Manzabar
quelle
Die einzige Referenz, die ich bisher spezifisch für einen Themenversand mit WordPress selbst finden konnte ("Kern"), ist [ core.trac.wordpress.org/ticket/10682 Ticket # 10682: Definiere $ content_width für Kubrick]. Es wurde von ViperBond eingeführt, aber er teilte keine Informationen über seine Absichten. In anderen Tickets steht, dass es sich um eine Funktion handelt, die jedoch nicht definiert ist. Sieht so aus, als hätten alle außer WordPress-Kernthemen es vor WP 2.9-rare verwendet. Das ist einige Jahre seit 2.6 / 2.5
hakre
1
Die erste Erwähnung Ich erinnere mich , war über diese Blog - Post von ihm zu sehen, mainstreetopen.com/wordpress-26-and-full-width-images ich etwas mehr Such tat und ich denke , das ist das ist core.trac.wordpress.org/ticket/ 5777 ist, als es hinzugefügt wurde.
Manzabar
1
Das Durchsuchen von Google wie site:http://svn.automattic.com/wordpress/tags/2.5 content_widthfolgt hätte die
Einschränkung
@ t31os - danke für den Hinweis auf die Google-Suche.
Hakre
Verwenden Sie es die ganze Zeit zum Durchsuchen von Trac (funktioniert besser als die Trac-Suche). :)
31.03.11
4

Ein wenig verwandt: Ich weiß nicht, ob es sinnvoll ist $content_width, ein Thema zu entwickeln, das flexible Gestaltungsmöglichkeiten bietet. Nehmen wir zum Beispiel an, Sie #contentwerden auf eingestellt, 512pxwenn für einen Benutzer Seitenleisten-Widgets aktiv sind und für 768pxeinen Benutzer keine Seitenleisten-Widgets aktiv sind. Ich sehe keinen Grund, warum CSS nicht ausreicht, um Bildüberläufe in Hauptinhaltsbereichen zu behandeln:

.size-auto, 
.size-full,
.size-large,
.size-medium,
.size-thumbnail {
    height: auto;
    max-width: 100%; }

Dieses CSS funktioniert einwandfrei, um nicht nur a) vor Bildüberläufen in benachbarte Divs zu schützen, sondern b) Bilder beim Verkleinern richtig vertikal in der Größe zu verändern, damit sie in sie passen #content. Vielleicht fehlt mir etwas, aber ich verstehe das nicht ganz $content_width.

Philip Arthur Moore
quelle
2
Das $content_widthist nicht nur präsentativ. Es wirkt sich auch auf den Admin-Bereich und die Größe von Nicht-Image-Elementen in OEMs aus.
Rarst
3
Danke Rarst. Ich habe es mir gedacht, aber es macht mich trotzdem nicht so glücklich, wenn es darum geht, Themen mit flexiblen Inhaltsbereichen zu erstellen. Ich frage mich auch, ob dies kritisch ist, wenn man bedenkt, dass max. Abmessungen können auch auf der Seite Medieneinstellungen festgelegt werden. Auf jeden Fall danke für die Antwort.
Philip Arthur Moore
Ich muss wirklich überprüfen, ob die Seite Medieneinstellungen diesen Wert ändert. Das könnte erklären, warum zehnundzwanzig ist, wenn $ content_width vorher gesetzt wird .
Hakre
3

$content_widthwird verwendet, um die Bildbreite im Beitragsinhalt zu begrenzen. Die Einstellung im Medienbereich für die largeGröße wird überschrieben . Wenn Sie diese Variable in der functions.phpDatei definieren, wird die Breite der largeGröße des hochgeladenen Bildes sein $content_width.

Hier ist ein Beitrag dazu.

Anh Tran
quelle