Vorlage für in phpBB eingebundene Seiten in phpBB3

In diesem Forum kann man Fragen zur Programmierung stellen, die bei der Entwicklung von Mods für phpBB 3.0.x oder dem Modifizieren des eigenen Forums auftauchen.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Trash-Master
Mitglied
Beiträge: 211
Registriert: 13.11.2008 21:13

Re: Vorlage für in phpBB eingebundene Seiten in phpBB3

Beitrag von Trash-Master »

Ich hab das jetzt auch mal so gemacht, also ich habe mir eine enter.php gebastelt. Das klappt auch soweit ganz gut.

Leider gibt es noch ein Problem:

In der styles/prosilver/template/enter.html steht:

Code: Alles auswählen

<textarea name="terms" cols="155" rows="15" readonly>Mit dem Zugriff auf „Meine Seite“ akzeptierst du folgende Nutzungsbedingungen:
{L_TERMS_OF_USE}</textarea>
Leider Bekomme ich beim Aufruf der enter.php auch nur die Variable { TERMS_OF_USE } in der Textarea angezeigt, anstatt die Nutzungsbedingung.

Woran liegt das? Kann mir jemand helfen?

lg,
Trash-Master
phpBB Version: 3.0.5
Style: Prosilver, Prosilver SE
jimmartens
Mitglied
Beiträge: 369
Registriert: 28.11.2008 20:04
Wohnort: Hamburg
Kontaktdaten:

Re: Vorlage für in phpBB eingebundene Seiten in phpBB3

Beitrag von jimmartens »

Das liegt daran, dass die Variable nicht global definiert wurde, sondern nur für die Standard-Nutzungsbedingungen-Seite. Am besten ist es, wenn du die Nutzungsbedingungen aus der language-Datei in eine eigene steckst und dann per php-Skript deine Template-Datei angibst und nun die Variable definierst.
Um es für die Supporter einfacher zu machen: Hier meine Forums-Adresse: Mein Eisenbahn-Forum
Helmut
Mitglied
Beiträge: 2048
Registriert: 27.12.2002 20:35
Wohnort: Augsburg

Re: Vorlage für in phpBB eingebundene Seiten in phpBB3

Beitrag von Helmut »

Hallo Trash-Master,

binde mal das hier in deine php Datei ein, dann sollte es gehen und du den Text für TERMS_OF_USE_CONTENT sehen:

Code: Alles auswählen

$user->add_lang('ucp'); 
Gruß Helmut
Ich bin nicht ganz dicht.... na und.
Benutzeravatar
odinix66
Mitglied
Beiträge: 12
Registriert: 23.02.2009 16:54
Wohnort: 34289 Zierenberg
Kontaktdaten:

Re: Vorlage für in phpBB eingebundene Seiten in phpBB3

Beitrag von odinix66 »

