Page 1 of 1

Erweiterbares Menü möglich?

Posted: 8. June 2011 20:58
by DocSommer
Die Ankündigung für die 2.x Generation des Portal liest sich sehr gut. Was mich allerdings in Sachen "Erweiterbarkeit" noch interessieren würde:

Wird es eine Möglichkeit geben das Menü um weitere Portalseiten zu ergänzen um z.B. nicht-phpBB basierende Inhalte einzubinden und diese im Portal anzeigen zu lassen?

Beispiel:

http://poison-door.net/phpBB3/portal.php

Einfach mal links im Menü z.B: auf Pressearchiv klicken, dann weiß man was gemeint ist.

Hierbei handelt es sich um eine "gebastelte" Lösung, weswegen ich es gut finden würde, wenn sowas auch im Adminpanel eingerichtet werden könnte. Ich denke ich bin nicht der Einzige der sowas gut gebrauchen kann. Momentan ist das wie gesagt ein ziemliches Gefummel, siehe auch die "Memo an mich selbst":
Administrator wrote:Also um neue Seiten ins Portal zu bringen "die Übergangslösung":

Zum Editieren würde ich Notepad++ nutzen und immer Sicherungskopien der Dateien machen, die verändert werden.

1. Öffne main_menu.html in "/phpBB3/styles/prosilver/template/portal/block"

Darin zu sehen ist u.A.:

Code: Select all

				    <li><a href="http://www.poison-door.net/phpBB3/portal_band.php">Band</a></li>
				    <li><a href="http://www.poison-door.net/phpBB3/portal_musik.php">Musik</a></li>
					<li><a href="http://www.poison-door.net/phpBB3/portal_presse.php">Presse Archiv</a></li>
Hier kannst du dann einfach im gleichen Stil die gewünschte, neue Kategorie hinzufügen (XXX = der Name, der angezeigt werden soll *merken*):

Code: Select all

<li><a href="http://www.poison-door.net/phpBB3/portal_xxx.php">XXX</a></li>
2. Nun brauchen wir im phpBB3 Stammverzeichnis eine neue Datei mit dem entsprechenden Namen "portal_xxx.php". Hierzu kopiere einfach die "portal_band.php" auf deinen Rechner und benenne die um. Eine kleine Änderung muss noch innerhalb der Datei gemacht werden - fast ganz unten im Quelltext steht:

Code: Select all

// output page
page_header($user->lang['PORTAL']);

$template->set_filenames(array(
	'body' => '/portal/band_body.html'
));
Anstatt "band_body.html" muss da jetzt "xxx_body.html" rein. Die fertige Datei dann speichern und um phpBB3 Stammverzeichnis ablegen.

3. vorletzter Step:

Erstelle eine neue Datei "xxx_body.html" mit diesem Inhalt:

Code: Select all

<!-- DEFINE $S_IN_PORTAL = 1 -->
<!-- INCLUDE overall_header.html -->
<!-- INCLUDE portal/_block_config.html -->

