O wp-content / install.php é um drop-in?


9

Não consigo encontrar documentação ou discussões sobre o que é e como usar os plug-ins Drop-in.
A questão foi levantada nas perguntas e respostas, Preencher conteúdo na instalação .

Um wp-content/install.phparquivo que redefine a função conectável é wp_install_defaultsum plug-in Drop-in ou não?

Meus resultados de pesquisa

A lista a seguir é do artigo de hakre (que parece ser a origem de todas as outras cópias nas interwebs) .

File                Type of Plugin                          Loaded                          Context
advanced-cache.php  Advanced caching plugin.                on WP_CACHE value               Single
db.php              Custom database class                   always                          Single
db-error.php        Custom database error message           on error                        Single
install.php         Custom install script                   on install                      Single
maintenance.php     Custom maintenance message              on maintenance                  Single
object-cache.php    External object cache                   always                          Single
sunrise.php         Executed before Multisite is loaded     on SUNRISE value                Multi
blog-deleted.php    Custom blog deleted message             on deleted blog                 Multi
blog-inactive.php   Custom blog inactive message            on inactive blog                Multi
blog-suspended.php  Custom blog suspended message           on archived or spammed blog     Multi

Source: Data taken from global function _get_dropins() in wp-admin/includes/plugin.php.

No Codex, um Drop-in é definido como :

O arquivo PHP concreto


No início, não há nada na lista [wp-hackers]. E ao pesquisar por "drop-in + wordcamp", achei relevante apenas minha ênfase :

Um dos grandes pontos fortes do WordPress é o seu sistema de plugins. Na próxima versão 2.1, há muito pouco que você não pode fazer como um plug-in suspenso . Isso facilita o uso do WordPress como um CMS e mantém suas personalizações separadas da linha de código principal; o que, por sua vez, simplifica atualizações e manutenção.


11
Não é apenas semântica? Não sendo um falante nativo de Inglês não vejo a distinção implícita entre "drop-in plug-in" e "plugin"
— Mark Kaplun

@ MarkKaplun: Não, não, não se trata de semântica. A questão está na 3ª frase: é um arquivo wp-content / install.php que redefine [...]
— brasofilo

Eu não entendo o que você quer. Você já sabe que os drop-ins são arquivos carregados como mu-plugins, apenas sem um cabeçalho de plug-in. O que está aberto?
— fuxia

@toscho, ao ponto: Wyck disse que wp-content/intall.phpnão é um Drop-in. Confiando em seu conhecimento, pensei que era necessária uma pergunta para esclarecer isso. Caso contrário, excluirei isso com prazer. Não quero criar nenhum outro tópico polêmico.
— brasofilo

Isso faria uma pergunta melhor: é install.phpum comparecimento?
— fuxia

Respostas:


9

Para responder sua pergunta, sim

De fato, existem muitas outras funções que você pode substituir nesse arquivo, que está incluído como a primeira linha de "wp-admin / includes / upgrade.php" e há muitas funções internas a serem substituídas

Infelizmente, não há muitas informações disponíveis sobre os plug-ins suspensos, mas tentarei colocar alguns pontos

  1. Eles são distintos dos plugins normais no sentido de que eles não podem ser empacotados e instalados através do administrador do wordpress.
  2. Usá-los significa que o proprietário enviou o plug-in manualmente no local correto. Portanto, supõe-se que ele seja escrito e adicionado pelo próprio proprietário.
  3. Esses plugins destinam-se apenas a ter um código específico para o site wordpress específico.
  4. Como são adicionados pelo proprietário, eles não podem ser controlados (ativados / desativados) no painel de administração. A declaração de inclusão está codificada no núcleo.
  5. Eles não precisam ter nenhum cabeçalho de arquivo.

Para resumir, eles são arquivos php codificados para serem incluídos (se existir), sempre que a funcionalidade correspondente estiver sendo carregada pelo wordpress.

Para usá-los, basta criar um arquivo php com esse nome dentro do diretório "wp-content" e ele será automaticamente incluído. É claro que esse arquivo pode incluir qualquer número de outros arquivos, conforme necessário.

EDITAR

Como toscho apontou,
1) Drop-ins (se disponíveis) também são listados no painel de administração do wordpress com todos os outros plugins. Embora diferente de outros plugins, você não tem o controle para desativá-los a partir daí.
2) O Wordpress, ao atualizar-se (atualização principal), não altera o diretório "wp-content". Por esse motivo, esses plug-ins nunca mudam entre as atualizações.
3) Você pode definir uma constante no wp-config.phpdiretório para alterar o diretório "wp-content" para outro. A constante que você precisa definir é WP_CONTENT_DIR. Isso também altera os padrões de outras constantes, como o diretório de plugins, portanto, você precisará cuidar disso também, se necessário


2
Você pode adicionar eles sobrevivem a uma atualização do WordPress, estão listados na página de administração do plug-in e pode definir caminhos adicionais para o drop-in wp-config.php.
— fuxia

Bom resumo, Mridul. Acabei de pesquisar no núcleo e sim, você está quase traduzindo para o inglês o que o código diz.
— 91312 brasofilo

1

Como wp-content/install.phpfunciona;

O processo de instalação do WP é executado wp-admin/install.php

Na linha 39 da instalação, ele é executado wp-admin/includes/upgrade.php

require_once( dirname( __FILE__ ) . '/includes/upgrade.php' );

Este arquivo verifica primeiro se há um install.php gerado pelo usuário e, se não for encontrado, executa a instalação padrão como vista por este código;

( file_exists(WP_CONTENT_DIR . '/install.php') )
    require (WP_CONTENT_DIR . '/install.php');

De que maneira esse fluxo de trabalho afeta o fato de install.phpsermos um Drop-in ou não?
— Brasofilo 9/12/12

Ainda é um "drop-in". Eu só queria fazer uma distinção com o mu-pluginque comentei acima, desculpe pela confusão, acho que o de Mridul Aggarwal está correto.
— Wyck

Sem problemas, eu realmente fiquei confuso. Mas, se o sistema chamar Must-use de um tipo e Drop-in de outro tipo, devemos seguir a convenção. Cheers :)
— brasofilo 9/12/12

Sim, as convenções de nomenclatura devem ser mais claras, mas também a maioria das pessoas não sabe sobre o costume.install.php
— Wyck
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.