Autor Tópico: [Tutorial] - Criar mods para SMF Capítulo I e II  (Lida 10239 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline candidosa2

  • Suporte Tecnico
  • Fundador
  • *
  • Mensagens: 5072
  • Rank: 1658
  • Sexo: Masculino
  • Suporte
    • Hosting Moçambique
[Tutorial] - Criar mods para SMF Capítulo I e II
« em: 04 de Novembro de 2018, 09:23 »
Primeiro de tudo esclarecer: Todas as perguntas que você tem pode ser feito neste mesmo post, vou continuar postando como você vai fazendo os capítulos que eu vou estar postando neste mesmo post também.
Outra coisa para esclarecer, o conteúdo não está oculto para vê-lo eu teria que agradecer ou responder e não é minha intenção, mas saber como criar as modificações SMF e saber quais ficheiros trocar para as respectivas modificações, mas se Gostaria de me registar e agradecer por este tutorial ... É o mínimo que espero ^^

Precisamos: Conhecimento mínimo de php e html sobre os cursos se não tem conhecimento poderá fazer aqui AplicCursos https://www.apliccursos.com

Neste post vamos aprender a criar mods no smf a partir do zero, já sendo para criar o zip e também quais ficheiros podemos modificar e o que são para cada um.

Primeiro eu explicarei a criação do zip que é a coisa mais importante e porque é iniciado. Para isso, precisamos criar dois ficheiros. install.xml e outro que é chamado package-info.xml (Nota: o package-info.xml não pode ser modificado o nome, ele deve ser sempre assim, enquanto o install.xml pode colocar whatever.xml, mas por enquanto para não se perder use o install.xml).

Bem, continuamos a abrir o install.xml com qualquer editor. Eu recomendo o DreamWeaver, mas você pode usar outros como o bloco de notas, etc.
Neste ficheiro você tem que ir se ou se isso:

Código: [Seleccione]
<?xml version="1.0"?>
<!DOCTYPE modification SYSTEM "http://www.simplemachines.org/xml/modification">
<modification xmlns="http://www.simplemachines.org/xml/modification" xmlns:smf="http://www.simplemachines.org/">

Bom, então vamos colocar o <id> author: Nome do mod </ id>, e abaixo da versão do mod entre <version> </ version>, permanecendo até agora por exemplo:

Código: [Seleccione]
<?xml version="1.0"?>
<!DOCTYPE modification SYSTEM "http://www.simplemachines.org/xml/modification">
<modification xmlns="http://www.simplemachines.org/xml/modification" xmlns:smf="http://www.simplemachines.org/">
   <id>Candidosa2:H1 BBCode</id>
   <version>1.0.0</version>


Agora podemos colocar abaixo do site da sua página, mas não é necessário. Eles colocam entre <homepage> </ homepage>.
Bem, agora começa a parte das modificações dos ficheiros, mas que vamos deixar para depois, pois começa a complicar um pouco ^^

NOTA: Qualquer reclamação, comentário, cotação ou correção é bem recebida;
Espero que gostem e sirvam ^^


Tutorial Criar mods no SMF - Capítulo II
[/color]


Tínhamos ficado no:

Código: [Seleccione]
<?xml version="1.0"?>
<!DOCTYPE modification SYSTEM "http://www.simplemachines.org/xml/modification">
<modification xmlns="http://www.simplemachines.org/xml/modification" xmlns:smf="http://www.simplemachines.org/">
   <id>Candidosa2:H1 BBCode</id>
   <homepage>http://webmastermz.com</homepage>


Para continuar, tenho que explicar algumas variáveis que são usadas para dizer qual ficheiro modificar.
$boarddir: caminho do fórum. Exemplo public_html/forum
$sourcedir: caminho da pasta Sources no fórum. Exemplo public_html/forum/Sources
$themedir: caminho da pasta Themes / default. Exemplo public_html/forum/Themes/default
$imagesdir: caminho do tema padrão da pasta do tema. Exemplo public_html/forum/Themes/default/images

Bem, então tenha em mente que continuamos, devemos colocar o ficheiro a ser modificado seguido por <operation> e, em seguida, seguido pelo que vamos procurar e se vamos substituí-lo, adicionar antes ou adicionar mais tarde.
Vamos ver um exemplo simples:

Código: [Seleccione]
<file name="$sourcedir/Subs.php">
      <operation>
         <search position="after"><![CDATA[
         array(
            'tag' => 'white',
            'before' => '<span style="color: white;">',
            'after' => '</span>',
         ),
]]>

Como pode ver, estamos procurando nas fontes da pasta ($ sourcedir) o ficheiro subs.php, colocamos o <operation>, seguido pelo que vamos adicionar AFTER (after). Se eles vão adicionar depois das linhas de busca nós colocamos <search position = "after">, se nós vamos adicionar antes das linhas de busca nós colocamos <search position = "before"> e se nós vamos substituir as linhas de busca colocamos <search position = "substituir">. Se eles olharem bem depois da busca, nós colocaremos <! [CDATA [, e quando terminarmos de procurar por tudo que colocamos]]>, isso significa que as sentenças terminam.
Depois]]> temos que fechar a busca, desta forma </ search>, e abrir um <add> que é o que vamos adicionar depois / antes ou substituir, coloque a modificação e feche com </ add> deixando:

Código: [Seleccione]
<add><![CDATA[
         array(
   'tag' => 'h1',
   'before' => '<h1>',
   'after' => '</h1>',
   'block_level' => true,
     ),
]]></add>

e colocando <! [CDATA [y]]> novamente
Nós fechamos o </ operation>. Se não formos modificar mais nada desse ficheiro, fecharemos com </ file>, mas se continuarmos modificando esse ficheiro, reabriremos com outra <operation>.
Depois que todas as modificações tiverem sido feitas, fechamos o arquivo com </ modification>. Tudo poderia ser algo assim:

Código: [Seleccione]
<?xml version="1.0"?>
<!DOCTYPE modification SYSTEM "http://www.simplemachines.org/xml/modification">
<modification xmlns="http://www.simplemachines.org/xml/modification" xmlns:smf="http://www.simplemachines.org/">
   <id>Candidosa2:H1 BBCode</id>
   <version>1.0.0</version>
   <info>H1 tags will allow us to add our titles</info>
   <homepage>http://webmastermz.com</homepage>
   <file name="$sourcedir/Subs.php">
      <operation>
         <search position="after"><![CDATA[
         array(
            'tag' => 'white',
            'before' => '<span style="color: white;">',
            'after' => '</span>',
         ),
]]></search>
         <add><![CDATA[
         array(
   'tag' => 'h1',
   'before' => '<h1>',
   'after' => '</h1>',
   'block_level' => true,
     ),
]]></add>
      </operation>
   </file>
        </modification>