KB Archiv DE: Board3 Portal 1.0.x - Features
Posted: 21. January 2017 17:20
Board3 Portal 1.0.x - Features: Eigene Blöcke hinzufügen
Diese Anleitung wurde für B3P v1.0.3 geschrieben, und funktioniert nicht mit vorherigen Versionen!
Erstelle als erstes eine neue Datei (deinen Block) in \styles\dein_style\template\portal\block\ und nenne ihn z.B. neuer_block.html
Nun must du dich entscheiden ob es ein mittlerer Block, oder einer für links/rechts werden soll.
Und zu guter letzt musst du noch in Erfahrung bringen, ob dein Style auf prosilver, oder subsilver2 basiert.
Hier sind die möglichen Kombinationen: (füge einfach den passenden Code in deine neue Datei ein)
linker/rechter Block für prosilver:
mittlerer Block für prosilver:
mittlerer Block für prosilver: nur für 1.0.4 und 1.0.5!!
linker/rechter Block für subsilver2:
mittlerer Block für subsilver2:
Nun musst du noch den Block in dein Portal einbinden. Dafür gibt es aber zwei verschiedene Möglichkeiten. Die neue, und die alte...
Bei beiden Varianten gehen diese Blockeinbindungen nicht verloren wenn du ein Update des Portales machst. Wenn du die Position deines neuen Blocks aber genau bestimmen willst, solltest du die neue Version nutzen, die alte Version bindet deinen Block nur an einer bestimmten Stelle ein, die durch die additional_blocks_xxxx.html vorgegeben ist. Da die neue Variante flexibler ist empfehlen wir die neue Variante.
Die neue Variante:
Entscheide dich wo du deinen Block haben willst. Davon hängt ab welche Datei du bearbeiten musst. Öffne styles/*yourstyle*/template/portal/ portal_left.html für die linke Spalte, portal_center.html für die mittlere Spalte oder portal_right.html für die rechte Spalte.
In diesen Dateien ist jeder Block in einer If-Bedingung eingebunden. Das Hauptmenü sieht z.B. so aus:
Wenn du weißt wo du deinen Block hinmachen willst, füge den Code einfach vor oder hinter einem der If-Bedingungen ein. new_block.html würde z.B. so eingebunden werden:
Du brauchst solch einen switch nicht für deinen Block, weil sie nur zum Verwalten via ACP vorgesehen sind.
Die alte Variante
öffne styles\dein_style\template\portal\block\additional_blocks_right.html (oder additional_blocks_left... / ...center.html)
suche nach:
füge dannach ein:
Die alte Variante:
öffne styles\dein_style\template\portal\portal_body.html
Suche nach der Position an der du deinen Block einbinden möchtest.
Die meisten von ihnen sind in solche Switches eingebettet. (<!-- IF ... --> <!-- ENDIF -->)
Füge nach dem letzten "<!-- ENDIF -->" des Blockes, nach dem du deinen eigenen einbinden willst, die folgende Zeile ein:
Du brauchst solch einen switch nicht für deinen Block, weil sie nur zum Verwalten via ACP vorgesehen sind.
OK, wars schon. Vergiss nicht alle Caches zu leeren, nachdem du einen neuen Block hinzugefügt hast.
Weitere Informationen über das verschieben von Blöcken innderhalb des Portales empfiehlt sich folgender KB Artikel: Knowledge Base: Blöcke verschieben / Reihenfolge ändern
PHP Code für deinen Block hinzufügen
Falls für deinen Block PHP Code ausgeführt werden muss, gibt es einen einfachen Weg das zu verwerklichen. PHP Code innerhalb der HTML Datei deines Blocks wird absolut nichts ausrichten, da dieser Code nicht ausgeführt wird. Öffne portal/block/additional_blocks.php und füge deinen PHP Code direkt vor dem folgenden Teil der Datei ein:
Stelle sicher, dass du keine Leerzeichen oder andere Zeichen vor dem <?php und nach dem ?> einfügst. Speichere die Datei nach dem Bearbeiten als UTF8 ohne BOM ab.
Hier kannst du diesen Artikel diskutieren: http://board3.de/viewtopic.php?f=21&t=310
Quicklink:
Diese Anleitung wurde für B3P v1.0.3 geschrieben, und funktioniert nicht mit vorherigen Versionen!
Erstelle als erstes eine neue Datei (deinen Block) in \styles\dein_style\template\portal\block\ und nenne ihn z.B. neuer_block.html
Nun must du dich entscheiden ob es ein mittlerer Block, oder einer für links/rechts werden soll.
Und zu guter letzt musst du noch in Erfahrung bringen, ob dein Style auf prosilver, oder subsilver2 basiert.
Hier sind die möglichen Kombinationen: (füge einfach den passenden Code in deine neue Datei ein)
linker/rechter Block für prosilver:
Code: Select all
{$LR_BLOCK_H_L} Dein_Block_Titel{$LR_BLOCK_H_R}
<div style="text-align: center;">
... Füge deinen Code hier ein ...
</div>
{$LR_BLOCK_F_L}{$LR_BLOCK_F_R}
Code: Select all
{$C_BLOCK_H_L}<dl><dt>Dein_Block_Titel</dt></dl>{$C_BLOCK_H_R}
<ul class="topiclist forums">
<li><dl>
<dd style="border-left: 0px">
... Füge deinen Code hier ein ...
</dd>
</dl></li>
</ul>
{$C_BLOCK_F_L}{$C_BLOCK_F_R}
mittlerer Block für prosilver: nur für 1.0.4 und 1.0.5!!
Code: Select all
{$C_BLOCK_H_L}<dt>Your_Block_Title</dt>{$C_BLOCK_H_R}
<ul class="topiclist forums">
<li><dl>
<dd style="border-left: 0px">
... Place your Code here ...
</dd>
</dl></li>
</ul>
{$C_BLOCK_F_L}{$C_BLOCK_F_R}
Code: Select all
{$LR_BLOCK_H_L} Dein_Block_Titel{$LR_BLOCK_H_R}
<table class="tablebg" cellspacing="1" width="100%">
<tr class="row1">
<td style="text-align:center;">
... Füge deinen Code hier ein ...
</td>
</tr>
</table>
{$LR_BLOCK_F_L}{$LR_BLOCK_F_R}
Code: Select all
{$C_BLOCK_H_L}Dein_Block_Titel{$C_BLOCK_H_R}
<table class="tablebg" cellspacing="1" width="100%">
<tr class="row1">
<td>
... Füge deinen Code hier ein ...
</td>
</tr>
</table>
{$C_BLOCK_F_L}{$C_BLOCK_F_R}
Nun musst du noch den Block in dein Portal einbinden. Dafür gibt es aber zwei verschiedene Möglichkeiten. Die neue, und die alte...
Bei beiden Varianten gehen diese Blockeinbindungen nicht verloren wenn du ein Update des Portales machst. Wenn du die Position deines neuen Blocks aber genau bestimmen willst, solltest du die neue Version nutzen, die alte Version bindet deinen Block nur an einer bestimmten Stelle ein, die durch die additional_blocks_xxxx.html vorgegeben ist. Da die neue Variante flexibler ist empfehlen wir die neue Variante.
Die neue Variante:
Entscheide dich wo du deinen Block haben willst. Davon hängt ab welche Datei du bearbeiten musst. Öffne styles/*yourstyle*/template/portal/ portal_left.html für die linke Spalte, portal_center.html für die mittlere Spalte oder portal_right.html für die rechte Spalte.
In diesen Dateien ist jeder Block in einer If-Bedingung eingebunden. Das Hauptmenü sieht z.B. so aus:
Code: Select all
<!-- IF S_DISPLAY_MAINMENU -->
<!-- INCLUDE portal/block/main_menu.html -->
<!-- ENDIF -->
Code: Select all
<!-- INCLUDE portal/block/new_block.html -->
Die alte Variante
öffne styles\dein_style\template\portal\block\additional_blocks_right.html (oder additional_blocks_left... / ...center.html)
suche nach:
Code: Select all
<!-- additional_blocks //-->
Code: Select all
<!-- INCLUDE portal/block/neuer_block.html -->
Die alte Variante:
öffne styles\dein_style\template\portal\portal_body.html
Suche nach der Position an der du deinen Block einbinden möchtest.
Die meisten von ihnen sind in solche Switches eingebettet. (<!-- IF ... --> <!-- ENDIF -->)
Füge nach dem letzten "<!-- ENDIF -->" des Blockes, nach dem du deinen eigenen einbinden willst, die folgende Zeile ein:
Code: Select all
<!-- INCLUDE portal/block/new_block.html -->
OK, wars schon. Vergiss nicht alle Caches zu leeren, nachdem du einen neuen Block hinzugefügt hast.
Weitere Informationen über das verschieben von Blöcken innderhalb des Portales empfiehlt sich folgender KB Artikel: Knowledge Base: Blöcke verschieben / Reihenfolge ändern
PHP Code für deinen Block hinzufügen
Falls für deinen Block PHP Code ausgeführt werden muss, gibt es einen einfachen Weg das zu verwerklichen. PHP Code innerhalb der HTML Datei deines Blocks wird absolut nichts ausrichten, da dieser Code nicht ausgeführt wird. Öffne portal/block/additional_blocks.php und füge deinen PHP Code direkt vor dem folgenden Teil der Datei ein:
Code: Select all
?>
Hier kannst du diesen Artikel diskutieren: http://board3.de/viewtopic.php?f=21&t=310
Quicklink:
Code: Select all
[url=http://www.board3.de/knowledge/kb_show.php?id=52]Knowledge Base: Eigene Blöcke hinzufügen[/url]