<!--version $Id: portal_body.html 487 2009-03-23 17:45:47Z kevin74 $ //-->
<table cellpadding="0" cellspacing="0" border="0" width="100%">
<tr>
<!-- [+] left block area -->
	<td valign="top" style="width: {PORTAL_LEFT_COLUMN}px; padding-right:6px;">
		<br style="clear:both" />

		<!-- IF S_DISPLAY_MAINMENU -->
			<!-- INCLUDE portal/block/main_menu.html -->
		<!-- ENDIF -->

		<!-- IF S_STYLE_OPTIONS and S_DISPLAY_CHANGE_STYLE -->
				<!-- INCLUDE portal/block/change_style.html -->
		<!-- ENDIF -->	

		<!-- INCLUDE portal/block/additional_blocks_left.html -->		
		
		<!-- IF S_CUSTOM_SMALL -->
			<!-- INCLUDE portal/block/custom_small.html -->
		<!-- ENDIF -->
		
		<!-- IF S_DISPLAY_BIRTHDAY_LIST -->
			<!-- INCLUDE portal/block/birthday_list.html -->
		<!-- ENDIF -->
		
		<!-- IF S_DISPLAY_CLOCK -->
			<!-- INCLUDE portal/block/clock.html -->
		<!-- ENDIF -->

		<!-- IF S_DISPLAY_PORTALSEARCH and S_DISPLAY_SEARCH -->
			<!-- INCLUDE portal/block/search.html -->
		<!-- ENDIF -->		
		
		<!-- IF S_DISPLAY_RANDOM_MEMBER -->
			<!-- INCLUDE portal/block/random_member.html -->
		<!-- ENDIF -->

		<!-- IF S_DISPLAY_ATTACHMENTS -->
			<!-- INCLUDE portal/block/attachments.html -->
		<!-- ENDIF -->

		<!-- IF S_DISPLAY_TOP_POSTERS -->
			<!-- INCLUDE portal/block/top_poster.html -->
		<!-- ENDIF -->

		<!-- IF S_DISPLAY_LATEST_MEMBERS -->
			<!-- INCLUDE portal/block/latest_members.html -->
		<!-- ENDIF -->

		<!-- IF S_DISPLAY_LINK_US -->
			<!-- INCLUDE portal/block/link_us.html -->
		<!-- ENDIF -->
		
	</td>
<!-- [-] left block area -->
	<td style="width:4px;" valign="top"></td>

<!-- [+] center block area -->
	<td valign="top">
	<br style="clear:both" />
        <!-- INCLUDE portal/block/xxx.html -->
		<br /><div class="copyright">{L_PORTAL_COPY}</div>
	</td>
                         
<!-- [-] center block area -->
	<td style="width:4px;" valign="top"> </td>
</tr>
</table>

<!--// board3 Portal by www.board3.de //-->
<!-- INCLUDE overall_footer.html -->
Am Ende dann wieder daran denken "<!-- INCLUDE portal/block/xxx.html -->" entsprechend zu benennen. Die Datei wird dann unter "/phpBB3/styles/prosilver/template/portal" abgelegt.

4. Finale:

Erstelle eine Datei mit dem Namen "xxx.html" und folgenden Inhalt:

Code: Select all

<!--version $Id: welcome.html 479 2009-03-15 11:19:27Z kevin74 $ //-->
{$C_BLOCK_H_L}<dl class="icon"><dt>Band</dt></dl>{$C_BLOCK_H_R}
        <div class="panel" style="margin-bottom: 0px">
                <div class="inner"><span class="portal-corners-top-inner"></span>
<iframe align="center" src="http://www.the-sisters-of-mercy.info/band/index.html" width="100%" height="900" name="SELFHTML_in_a_box">
  <p>Ihr Browser kann leider keine eingebetteten Frames anzeigen:
  Sie k&ouml;nnen die eingebettete Seite &uuml;ber den folgenden Verweis
  aufrufen: <a href="http://www.the-sisters-of-mercy.info/band/index.html">SELFHTML</a></p>
</iframe>

                <span class="portal-corners-bottom-inner"></span></div>
        </div>
{$C_BLOCK_F_L}{$C_BLOCK_F_R}
Hier kannst du nun an zwei Stellen die Adresse von der Seite angeben, die im Portal eingebunden werden soll. Die fertige Datei legst du dann ab unter "/phpBB3/styles/prosilver/template/portal/block".
Edit:

Öffne "/phpBB3/styles/prosilver/theme/content.css" - und dann siehe Ende der Datei - dort einen Eintrag im folgenden Stil ergänzen:

Code: Select all

.section-portal_XXXXXX .postbody {
   margin-left: 0;
}
Damit die Änderungen greifen, muss noch in der Admin Konsole der Cache geleert werden (unter Styles>Templates>Aktualisieren) - das kannst du spaßeshalber auch unter Themes und Grafiksammlungen machen.



Mit dem Hintergrund muss ich am WE oder so mal schauen - wo hast du denn deinen Entwurf abgelegt?

