Customizing SMF > Portais, Pontes e Integrations

Guia para a integração do SMF

(1/5) > >>

joomlamz:
Uma das grandes coisas sobre o SMF é o fato de que tem formas de integração em todo o código em pontos-chave de modo que você pode adicionar funções de integração com os pontos-chave sem modificar qualquer código SMF em tudo.

Este tópico será um guia para os usos desses formas. Espero que serve útil

Iniciando o sistema de integração

Existem vários métodos para iniciar o sistema  de integração.

Normalmente, quando a criação de uma ponte, eu tenho SMF "envolvido" no contexto de um CMS, por isso a partida é feita no CMS, como parte do componente / módulo que exibe o fórum.

Eu prefiro usar o método serializado constante:


--- Código: ---//define the integration functions
define('SMF_INTEGRATION_SETTINGS', serialize(array(
   'integrate_change_email' => 'change_email_function',
   'integrate_change_member_data' => 'change_member_data_function',
   'integrate_reset_pass' => 'reset_pass_function',
   'integrate_exit' => 'exit_function',
   'integrate_logout' => 'logout_function',
   'integrate_outgoing_email' => 'outgoing_email_function',
   'integrate_login' => 'login_function',
   'integrate_validate_login' => 'validate_login_function',
   'integrate_redirect' => 'redirect_function',
   'integrate_delete_member' => 'delete_member_function',
   'integrate_register' => 'register_function',
   'integrate_pre_load' => 'pre_load_function',
   'integrate_whos_online' => 'whos_online_function',
)));
--- Fim de Código ---


Agora que nós definimos as funções que serão chamados sempre que um evento de gancho tem lugar, precisamos saber o que esses ganchos são, e quando eles ocorrem, ea entrada e saída prevista para cada um.

Esta é uma lista de todos os nomes de integração SMF gancho até à data:

integrate_pre_include
integrate_pre_load
integrate_verify_user
integrate_validate_login
integrate_login
integrate_logout
integrate_activate
integrate_fix_url
integrate_verify_password
integrate_reset_pass
integrate_delete_member
integrate_register
integrate_outgoing_email
integrate_personal_message
integrate_change_member_data
integrate_redirect
integrate_exit
integrate_whos_online

joomlamz:
Used in file:  Load.php
Used in function:  reloadSettings

Variables passed to hook function:  None
Variables expected from hook function: None

Usage:  This hook actually calls a file, not a function.

e.g. 'integrate_pre_include' => 'integration.php

Este é o gancho de integração muito encontrado pela primeira vez no fluxo de trabalho. Ele é iniciado imediatamente após o carregamento das configurações SMF. Então, se você precisar de algum script no início do SMF, isso pode ser feito com este livro em um arquivo separado, sem qualquer necessidade de modificar o código do SMF.

joomlamz:
Used in file:  Load.php
Used in function:  reloadSettings

Variables passed to hook function:  None
Variables expected from hook function: None

Uso: Este livro é iniciado imediatamente após o gancho integrate_pre_include. Serve muito do mesmo tipo de propósito, mas ele chama uma função em vez de incluir um arquivo.

Exemplo de uso: modificando configurações SMF para coincidir com os de um sistema integrado

joomlamz:
Used in file:  Load.php
Used in function:  loadUserSettings

Variables passed to hook function:  None
Variables expected from hook function: $ID_MEMBER (int)

Uso: Este livro é iniciado antes de verificar o cookie SMF para um utilizador válido. A SMF válida $ ID_MEMBER é esperado de volta a partir da função de gancho, ou SMF assumirá ele deve verificar o cookie SMF vez.

Exemplo de uso: O utilizador está conectado a um CMS, mas não em SMF, por isso queremos auto-login para SMF sem o cookie SMF

joomlamz:
Uso: Este livro é iniciado antes da verificação de um utilizador na SMF válido login. Isto dá a aplicação integrada a chance de usar as credenciais de login antes SMF faz. Algo para se manter em mente é que o SMF hashes de senha no SHA1 no lado do cliente, portanto, uma senha unhashed não está disponível para esta função.

Um valor de verdadeiro ou falso retornado da função continuará como normal, e um valor de 'repetir' vai voltar a exibir o formulário de login, com a mensagem "Senha de segurança foi recentemente actualizado. Faça o login novamente."

Exemplo de uso: Um utilizador que existe na aplicação integrada, mas não em SMF está a tentar entrar, por isso precisa ber migrado para SMF antes SMF tem a chance de se autenticar. Algo para se manter em mente aqui é que o SMF é possível autenticar com muitos outros tipos de hashes, assim que o hash de senhas de outros sistemas normalmente pode ser escrito diretamente para a tabela de membros do SMF, com o gancho de retornar 'repetir', que irá chamar automaticamente a SMF reescrever o seu próprio hash sobre a tentativa de login segundo.

Navegação

[0] Índice de mensagens

[#] Página seguinte

Ir para versão completa