Hallo alle zusammen.
Ich kenn mich zwar etwas in HTML aus, aber PHP? Absoluter Neuling - und ich sitze jetzt seit 4 Stunden über diesem Thema und habe inszwischen ein ganzes Blockhaus vorm Kopf :(

Ich betreibe seit 1 Jahr ein phpBB 2.x Forum und eine Webseite für unseren Verein. Mit dem 2.x Forum komme ich auch klar, auch der Einbau verschiedener MOD´s klappte problemlos.
Nun möchte ich umstellen auf phpBB 3.0.4 und dabei gleich die Inhalte der Webseite in das Forum einbinden.

Ich möchte folgendes:
Im Header füge ich weitere Schaltflächen ein, z.B. Home, Forum, (Das ist kein Problem).
Zwischen Header und Footer sollen dann die, bereits fertiggestellte, HTML-Seite der Webseite angezeigt werden.
Ohne Avantar, Profil usw.
Ich brauch auch hierfür keine verschiedenen Sprachdateien.

Wenn man auf "Forum" klickt, soll dann zwischen Header und Footer der Foreninhalt angezeigt werden.

Ferner soll bei aufrufen der URL das Forum nicht mit dem Inhalt des Forums, sondern dem Inhalt der Start-html angezeigt werden.

Muß ich jetzt für jede HTML-Seite eine dazugehörige PHP-Datei schreiben, oder kann ich das auch einfacher verlinken / einbinden.

Reicht es, wenn ich z.B. eine PHP-Datei mit folgendem Inhalt schreibe:
<?php

// Benötigte Dateien und Variablen von phpBB
define('IN_PHPBB', true);
$phpbb_root_path = './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);

// Session auslesen und Benutzer-Informationen laden
$user->session_begin();
$user->setup();
$auth->acl($user->data);

// Header und Titel der Seite
page_header(MSC Naumburg e.V.');

// Angabe eurer Content-Seite
$template->set_filenames(array(
'body' => 'start.html')
);

// Footer
page_footer();

?>

diese dann z.B. start.php benenne und in das Verzeichnis /styles/MeinStyle/ speichere?
Dann könnte ich ja im gleichen Verzeichnis die start.html mit dem vorhandenen HTML-Code speichern?

Sehe ich das richtig, daß bei Klick auf Home dann der Inhalt von start.html zwischen Header und Footer angezeigt wird, wenn ich diesen mit <a href="start.php">HOME</a> verlinke?

Welchen Befehl muß ich wo einfügen, daß beim Aufruf der URL der Inhalt von start.html als Startseite zw. Header und Footer angezeigt wird und erst bei Klick auf Forum zum Foreninhalt gewechselt wird?

Der Inhalt der HTML-Dateien, sollte für jeden User sichtbar sein (also auch für Gäste und nicht eingeloggte / nicht registrierte User).

Zum anschauen noch als 2-Seiten-Version und mit phpBB 2.x Forum:
http://www.msc-naumburg.de

Vielen Dank für Eure Hilfe und Sorry, wenn ich hier evtl. etwas nicht richtig verstanden hab, was schon erwähnt wurde. :oops:

EDIT: Frage hat sich tlw. erledigt.
Learning by doing - Es funktioniert soweit.
Nur wie ich den Inhalt der php-Datei als Startseite anzeigen kann hab ich noch nicht rausgefunden.
Hat da vielleicht jemand noch ein Tip?
Nur wer Volvo fährt, weis was Aerodynamik ist !!!
Benutzeravatar
markus giersch
Mitglied
Beiträge: 674
Registriert: 03.04.2008 22:06
Wohnort: Frankfurt am Main
Kontaktdaten:

Re: Vorlage für in phpBB eingebundene Seiten in phpBB3

Beitrag von markus giersch »

1. Ja. die index.php (zb. deineseite.php) kannst du sozusagen kopieren. Du musst sie jedoch anpassen. Sowohl den Dateinamen, so wie ein paar Sachen in der Datei.
In der index musste glaube ich nur den Inhalt anpassen.
Hier das orgiginal index.php:
Anfang

Code: Alles auswählen

// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup('viewforum');
Ende

Code: Alles auswählen

// Output page
page_header($user->lang['INDEX']);

$template->set_filenames(array(
	'body' => 'index_body.html')
);

page_footer();

?>
Geänderte deineseite.php:
Anfang

Code: Alles auswählen

// Start session management
$user->session_begin();
$auth->acl($user->data);
$user->setup('deineseite');
Ende

Code: Alles auswählen

// Output page
page_header('Deine Seite');

$template->set_filenames(array(
	'body' => 'deineseite.html')
);

page_footer();

?>

2. Ich habe mir die (root/styles/subsilver2/)index_body.htm genommen und umbenannt (zb. deineseite.htm) und nur am anfang was geändert:

index_body.htm

Code: Alles auswählen

<!-- INCLUDE overall_header.html -->

<!-- IF U_MCP -->
	<div id="pageheader">
		<p class="linkmcp">[ <a href="{U_MCP}">{L_MCP}</a> ]</p>
	</div>

	<br clear="all" /><br />
<!-- ENDIF -->

<!-- INCLUDE forumlist_body.html -->

<span class="gensmall"><!-- IF not S_IS_BOT --><a href="{U_DELETE_COOKIES}">{L_DELETE_COOKIES}</a><!-- ENDIF --> | <a href="{U_TEAM}">{L_THE_TEAM}</a></span><br />

<br clear="all" />

<!-- INCLUDE breadcrumbs.html -->
geänderte Version (deineseite.htm) mit dem Verweis auf die anzuzeigende .htm Seite (dazu danach)

Code: Alles auswählen

<!-- INCLUDE overall_header.html -->

<!-- INCLUDE deininhalt_body.html -->

<span class="gensmall"><!-- IF not S_IS_BOT --><a href="{U_DELETE_COOKIES}">{L_DELETE_COOKIES}</a><!-- ENDIF --> | <a href="{U_TEAM}">{L_THE_TEAM}</a></span><br />

<br clear="all" />

<!-- INCLUDE breadcrumbs.html -->
3. Danach habe ich die (root/styles/subsilver2/)index_body.html genommen und sie in deininhalt_body.html umbennant. Editiert habe ich sie so:
original index.html

Code: Alles auswählen

<html>
<head>
<title>subSilver created by subBlue Design</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body bgcolor="#FFFFFF" text="#000000">

<table width="100%" height="100%" cellspacing="0" cellpadding="0" border="0">
	<tr>
		<td align="center" valign="middle"><a href="http://www.subblue.com/" target="_new"><img src="images/created_by.jpg" width="400" height="300" alt="Created by subBlue Design" /></a></td>
	</tr>
</table>
</body>
</html>
voreditierte deininhalt_body.html:

Code: Alles auswählen

<html>
<head>
</head>
<body>

(Hier den kompletten HTML Code der alten Seite einfügen)

</body>
</html>
4. Nicht vergessen (root/language/de/)viewforum.php nehmen und in deineseite.php umbennen

Fertig!?!

Ändern der Startseite per .htaccess

Code: Alles auswählen

DirectoryIndex deineseite.php index.php index.html index.htm
phpbb wird noch mindestens 40 Jahre existieren!!! Wo? Hier: D-A-F | Demokratische Armee Fraktion! Darum brauchen wir euch noch min. 40 Jahre!!!
aurora876
Ehemaliger Übersetzer
Beiträge: 1600
Registriert: 30.08.2008 20:41

Re: Vorlage für in phpBB eingebundene Seiten in phpBB3

Beitrag von aurora876 »

gibt doch hier schon eine nette vorlage:

http://wiki.phpbb.com/Deutsch:Vorlage_f ... ene_Seiten
There are 10 types of people in the world: Those who understand binary and those who don't. :D

Support Toolkit in Deutsch
Benutzeravatar
odinix66
Mitglied
Beiträge: 12
Registriert: 23.02.2009 16:54
Wohnort: 34289 Zierenberg
Kontaktdaten:

Re: Vorlage für in phpBB eingebundene Seiten in phpBB3

Beitrag von odinix66 »

Hi Markus.

Das ist ja mal eine ausführliche Hilfe.

Werde mir die Dateien kopieren und entsprechend verändern.
Falls irgendetwas "daneben" geht, hab ich ja immer noch die original Dateien.

Recht herzlichen Dank für die Antwort.
Meine Frage hat sich in diesem Punkt erledigt.
Nur wer Volvo fährt, weis was Aerodynamik ist !!!
Benutzeravatar
markus giersch
Mitglied
Beiträge: 674
Registriert: 03.04.2008 22:06
Wohnort: Frankfurt am Main
Kontaktdaten:

Re: Vorlage für in phpBB eingebundene Seiten in phpBB3

Beitrag von markus giersch »

aurora876 hat geschrieben:gibt doch hier schon eine nette vorlage:

http://wiki.phpbb.com/Deutsch:Vorlage_f ... ene_Seiten
Dann schau mal was ich geschrieben habe, und was in der Anleitung steht ;-)

Ich konnte damals nichts mit der Anleitung anfangen. Ich weiß bis heute nicht was ich damit anfangen soll.

Daraus könnte man eventuell sogar einen Mod machen ;-)
Deswegen habe ich den Weg geschrieben wie ich es mir zusammen gestrickt habe.
odinix66 hat geschrieben:Hi Markus.