Re: Erweiterbares Menü möglich?

Posted: 9. June 2011 16:11
by Marc
Also aktuell kann man das Menü schon über den Admin-Bereich verändern. Das heißt man kann neue Links hinzufügen, die ganzen Links neu anordnen und Kategorien erstellen.

Die Einbindung von eigenen Seiten in das Portal wurde bereits intern besprochen aber noch nicht hinzugefügt. Ob wir das hinzufügen sei jetzt mal dahingestellt, auf jeden Fall wollten wir aber mindestens eine Anleitung dafür bereitstellen.

Re: Erweiterbares Menü möglich?

Posted: 9. June 2011 18:03
by DocSommer
Cool - alles ist sicher besser als mein Gebastel :lol:

Gutes Timing mit der Beta übrigens^^

Re: Erweiterbares Menü möglich?

Posted: 26. June 2011 17:49
by derkubi
DocSommer wrote: Ich denke ich bin nicht der Einzige der sowas gut gebrauchen kann.
STIMMT

Ich hätte gerne einen Block der nicht links/rechts oder center steht , sondern über die ganze Seitenbreite geht .
Bei der Suche nach einer Lösung bin ich auf deinen Beitrag gestossen und muss sagen , dass dein Link mit dem
Pressearchiv genau meinen Vortstellungen entspricht bzw sogar besser ist als das was ich mir vorgestellt habe .
Ein schöner grosser Block und auf der linken Seite das Menü , und das Ganze noch im Style des Forums .

Bisher haben wir immer eine extra HTML-Seite erstellt und dazu dann einen Link im Menü LINKS angelegt . Das
war aber eben nicht im Forum-Style und man muss Änderungen immer mit dem Notepad++ vornehmen . Das ist
natürlich nur was für HTML-Kenner . Wir suchen nach einer Lösung die auch von "normalen" Usern von jedem Standort
aus geändert werden kann . Ideal wäre also ein per ACP editierbarer Block der entweder mit HTML oder BBCode
betrieben werden kann ( wie die Portal V2 Blöcke ) , ausserdem sollte er nicht wie andere Blocks permanent im
Portal zu sehen sondern eine extra Seite sein .

Das wäre doch auch ungefähr das was du sucht , ansonten habe ich dazu ja schon eine eigene Frage gestellt :
viewtopic.php?f=48&t=4726 , falls jemand helfen möchte/kann .
Könnte man z.B. den "Willkommen" Block so umbauen , dass er als Extraseite angezeigt wird aber weiterhin
per ACP editierbar bleibt ?

Gruss - derkubi

Re: Erweiterbares Menü möglich?

Posted: 28. February 2013 10:05
by JuergenBY
Marc wrote:Also aktuell kann man das Menü schon über den Admin-Bereich verändern. Das heißt man kann neue Links hinzufügen, die ganzen Links neu anordnen und Kategorien erstellen.

Die Einbindung von eigenen Seiten in das Portal wurde bereits intern besprochen aber noch nicht hinzugefügt. Ob wir das hinzufügen sei jetzt mal dahingestellt, auf jeden Fall wollten wir aber mindestens eine Anleitung dafür bereitstellen.
Moin,
ich such mir gerade einen Wolf, das zu finden, wo man die Links im Menu ändern bzw. welche hinzufügen kann...
Kann mir jemand bitte dazu einen Tipp geben?
MfG
JuergenBY

//Edit:

habs gefunden. Eine Bitte, vielleicht könnte man beim nächsten Release mit einbauen, dass man beim anlegen eines neuen Menupunktes auswählen kann, in welche Kategorie dieser soll. Dann spart man sich eine Menge Schieberei ;-)

Re: Erweiterbares Menü möglich?

Posted: 3. March 2013 18:22
by anjahimmel18
Vielen Dank für die interessante Anleitung. Das dürfte die Übersicht beim Menü um einiges erleichtern. Kann man neben den einzelnen Links und der Anordnung eigentlich auch das Design vom Menü verändern? Also gegebenenfalls mit CSS Elementen?