Por que algumas funções principais ganham wp_ enquanto outras não? Qual é a regra?

14

Existe alguma diretriz ou lógica por que algumas funções do código WP são prefixadas com wp_ ? Por exemplo: wp_insert_post() vs. update_post_meta()

    
por Tom Auger 23.08.2011 / 20:39

4 respostas

8

Isso não faz essa resposta impressionante, mas - nenhum .

get_ é sufixo geralmente significa que a função retorna algo, the_ que função ecoa algo.

wp_ não tem significado técnico e a inconsistência na nomenclatura é de muitos desenvolvedores participantes e falta de movimento para unificar (avançar é considerado mais importante do que grandes limpezas de coisas antigas para torná-lo limpo).

    
por Rarst 23.08.2011 / 21:12
2

O Wordpress foi e é escrito por muitas pessoas diferentes. Patches são discutidos dentro do wordpress trac e quem envia ou atribui a um ticket do trac pode postar patches. Se o patch for aceito e movido para o núcleo de uma nova versão, ele estará lá. Então, algumas vezes funções, vars, etc. recebem o prefixo, enquanto outras vezes não. Depende dos desenvolvedores participantes.

    
por kaiser 23.08.2011 / 21:06
2

O prefixo wp_ é normalmente adicionado para evitar conflitos de nomes com:

  • funções nativas do PHP, como get_current_user ()
  • funções WP antigas / obsoletas, como get_archives ()
  • bibliotecas de terceiros?
por scribu 27.08.2011 / 23:54
1

Sempre achei que a distinção era essa - além das tags de modelo básicas, que geralmente têm o nome descritivo mais simples possível:

    As funções de
  1. que começam com wp_ são geralmente funções de API pública de alto nível, que são praticamente garantidas para sempre estar ao redor e manter a compatibilidade de encaminhamento.
  2. as funções sem esse prefixo são internas, coisas com as quais você não deveria se mexer a menos que você saiba o que está fazendo.

Eu não sei se isso foi intencional, no entanto. E como as outras duas respostas disseram, não se sustenta de forma consistente. Seu exemplo de update_post_meta é um exemplo perfeito de algo que parece que deveria ter um prefixo wp_ se minha classificação fosse verdadeira. Mas há código legado profundo suficiente no WordPress para descartar qualquer tentativa de dar sentido a qualquer convenção de nomenclatura.

    
por goldenapples 24.08.2011 / 00:29

Tags