Das ist ja mal eine ausführliche Hilfe.

Werde mir die Dateien kopieren und entsprechend verändern.
Falls irgendetwas "daneben" geht, hab ich ja immer noch die original Dateien.

Recht herzlichen Dank für die Antwort.
Meine Frage hat sich in diesem Punkt erledigt.
Kein Thema. Du wirst vieleicht später merken weshalb ich es so umständlich habe.
jedoch kannste dann später die Seiten leichter editieren. du musst dann nicht irgendwo im script suchen, sondern hast gleich den editierbaren bereich vor dir.
phpbb wird noch mindestens 40 Jahre existieren!!! Wo? Hier: D-A-F | Demokratische Armee Fraktion! Darum brauchen wir euch noch min. 40 Jahre!!!
Benutzeravatar
odinix66
Mitglied
Beiträge: 12
Registriert: 23.02.2009 16:54
Wohnort: 34289 Zierenberg
Kontaktdaten:

Re: Vorlage für in phpBB eingebundene Seiten in phpBB3

Beitrag von odinix66 »

Nachdem ich es so gemacht habe, wie Markus es beschrieben hatte, wurde kein Header und kein Footer mehr angezeigt. Ich habe alles mehrfach geprüft, aber keinen Fehler gefunden.
Wahrscheinlich lag es an der index_body.html, die ich umbenannt habe.
Markus nutzt den Style Subsilver2 und ich Prosilver.
Dort ist die body_index.html anders aufgebaut.

