Desenvolvimento em Pro Drupal 7 - 3ª Edição

O livro possui foco no desenvolvedor, responsável pela criação e extensão da capacidade de um web site baseado em Drupal. A obra cobre tudo: os fundamentos da plataforma Drupal; o entendimento de como usar as APIs de Drupal; a escrita de módulos próprios para estender a funcionalidade de Drupal; a escrita de código seguro; a construção de web sites de alto desempenho; e outros tópicos que ajudarão o leitor ao longo do caminho para se tornar um especialista em Drupal.

VITRINE Os TOP de vendas !!

Por: R$ 105,00ou X de

+-
Comprar
Opções de Parcelamento:
  • à vista R$ 105,00
  • 2X de R$ 52,50 sem juros
Outras formas de pagamento

Quem viu este produto , comprou

Quem viu este produto , também se interessou

  • Descrição
    Desenvolvimento em Pro Drupal 7 - 3ª Edição

    Muitos dos mais populares websites do planeta usam Drupal como plataforma para entregar conteúdo e funcionalidade aos visitantes. Com o lançamento de Drupal 7, o mercado vivenciou o início de uma nova era, com recursos e funcionalidade que elevam o nível do que você pode realizar na web. Com Drupal 7, você descobrirá como explorar a fundo os recursos de Drupal para criar soluções surpreendentes.
    O livro possui foco no desenvolvedor, responsável pela criação e extensão da capacidade de um web site baseado em Drupal. A obra cobre tudo: os fundamentos da plataforma Drupal; o entendimento de como usar as APIs de Drupal; a escrita de módulos próprios para estender a funcionalidade de Drupal; a escrita de código seguro; a construção de web sites de alto desempenho; e outros tópicos que ajudarão o leitor ao longo do caminho para se tornar um especialista em Drupal.
    O que você pode fazer com Drupal é limitado somente por sua imaginação e pelo tempo que dedicar a aprender a riqueza de tudo que Drupal oferece a você, desenvolvedor. Pro Drupal 7 dá a você as ferramentas de que precisa para tirar total proveito dos poderosos recursos de Drupal.
  • Sobre o Autor
  • Especificação

    Características

    Tipo de LivroLivro Físico

    Especificações

    Sobre o AutorTodd Tomlinson

    Todd Tomlinson é vice-presidente de eGovernment Solutions da ServerLogic Corporation, em Portland, Oregon. Ao longo de mais de 15 anos, o foco de Todd tem sido o projeto, desenvolvimento, utilização e suporte de complexas soluções para web, tendo em vista clientes dos setores público e privado ao redor do mundo. Ele usa Drupal como principal plataforma para a criação de sites belos e ricos em recursos, como http://arapahoelibraries.org/ald/.


    Antes da ServerLogic, Todd foi diretor sênior de eBusiness Strategic Services para Oracle Corporation, onde ajudou os maiores clientes da Oracle a desenvolverem planos estratégicos para aumentar a participação da web em seus negócios. Ele também foi vice-presidente de Internet Solutions para o Claremont Technology Group, vice-presidente e CTO da Emerald Solutions, diretor gerente de CNF Ventures e gerente sênior da Andersen Consulting/Accenture. Todd é formado em Ciência da Computação e também tem um MBA. Atualmente, desenvolve sua tese de doutorado.

    A paixão de Todd por Drupal fica evidente em sua obsessão com a evangelização pela plataforma e seu entusiasmo ao falar com clientes sobre o que podem fazer com Drupal. Se quiser ver alguém ficar literalmente “aceso”, pare-o na rua e pergunte “O que é Drupal e o que pode fazer para mim?”. Todd também é autor do livro Beginning Drupal 7.
    Informações TécnicasSumário

    Capítulo 1 Como Drupal Funciona - 1
    O que é Drupal? - 1
    Pilha de Tecnologia - 2
    Núcleo - 3
    Interface Administrativa - - 4
    Módulos - 4
    Ganchos (Hooks) - 6
    Temas (Themes) - 6
    Nós - 7
    Campos - 8
    Blocos - 8
    Estrutura de Arquivos - 8
    Atendimento de Solicitações - 11
    Papel do Servidor de Web - 12
    O processo de Bootstrap - 12
    Processamento de uma Solicitação - 13
    Aplicação de Temas a Dados - 13
    Resumo - 13

    Capítulo 2 Como Escrever Módulos - 15
    Criação de Arquivos - 15
    Implementação de um Gancho (Hook) - 18
    Adição de Configuração Específica a Módulos - 20
    Definição de uma Sessão de Administração Própria - 29
    Apresentação de um Formulário de Configuração ao Usuário - 31
    Validação de Configuração Submetida pelo Usuário - 33
    Armazenamento da Configuração - 34
    Uso da Tabela variables de Drupal - 34
    Uso de variable_get() para Recuperação de Valores Armazenados - 35
    Passos Adicionais - 35
    Resumo - 36

    Capítulo 3 Ganchos, Ações e Gatilhos - 37
    Eventos e Gatilhos - 37
    Ações - 39
    Interface de Usuário para Alocação de Gatilhos - 40
    Primeira Ação - 42
    Alocação da Ação - 43
    Alteração de Gatilhos Suportados por uma Ação - 44
    Ações que Suportam Qualquer Gatilho - 45
    Ações Avançadas - 45
    Uso de Contexto em Ações - 50
    Como o Módulo Gatilho Prepara o Contexto - 50
    Alteração de uma Ação Existente via drupal_alter() - 51
    Estabelecimento do Contexto - 52
    Como Ações São Armazenadas - 54
    Tabela actions - 54
    IDs de Ações - 55
    Chamada de uma Ação Diretamente via actions_do() - 55
    Definição de Gatilhos com hook_trigger_info() - 56
    Adição de Gatilhos a Ganchos Pré-Existentes - 59
    Resumo - 60

    Capítulo 4 Sistema de Menu - 61
    Mapeamento de Callback - 61
    Mapeamento de URLs em Funções - 61
    Argumentos de Page Callback - 68
    Page Callbacks em Outros Arquivos - 71
    Adição de um Link ao Bloco de Navegação - 72
    Aninhamento de Menus - 74
    Controle de Acesso - 75
    Localização e Personalização de Título - 77
    Definição de um Title Callback - 77
    Wildcards em Itens de Menu - 79
    Wildcards Básicos - 79
    Wildcards e Parâmetros de Page Callback - 80
    Uso do Valor de um Wildcard - 80
    Wildcards e Substituição de Parâmetros - 81
    Passagem de Argumentos Adicionais à Função Load - 83
    Argumentos Load Especiais e Pré-Definidos: %map e %index - 84
    Construção de Rotas a partir de Wildcards via Funções to_arg() - 84
    Casos Especiais para Wildcards e Funções to_arg() - 85
    Alteração de Itens de Menu de Outros Módulos - 85
    Alteração de Links de Menu de Outros Módulos - 87
    Tipos de Itens de Menu - 87
    Tarefas Comuns - 89
    Alocação de Callbacks sem Adição de um Link ao Menu - 90
    Exibição de Itens de Menu como Abas - 90
    Ocultação de Itens de Menu Existentes - 92
    Uso do Módulo menu.module - 92
    Erros Comuns - 93
    Resumo - 94

    Capítulo 5 Como Usar Bases de Dados - 95
    Definição de Parâmetros da Base de Dados - 95
    Camada de Abstração de Base de Dados - 96
    Como Conectar-se à Base de Dados - 98
    Como Executar Consultas Simples - 98
    Como Recuperar Resultados de Consultas - 100
    Obtenção de Um Valor Isolado - 100
    Obtenção de Múltiplas Linhas - 101
    Uso do Construtor de Consultas e de Objetos de Consulta - 101
    Obtenção de Um Intervalo Limitado de Resultados - 102
    Obtenção de Resultados para Exibição Paginada - 103
    Outras Consultas Comuns - 104
    Inserção e Atualização com drupal_write_record() - 105
    Schema API - 106
    Uso de Arquivos .install do Módulo - 106
    Como Criar Tabelas - 106
    Uso do Módulo Schema - 109
    Mapeamento do Campo de Tipo do Esquema à Base de Dados - 110
    Declaração de um Tipo Específico de Coluna com mysql_type - 113
    Manutenção de Tabelas - 115
    Remoção de Tabelas via Uninstall - 116
    Alteração de Schemas com hook_schema_alter() - 116
    Modificação de Consultas de Outros Módulos com hook_query_alter() - 118
    Conexão a Múltiplas Bases de Dados em Drupal - 119
    Uso de uma Tabela Temporária - 120
    Como Escrever uma Base de Bados Própria - 121
    Resumo - 122

    Capítulo 6 Como Trabalhar com Usuários Objeto $user - 123
    Como Verificar se um Usuário Fez Login - 126
    Introdução a user hooks - 126
    Uso de hook_user_view($account, $view_mode) - 128
    Processo de Cadastro de Usuário - 130
    Uso de profile.module para Coleta de Informação de Usuário - 132
    Processo de Login - 133
    Adição de Dados ao Objeto $user Durante Carregamento - 135
    Como Prover Categorias de Informação de Usuário - 137
    Login Externo - 137
    Resumo - 142

    Capítulo 7 Como Trabalhar com Nós - 143
    O Que É Exatamente um Nó? - 143
    Nem Tudo É um Nó - 147
    Criação de um Módulo Nó - 147
    Criação do Arquivo the .install - 148
    Criação do Arquivo .info - 150
    Criação do Arquivo .module - 150
    Provimento de Informação Sobre Nosso Tipo de Nó - 150
    Modificação de Callback de Menu - 152
    Definição de Permissões Específicas ao Tipo de Nó com hook_permission() - 153
    Limitação de Acesso a um Tipo de Nó com hook_access() - 153
    Personalização do Formulário de Nó para Nosso Tipo de Nó - 155
    Validação de Campos com hook_validate() - 156
    Como Salvar Nossos Dados com hook_insert() - 157
    Manutenção de Dados Correntes com hook_update() - 158
    Remoção com hook_delete() - 158
    Modificação de Nós de Nosso Tipo com hook_load() - 159
    Uso de hook_view() - 159
    Manipulação de Nós Que Não São de Nosso Tipo com hook_node_xxxxx() - 161
    Como Nós São Armazenados - 163
    Criação de um Tipo de Nó com Tipos de Conteúdo Personalizados - 165
    Restrição de Acesso a Nós - 165
    Definição de Concessão a Nó - 166
    Processo de Acesso a Nó - 168
    Resumo - 169

    Capítulo 8 Como Trabalhar com Campos - 171
    Criação de Tipos de Conteúdo - 171
    Adição de Campos a um Tipo de Conteúdo - 174
    Criação de um Campo Personalizado - 178
    Adição de Campos Programaticamente - 189
    Resumo - 192

    Capítulo 9 Sistemas de Temas - 193
    Temas - 193
    Instalação de um Tema Pronto - 193
    Como Construir um Tema - 194
    Arquivo .info - 202
    Adição de Regiões ao Tema - 203
    Adição de Arquivos CSS ao Tema - 203
    Adição de Arquivos JavaScript - 204
    Adição de Especificações ao Tema - 204
    Uso de Arquivos de Template - 207
    Visão Geral - 208
    Arquivo html.php.tpl - 210
    Extensão de Arquivos de Template - 224
    Outros Arquivos de Template - 226
    Extensão de Itens que Podem Receber Temas - 228
    Extensão com Arquivos de Template - 231
    Adição e Manipulação de Variáveis de Template - 231
    Uso do Módulo de Desenvolvimento de Tema - 233
    Resumo - 234

    Capítulo 10 Como Trabalhar com Blocos - 235
    O Que É um Bloco? - 235
    Opções de Configuração de Blocos - 238
    Posicionamento de um Bloco - 239
    Definição de um Bloco - 240
    Uso do Gancho Bloco - 242
    Construção de um Bloco - 243
    Habilitação de um Bloco Quando um Módulo Está Instalado - 250
    Exemplos de Visibilidade de Blocos - 250
    Exibição de um Bloco Apenas a Usuários que Fizeram Login - 251
    Exibição de um Bloco Apenas a Usuários Anônimos - 251
    Resumo - 251

    Capítulo 11 API de Formulários - 253
    Processamento de Formulários - 254
    Inicialização do Processo - 255
    Definição de um Token - 255
    Definição de uma ID - 255
    Coleta de Todas Possíveis Definições de Elementos de Formulário - 256
    Busca de uma Função de Validação - 257
    Busca de uma Função para Submissão - 257
    Permissão para que Módulos Alterem o Formulário Antes da Construção - 257
    Construção do Formulário - 258
    Como Permitir que Funções Alterem o Formulário depois de Construído . 258
    Verificação da Submissão do Formulário - 258
    Busca de uma Função de Tema para o Formulário - 259
    Como Permitir que Módulos Modifiquem o Formulário Antes da Exibição - 259
    Processamento do Formulário - 259
    Validação do Formulário - 260
    Submissão do Formulário - 262
    Redirecionamento do Usuário - 262
    Criação de Formulários Básicos - 262
    Propriedades de Formulários - 265
    IDs de Formulário - 265
    Fieldsets - 266
    Aplicação de Temas a Formulários - 269
    Especificação de Funções de Validação e Submissão via hook_forms() - 273
    Ordem de Chamada de Funções de Temas, Validação e Submissão - 274
    Escrita de uma Função de Validação - 275
    Reconstrução de Formulário - 279
    Escrita de uma Função de Submissão - 280
    Alteração de Formulários com hook_form_alter() - 280
    Submissão de Formulários Programaticamente com drupal_form_submit() - 282
    Formulários Dinâmicos - 282
    Propriedades da API de Formulários - 290
    Propriedades para a Raiz do Formulário - 290
    Propriedades Adicionadas a Todos os Elementos - 290
    Propriedades Permitidas em Todos os Elementos - 291
    Elementos de Formulários - 295
    Resumo - 313

    Capítulo 12 Manipulação de Entrada do Usuário: Sistema de Filtros - 315
    Filtros - 315
    Filtros e Formatos de Texto - 316
    Instalação de um Filtro - 320
    Quando Usar Filtros - 320
    Criação de um Filtro Personalizado - 321
    Implementação de hook_filter_info() - 322
    Função Processadora - 323
    Função Auxiliar - 323
    Resumo - 326

    Capítulo 13 Busca e Indexação de Conteúdo - 327
    Construção de uma Página de Busca Personalizada - 327
    Formulário-Padrão de Buscas - 328
    Formulário de Buscas Avançadas - 328
    Adições ao Formulário de Buscas - 329
    Uso do Indexador HTML de Buscas - 333
    Quando Usar o Indexador - 333
    Funcionamento do Indexador - 334
    Resumo - 343

    Capítulo 14 Uso de Arquivos - 345
    Como Drupal Serve Arquivos - 345
    APIs Gerenciadas e Não Gerenciadas de Drupal - 346
    Arquivos Públicos - 347
    Arquivos Privados - 348
    Especificações PHP - 348
    Manipulação de Mídia - 350
    Envio de Arquivos - 350
    Vídeo e Áudio - 351
    API de Arquivos - 351
    Esquema de Base de Dados - 352
    Tarefas e Funções Comuns - 353
    Autenticação de Ganchos para Download de Arquivos - 364
    Resumo - 366

    Capítulo 15 Uso de Taxonomia - 367
    Estrutura de Taxonomia - 367
    Criação de um Vocabulário - 368
    Criação de Termos - 368
    Alocação de um Vocabulário a um Tipo de Conteúdo - 368
    Tipos de Taxonomia - 370
    Simples (Flat) - 370
    Hierárquico - 370
    Multiplamente Hierárquico - 372
    Visualização de Conteúdo por Termo - 373
    Uso de AND e OR em URLs - 373
    Especificação de Profundidade para Vocabulários Hierárquicos - 374
    Feeds RSS Automáticos - 375
    Armazenamento de Taxonomias - 375
    Vocabulários Baseados em Módulos - 377
    Criação de um Vocabulário Baseado em Módulo - 377
    Uso de Ganchos de Taxonomia para Acompanhar Alterações de Vocabulário - 378
    Tarefas Comuns - 379
    Exibição de Termos de Taxonomia Associados a um Nó - 379
    Construção de Consultas de Taxonomia - 380
    Uso de taxonomy_select_nodes() - 380
    Funções de Taxonomia - 380
    Recuperação de Informação sobre Vocabulários - 381
    Adição, Modificação e Remoção de Vocabulários - 381
    Recuperação de Informação sobre Termos - 382
    Adição, Modificação e Remoção de Termos - 383
    Recuperação de Informação sobre Hierarquia de Termo - 384
    Como Encontrar Nós com Certos Termos - 386
    Recursos Adicionais - 387
    Resumo - 387

    Capítulo 16 Caching - 389
    Quando Utilizar Cache - 389
    Como Caching Funciona - 390
    Como Caching É Usado no Núcleo de Drupal - 392
    Sistema de Menu - 393
    Caching de Texto Filtrado - 393
    Variáveis Administrativas e Configurações de Módulos - 393
    Blocos - 398
    Uso da API de Cache - 400
    Resumo - 405

    Capítulo 17 Sessões - 407
    O que São Sessões? - 407
    Uso - 407
    Especificações Relativas a Sessões - 409
    No arquivo .htaccess - 409
    No arquivo settings.php - 410
    No arquivo bootstrap.inc - 410
    Necessidade de Cookies - 411
    Armazenagem - 412
    Ciclo de Vida de uma Sessão - 413
    Conversas em uma Sessão - 414
    Primeira Visita - 415
    Segunda Visita - 415
    Usuário com Conta - 415
    Tarefas Comuns - 416
    Alteração da Duração de um Cookie - 416
    Alteração do Nome de uma Sessão - 416
    Armazenamento de Dados na Sessão - 417
    Resumo - 417

    Capítulo 18 Uso de jQuery - 419
    O que é jQuery? - 419
    Modo Antigo - 420
    Funcionamento de jQuery - 421
    Uso de um Seletor de ID de CSS - 421
    Uso de um Seletor de Classe de CSS - 422
    jQuery Com Drupal - 423
    Primeiro Código jQuery - 423
    Como focar um Elemento por ID - 426
    Concatenação de Métodos - 426
    Adição ou Remoção de uma Classe - 426
    Como Envolver Elementos Existentes - 427
    Alteração de Valores de Elementos de CSS - 428
    Onde Colocar JavaScript - 428
    JavaScript Extensível - 432
    Construção de um Widget de Votação jQuery - 435
    Construção do Módulo - 438
    Uso de Drupal.behaviors - 445
    Formas para Estender Este Módulo - 446
    Compatibilidade - 446
    Próximos Passos - 446
    Resumo - 447


    Capítulo 19 Localização e Tradução - 449
    Habilitação do Módulo Locale - 449
    Interface de Usuário de Tradução - 449
    Strings - 450
    Tradução de Strings com t() - 450
    Substituição de Strings Embutidas por Strings Personalizadas - 452
    Início de uma Nova Tradução - 461
    Geração de Arquivos .pot com o Extrator de Template de Tradução - 462
    Criação de um Arquivo .pot File para um Módulo - 462
    Criação de Arquivos .pot Files para um Site Completo - 464
    Instalação de uma Tradução de Idioma - 464
    Definição de uma Tradução na Instalação - 465
    Instalação de uma Tradução em um Site Existente - 466
    Suporte a Idiomas da Direita para a Esquerda - 467
    Negociação de Idioma - 468
    Default - 469
    Apenas Prefixo de Rota - 471
    Prefixo de Rota com Retrocedimento de Idioma - 472
    Apenas URL - 473
    Tradução de Conteúdo - 474
    Apresentação do Módulo Tradução de Conteúdo - 474
    Suporte Multi-Idioma - 474
    Suporte Multi-Idioma com Tradução - 476
    Arquivos Relacionados a Localização e Tradução - 480
    Recursos Adicionais - 481
    Resumo - 482

    Capítulo 20 XML-RPC - 483
    O Que É XML-RPC? - 483
    Pré-Requisitos para XML-RPC - 483
    Clientes XML-RPC - 484
    Exemplo de Cliente XML-RPC: Obtenção da Hora - 484
    Exemplo de Cliente XML-RPC: Obtenção do Nome de um Estado - 486
    Manejo de Erros de Cliente XML-RPC - 487
    Um Servidor XML-RPC Simples - 490
    Mapeamento de um Método com hook_xmlrpc() - 490
    Validação de Tipo de Parâmetro Automática com hook_xmlrpc() - 491
    Métodos XML-RPC Embutidos - 493
    system.listMethods - 494
    system.methodSignature - 494
    system.methodHelp - 495
    system.getCapabilities - 495
    system.multiCall - 496
    Resumo - 496

    Capítulo 21 Como Escrever Código Seguro - 497
    Manejo de Entrada de Usuário - 497
    Considerações Sobre Tipos de Dados - 498
    Uso de check_plain() e t() para Desinfetar Saída - 501
    Uso de filter_xss() para Evitar Ataques Entre Sites via Scripts - 503
    Uso de filter_xss_admin() - 505
    Manejo Seguro de URLs - 506
    Como Fazer Consultas Seguras com db_query() - 507
    Uso de hook_alter_query() para Manter Dados Privados Privados - 510
    Consultas Dinâmicas - 510
    Permissões e Callbacks de Página - 511
    Forjamentos de Solicitações Entre Sites (CSRF Cross-Site Request Forgeries) - 512
    Segurança de Arquivos - 512
    Permissões para Arquivos - 513
    Arquivos Protegidos - 513
    Envio de Arquivos - 514
    Nomes de Arquivos e Rotas - 514
    Codificação de Cabeçalhos de Correio - 515
    Arquivos para Ambientes de Produção - 516
    Suporte SSL - 517
    PHP Autônomo - 517
    Segurança AJAX, ou Ataque de Reprodução de Solicitação (Request Replay Attack) - 519
    Segurança da API de Formulários - 519
    Proteção da Conta de Superusuário - 520
    Resumo - 521

    Capítulo 22 Boas Práticas de Desenvolvimento - 523
    Padrão de Código - 523
    Indentação de Linha e Espaço em Branco - 523
    Operadores - 523
    Conversão de Tipos de Variáveis (Casting) - 524
    Estruturas de Controle - 524
    Chamadas a Funções - 525
    Declarações de Funções - 525
    Nomes de Funções - 525
    Chamadas a Construtores de Classes - 526
    Arrays - 526
    Aspas Simples e Duplas - 527
    Concatenadores de Strings - 527
    Comentários - 528
    Exemplos de Documentação - 529
    Documentação de Constantes - 529
    Documentação de Funções - 529
    Documentação de Implementações de Ganchos - 531
    Inclusão de Código - 531
    Tags de Código PHP - 532
    Ponto-e-Vírgula - 532
    URLs de Exemplos - 532
    Convenções de Nomes - 532
    Como Verificar o Estilo de Código Programaticamente - 533
    Uso de code-style.pl - 533
    Uso do Módulo Coder - 534
    Como Efetuar Pesquisa em Códigos com grep - 535
    Resumo - 536

    Capítulo 23 Otimização de Drupal - 537
    Caching é a Chave para o Desempenho de Drupal - 537
    Otimização de PHP - 540
    Especificação do Arquivo Cache Opcode de PHP como /dev/zero - 541
    Especificação do Conjunto de Processos PHP - 542
    Configuração de Apache - 543
    mod_expires - 543
    Movendo Instruções de .htaccess para httpd.conf - 544
    MPM Prefork versus Apache MPM Worker - 544
    Como Equilibrar o Tamanho do Conjunto Apache - 546
    Redução do Tempo de Espera (Timeout) de Apache - 546
    Desabilitação de Módulos Apache Não Utilizados - 546
    Uso de Nginix em vez de Apache - 547
    Uso de Pressflow - 547
    Varnish - 547
    Normalização de solicitações de entrada para mais acertos de Varnish - 549
    Varnish: como determinar cookies externos - 550
    Boost - 550
    Boost versus Varnish - 551
    Ajuste do Sistema Linux para Servidores de Grande Tráfego - 551
    Uso de Sistemas de Arquivos Rápidos - 553
    Servidores Dedicados versus Servidores Virtuais - 553
    Como Evitar Chamadas a Serviços Web Externos - 554
    Como Reduzir o Tempo de Espera (Timeout) de Servidores - 555
    Otimização de Base de Dados - 556
    Habilitação da Cache de Consultas de MySQL - 556
    Desempenho de MySQL InnoDB em Windows - 557
    Desempenho de Drupal - 557
    Eliminação de Erros 404 - 557
    Desabilitação de Módulos que não Estejam em Uso - 557
    Otimizações Específicas de Drupal - 557
    Cache de Página - 558
    Otimização de Largura de Banda - 558
    Ajuste da Tabela Sessions - 558
    Manejo do Tráfego de Usuários Cadastrados - 559
    Execução de cron - 560
    Arquiteturas - 560
    Servidor Único - 560
    Servidor de Base de Dados Separado - 561
    Servidor de Base de Dados Separado e Cluster de Servidores Web - 561
    Múltiplos Servidores de Base de Dados - 563
    Identificação do Gargalo - 564
    Resumo - 570

    Capítulo 24 Perfis de Instalação - 571
    Como Criar um Novo Perfil de Instalação - 571
    Arquivo enhanced.info - 572
    Arquivo enhanced.profile - 573
    Arquivo ehanced.install - 573
    Uso de hook_install_tasks e hook_install_tasks_alter - 588
    Resumo - 589

    Capítulo 25 Execução de Testes - 591
    Especificação do Ambiente de Teste - 591
    Como Definir Testes - 596
    Funções de Testes - 603
    Asserções para Testes - 607
    Resumo - 610
    APÊNDICE A Tabelas de Base de Dados - 611
    APÊNDICE B Recursos - 663
    Código - 663
    Repositório de Código-Fonte de Drupal em GIT - 663
    Exemplos - 664
    Referência de APIs de Drupal - 664
    Alertas de Segurança - 664
    Atualização de Módulos - 664
    Atualização de Temas - 664
    Manuais - 665
    Fóruns - 665
    Listas de Discussão - 665
    Development - 665
    Themes - 665
    Translations - 666
    User Groups e Interest Groups - 666
    Internet Relay Chat - 666
    América do Norte - 668
    Europa - 669
    Ásia - 670
    América Latina / Caribe - 670
    Oceania - 671
    África - 671
    Videocasts - 672
    Weblogs - 672
    Conferências - 672
    Contribuições - 672
    Índice Remissivo - 673

    Informações Técnicas

    Nº de páginas:728
    Origem:Importado
    Editora:Editora Ciência Moderna
    Idioma:Português
    Edição:1ª Edição
    Ano:2012
    ISBN:9788539902590
    Encadernação:Brochura
    Autor:Todd Tomlinson
  • Informações

Avaliação técnica sobre o livro

Olá! Seja Bem Vindo (a)!

Eu sou o Moderninho , o Mascote da Ciência Moderna Online!
Além de bonito, o novo site tem Minhas Dicas :) #ficaadica

A 1ª Dica é -> Deixe aqui seu contato para receber nossas
NOVIDADES, PROMOÇÕES E CUPONS DE DESCONTOS ;)

Navegue SEM Moderação!