Qual é o papel e o histórico da variável global $ content_width?

16

Eu apenas tropecei em uma variável global chamada $content_width. Era novo para mim, até agora eu pude ver que ele é usado em temas, tanto no padrão vinte quanto dez dez um e de terceiros.

Parece que ele contém a largura da área de conteúdo em pixels. Como as variáveis ​​globais não estão documentadas no códice, tive problemas para encontrar informações sobre ele.

Quando a $content_widthvariável global foi introduzida e por que motivo? Existe um ticket relacionado a isso?

hakre
fonte
2
realmente boa pergunta. Espero que você atualize o codex depois de obter uma solução definitiva.
kaiser
Se você enviar um tema para o diretório do WordPress, eles insistirão em que seja definido antes que o tema seja aprovado. Não sei para que serve: você pode usar CSS / HTML em todos os cenários de Philip.
@ Kaiser: Eu não tenho idéia se é possível documentar variáveis ​​globais no codex, mas farei pelo menos um artigo aqui ou ali, se eu chegar a alguma conclusão, com certeza.
21711 ha hakre
Eu criei uma documentação no codex: codex.wordpress.org/Content_Width
Rami
Estranho este post só apareceu no fluxo como eu estava escrevendo algo sobre isso aqui (em porque ele suga) wycks.wordpress.com/2013/02/14/...
Wyck

Respostas:

5

Eu acredito que foi adicionado novamente no WordPress 2.6 (talvez 2.5). Está lá para permitir que você defina uma largura máxima nas imagens exibidas como conteúdo em seu tema. Por exemplo, se sua área de conteúdo principal tem apenas 475px de largura, você pode definir $ content_width = 450 para garantir que sua imagem não saia da sua área de conteúdo principal.

Manzabar
fonte
A única referência que pude encontrar até agora específica para um envio de tema com o próprio wordpress ("core") é [ core.trac.wordpress.org/ticket/10682 Ticket nº 10682: Defina $ content_width for Kubrick]. Foi introduzido por ViperBond, mas ele não compartilhou nenhuma informação sobre suas intenções. Está escrito em outros tickets que é um recurso, mas permanece indefinido. Parece que todos, exceto os temas centrais do wordpress, estavam usando o WP 2.9 raro antes. Isso faz alguns anos desde 2.6 / 2.5
hakre 11/03/11
1
A primeira menção que me lembro de ter visto foi através desta postagem no blog, mainstreetopen.com/wordpress-26-and-full-width-images . Pesquisei um pouco mais e acho que esse é o core.trac.wordpress.org/ticket/ 5777 é quando foi adicionado.
Manzabar 11/03/11
1
Pesquisar no Google como isso seria de fez estreitamento quando foi introduzido muito mais fácil .. site:http://svn.automattic.com/wordpress/tags/2.5 content_width(sem resultados para 2,4) ...
t31os
@ t31os - obrigado por essa dica de pesquisa do google.
21711 hakre
Use-o o tempo todo para pesquisar no Trac (funciona melhor que na pesquisa no Trac). :)
t31os
4

Um pouco relacionado: não sei se é razoável usar $content_widthse você planeja desenvolver um tema que permita opções de design flexíveis. Por exemplo, digamos que você #contentserá definido como 512pxse um usuário tiver widgets da barra lateral ativos e 768pxse um usuário não tiver widgets da barra lateral ativos. Não vejo razão para que o CSS não seja suficiente para lidar com estouros de imagem nas principais áreas de conteúdo:

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

Esse CSS funciona perfeitamente bem para não apenas a) proteger contra transbordamentos de imagem em DIVs adjacentes, mas também b) redimensionar corretamente as imagens verticalmente quando elas são reduzidas para serem ajustadas #content. Talvez esteja faltando alguma coisa, mas não preciso disso $content_width.

Philip Arthur Moore
fonte
2
O $content_widthnão é meramente apresentacional. Também afeta as coisas na área de administração e o tamanho dos elementos que não são de imagem nos oembeds.
Rarst
3
Obrigado Rarst. Imaginei, mas ainda não me sinto tão feliz com isso quando se trata de criar temas com áreas de conteúdo flexíveis. Além disso, gostaria de saber se isso é crítico, dado que As dimensões também podem ser definidas na página Configurações de mídia. De qualquer forma, obrigado pela resposta.
Philip Arthur Moore
Eu realmente preciso verificar se a página Configurações de mídia está modificando esse valor. Isso poderia explicar por que vinte e dez estão verificando o conjunto anterior de $ content_width .
hakre
3

$content_widthé usado para limitar a largura da imagem no conteúdo da postagem. Ele substituirá a configuração na seção Mídia para o largetamanho. Se você definir esta variável no functions.phparquivo, a largura do largetamanho da imagem carregada será $content_width.

Aqui está um post sobre isso.

Anh Tran
fonte