Exportando configurações de bloco em um recurso (Drupal 7)


13

Estou tentando aprender sobre a criação de um fluxo de trabalho razoável entre um site de desenvolvimento e um site de produção e decidi usar o módulo Recursos para ajudar a realizar essa tarefa.

Na minha primeira página, tenho alguns blocos que exibem conteúdo recém-adicionado e com a melhor classificação. Eu usei recursos para exportar essas visualizações, mas não vejo nenhuma forma dentro do módulo Recursos para exportar minhas configurações de bloco. Defino os novos projetos e os blocos com a classificação mais alta a serem exibidos na seção de conteúdo de uma página. Eu o filtro para aparecer apenas na primeira página dentro da visualização.

Como exportar essas configurações de bloco dentro do meu recurso para que eu não precise reconfigurá-las em cada site?

Respostas:


13

Você pode exportar muito mais usando o Feature juntamente com o Strongarm e o Features extra .

O Strongarm fornece aos construtores de sites uma maneira de substituir os valores de variáveis ​​padrão fornecidos pelo Drupal e pelos módulos contribuídos. Não é uma ferramenta de usuário final, mas uma ferramenta de desenvolvedor e construtor de sites que fornece uma API e uma UI limitada.

Possui suporte extra : vocabulários; nodequeues (definições); configurações de bloco; blocos personalizados (caixas).

Além disso, a integração de recursos do UUID fornece um mecanismo para exportar conteúdo (nós, taxonomia, campos) para um módulo de recursos.


1
Eu também recomendaria o uso de drush e git para lidar com o fluxo de trabalho.
Refineo 04/04/12

1
Impressionante é exatamente o que eu precisava. Eu estava pensando em começar o git depois que eu descobrisse como usar os recursos um pouco melhor.
Mike2012

Fantástico! Como Mike, isso é incrível!
precisa

4

Você pode usar o módulo Boxes conforme Exportação de blocos para recursos .

Se você preferir não instalar módulos adicionais e estiver lidando com um bloco Views (onde você simplesmente precisa das definições de configuração do bloco), outra opção é fazer isso no nível do código com uma implementação hook_update_N () na instalação de um módulo personalizado. instalar arquivo. Veja abaixo um exemplo.

/**
 * Configure block settings.
 */
function my_module_update_7101() {

  // Enable blocks
  db_update('block')
    ->fields(array(
      'status'     => 1,
      'region'     => 'content',
      'visibility' => 1,
      'pages'      => 'node/999',
      'title'      => 'My Block Title',
      'css'        => '',
      'js'         => '',
    ))
    ->condition('delta', 'BLOCK_ID')
    ->execute();
}

0

Uma alternativa é usar minipainéis em vez de blocos personalizados, conforme sugerido aqui . Eles funcionam da mesma forma, e os painéis parecem ser mais bem suportados pelos recursos. Se você já planeja usar painéis, isso também economiza alguns módulos extras.

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.