Also alles Rückgängig und etwas gebastelt.
Jetzt funktioniert es.
Das ganze geht auch einfacher.

1. Erstelle eine PHP-Datei z.B. meine_datei.php mit folgenden Code:

Code: Alles auswählen

<?php
// Benötigte Dateien und Variablen von phpBB
define('IN_PHPBB', true);
$phpbb_root_path = './';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);

// Session auslesen und Benutzer-Informationen laden
$user->session_begin();
$user->setup();
$auth->acl($user->data);


// Header und Titel der Seite
page_header('Titel Deiner Seite');

// Angabe eurer Content-Seite
$template->set_filenames(array(
   'body' => 'meine_datei.html')
);

// Footer
page_footer();
?>
Ändere den Seitentitel und den Dateinamen deiner HTML-Datei entsprechend um.

2. Erstelle eine HTML-Datei z.B. meine_datei.html mit folgendem Code:

Code: Alles auswählen

<!-- INCLUDE overall_header.html -->

<iframe src="http://www.meine-domain.de/verzeichnis/inhalt.html" frameborder="0" align="center" height="1000" width="100%" scrolling="auto" norezize name="content"></iframe>

<!-- INCLUDE overall_footer.html -->
Ich habe hier einen iframe genommen und dort die entsprechende HTML-Datei, die auch auf meiner Webseite angezeigt wird, eingebunden.
So brauche ich bei Änderungen nur 1 Seite ändern und die ist dann automatisch im Forum und auf der Webseite geändert. In diesem Fall bitte die Höhe des iframe anpassen.

Die PHP-Datei in das Hauptverzeichnis laden (z.B. phpBB3/)
Die HTML-Datei in das Template-Verzeichnis von deinem Style laden.


Danach im Adminbereich von deinem Forum unter Allgemein den Cache leeren.
Zurück zum Forum und die Seite aktuallisieren.


Wer es sich anschauen möchte:
http://www.msc-naumburg.de dann auf Kartforum klicken.
Links neben dem Login findet man einen Link mit Kontakt und im Footer einen Link mit Impressum.
Das sind die 2 Seiten die ich eingebunden habe. Der Inhalt ist identisch mit dem Inhalt der gleichen Rubriken auf der Webseite.
Nur wer Volvo fährt, weis was Aerodynamik ist !!!
Benutzeravatar
markus giersch
Mitglied
Beiträge: 674
Registriert: 03.04.2008 22:06
Wohnort: Frankfurt am Main
Kontaktdaten:

Re: Vorlage für in phpBB eingebundene Seiten in phpBB3

Beitrag von markus giersch »

Doch, sieht sogar bnoch besser als Vorgestellt aus ;-)

Jetzt kannste ja den Rest Deiner Seite auch einbauen!
phpbb wird noch mindestens 40 Jahre existieren!!! Wo? Hier: D-A-F | Demokratische Armee Fraktion! Darum brauchen wir euch noch min. 40 Jahre!!!
Antworten

Zurück zu „[3.0.x] Mod Bastelstube“