Uutiset:

Bored?  Looking to kill some time?  Want to chat with other SMF users?  Join us in IRC chat or Discord

Main Menu
Advertisement:

SMF 2.0 integreren in website

Aloittaja Pacator, elokuu 13, 2008, 12:24:57 IP

« edellinen - seuraava »

Pacator

Hoi,

Ik ben bezig om m'n website (reikistromingen.nl) om te gooien.
Op dit moment is het enkel een SMF forum en portal.

De portal gaat weg, het forum gaat over een tijdje over naar SMF 2.0 en er komt een website omheen dat informatieve artikelen e.d. gaat bevatten.

Een testsite is hier: www.reikistromingen.nl/test/index.php

Een testforum staat hier: www.reikistromingen.nl/test/forum

Wat ik graag zou willen:

Dat als je op deze pagina op "forum" klikt, dat je naar het forum gaat.. maar dat het forum zich in de lay-out van de website bevindt.
Met andere woorden... dat het forum op de plaats staat van waar nu de content staat van de website.

(alleen de header en het menu hoeven boven het forum komen te staan. Dit heb ik al in een apart bestand ssiheader.txt )

Hoe moet ik dit doen?

Aaron

Het makkelijkst is denk ik om een kopie van het standaardthema te maken. Dat kan gemakkelijk door naar Beheer -> Thema's en instellingen -> Installeer nieuw thema te gaan, en aldaar de naam van een niet-bestaand thema in te geven. SMF zal dan een nieuw thema aanmaken.

Van deze kopie pas je vervolgens de index.template.php aan, zodanig dat de HTML van je site op de juiste plaats staat - vermoedelijk wil je het nét achter <body> en net vóór </body> zetten.

Als je vervolgens een verwijzing naar je stylesheet opneemt tussen <head> en </head> in de template, moet je een heel eind kunnen komen.

Pacator

Thanks :-)

Dat nieuwe thema had ik al aangemaakt.

De HTML die ik wil invoegen (header en menu'tje) staat in ssiheader.txt
in de map: /reikistromingen.nl/public_html/test/ssiheader.txt

Het stylesheet staat ook in die map..

Ik wil graag de HTML op een SSI manier in het forum integreren, maar als ik dat probeer zie ik dat niet terug op het forum.
(Het forum, dit betreffende thema, staat in de map /reikistromingen.nl/public_html/test/forum/Themes/defaultreiki )

Zo ziet de aangepaste <head> er uit (het begin):
// Show right to left and the character set for ease of translating.
echo '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"', $context['right_to_left'] ? ' dir="rtl"' : '', '><head>
<link href="../../../stylesheet.css" rel="stylesheet" type="text/css" />


En zo ziet het er bij de (body> uit:

</head>
<body>';
}

include("../../ssiheader.txt");

function template_body_above()
{
global $context, $settings, $options, $scripturl, $txt, $modSettings;

echo '
<div class="tborder" ', $context['browser']['needs_size_fix'] && !$context['browser']['is_ie6'] ? ' style="width: 100%;"' : '', '>
<table width="100%" cellpadding="0" cellspacing="0" border="0">
<tr>
<td class="catbg" height="32">';

if (empty($settings['header_logo_url']))
echo '


Wat gaat er verkeerd?

Aaron

De include van SSI.php - je redeneert daar op twee manieren verkeerd. De include moet sowieso IN een functie zitten, anders wordt de hele output niet opgevangen. Zet hem dus ónder de regel global $context, $settings, $options, $scripturl, $txt, $modSettings;. Verder is het altijd beter om altijd een volledig pad te gebruiken in een include in plaats van relatieve paden, want in dit geval ontbreken er een paar ../-jes. :P

Advertisement: