Page 1 of 1
Serendipity Seiten einbinden
Posted: Mon Jul 24, 2006 2:49 pm
by Chris123
Hallo,
ich habe die letzten drei Stunden mit der Suche gearbeitet. Ich bin auch überzeugt, dass dieses Problem dort bereits beschrieben und gelöst wurde. Nur leider bekomme ich es nicht hin.
Folgender Huntergrund:
Jemand hat Seiten über Serendipity erstellt, den kompletten Ordner und einen DB-Auszug mir zur Verfügung gestellt. Ich soll es nun in eine bestehende Website einbinden. Dieses würde ich gern per include() machen.
Ohne include, also der Auruf der Serendipity-Index funktioniert es. Wenn ich serendipity include, dann bekomme ich Fehlermeldungen, dass die Header nicht nochmal versendet werden dürfen. Logisch, aber ich bekomm sie einfach nicht entfernt. Ohne dass da "Don't hack" oder "Serendipity ist nicht installiert steht".
Folgende Fehlermeldung erhalte ich:
Code: Select all
Warning: Cannot modify header information - headers already sent by (output started at C:\xampplite\htdocs\index.php:22) in C:\xampplite\htdocs\br\serendipity\serendipity_config.inc.php on line 136
Serendipity ist noch nicht eingerichtet. Bitte jetzt installieren.
Die Zeile 136 sieht so aus:
Code: Select all
// * Kill the script if we are not installed, and not inside the installer
if ( !defined('IN_installer') && IS_installed === false ) {
header('Location: ' . ($_SERVER['HTTPS'] == 'on' ? 'https://' : 'http://') . $_SERVER['HTTP_HOST'] . str_replace('\\', '/', dirname($_SERVER['PHP_SELF'])) . '/serendipity_admin.php');
serendipity_die(sprintf(SERENDIPITY_NOT_INSTALLED, 'serendipity_admin.php'));
}
Wenn ich das auskommentiere steht da "Don't hack".
Ich habe Serendipity nicht installiert, weil ich nicht Serendipity zum entwickeln nutze, ich stelle nur die Seiten zur Verfügung. Wieso läuft es ohne include?
Wenn die Frage hier schon geklärt wurde, dann bitte kurz verlinken, wurde bisher nicht schlau.
EDIT: alle Serendipity Dateien hab ich natürlich übernommen. Eventuell ist da was über das Admin-Interface einzustellen, dass ich includen will?
Danke
Re: Serendipity Seiten einbinden
Posted: Mon Jul 24, 2006 4:28 pm
by garvinhicking
Hi!
Das ist recht einfach, siehe hier:
http://www.s9y.org/forums/viewtopic.php ... nfig+chdir
Code: Select all
chdir('serendipity'); // Or change this to the name of the directory where you installed s9y in!
# Include the s9y framework
include 'serendipity_config.inc.php';
# Initialize Template logic
serendipity_smarty_init();
# Fetch the 5 latest entries
$entries = serendipity_fetchEntries(null, true, 5);
# Parses the latest entries with the embedded template
$serendipity['template'] = 'embedded';
serendipity_printEntries($entries);
# Displays the latest entries
$serendipity['smarty']->display(serendipity_getTemplateFile('entries.tpl', 'serendipityPath'));
chdir('..');
Dafür muss s9y natürlich "einsatzbereit" sein, aber ich glaube das ist es ja bei dir. Denn anders kann s9y natürlich keine Inhalte aufbereiten, wenn es nicht installiert ist.
Die Installationskonfiguration findet sich in der serendipity_config_local.inc.php und/oder .htaccess, sowie in der Datenbnak in der Tabelle serendipity_config.
Viele Grüße,
Garvin
Posted: Mon Jul 24, 2006 8:17 pm
by Chris123
Danke für die schnelle Antwort!
so langsam wird es was. Muss mich wohl leider doch mehr mit dem Thema auseinandersetzen, als ich eigentlich will. Naja, dümmer wird man nicht.
Ist es normal, dass er nur die entries anzeigt. Den ganzen kram an den Seiten blendet er weg. Ich weiß "Suchfunktion" aber ich habe schon gesucht und bei den vielen Antworten, die das Thema beleuchten könnten blick ich einfach nicht mehr durch. So langsam gib ichs auch auf. Werd ihm was hinstellen und dann mir egal, ob ers dann noch will. Ein Tag für nen recht simplen Include ist dann doch schon recht heftig.
Kann ich nicht einfach die Header rausschmeißen und normal includen? das soll genauso aussehen, als wenn es nicht includet wird.
Bei der Gelegenheit, wo stehen noch configs drin? Die Bilder haben eine harte IP im img-tag aber ich find einfach nicht wo das herkommt. Entwickelt wurde auf einem anderen rechner und weder in der db, noch in den von dir genannten dateien, noch in anderen find ich diese IP noch, aber er spuckt sie mir aus bei rechtsklick auf ein img???
Posted: Tue Jul 25, 2006 10:48 am
by garvinhicking
Hi!
Ist es normal, dass er nur die entries anzeigt. Den ganzen kram an den Seiten blendet er weg
Ja, das ist normal. Da Du s9y als API benutzt, musst Du ihm mitteilen welche Teile Du willst. Um die Seitenleisten anzuzeigen musst du die serendipity_plugin_api::generate_plugins() Methode benutzen.
Allerdings frage ich mich dann, wenn Du fast die ganze Seite zusammenbaust, warum Du nicht direkt Serendipity selbst benutzt und Deine Layoutänderungen in den Templatedateien vornimmst? Das wäre evtl. weitaus einfacher...
So langsam gib ichs auch auf. Werd ihm was hinstellen und dann mir egal, ob ers dann noch will. Ein Tag für nen recht simplen Include ist dann doch schon recht heftig.
Hey, hey, wer wird denn da aufgeben.

Eventuell musst Du auch einfach genau beschreiben was Du willst. Natürlich geht das alles ganz einfach.
Kann ich nicht einfach die Header rausschmeißen und normal includen? das soll genauso aussehen, als wenn es nicht includet wird.
Dafür kannst Du die index.tpl Templatedateien editieren...
Bei der Gelegenheit, wo stehen noch configs drin?
Die Config ist in der serendipity_config Datenbanktabelle enthalten
Die Bild-URLs werden in serendipity_entries mit im "body" oder "extended" Feld gespeichert.
Viele Grüße,
Garvin
Posted: Wed Jul 26, 2006 4:29 pm
by Chris123
Hallo Garvin
Hehe, wollte noch ein letztes mal hier raufgucken. Aber bei der Antwort kann man wirklich nicht einfach aufgeben.
Also, ich beschreib noch einmal kurz, was ich gern machen möchte. Ich möchte ja die Serendipity Seiten genauso nutzen, wie sie mir zur Verfügung gestellt werden.
Ich habe ein Portal, wo ich auf mehrere Seiten verweise. Diese Seiten liegen natürlich alle auf meinem Server, werden aber teilweise nicht von mir betreut. Ich stelle das Portal und einen Link zur Verfügung. Ich habe nun einen Serendipity Ordner bekommen, den ich in das portal einbinden soll.
Also habe ich wie sonst auch den Link erstellt und wenn er active ist, dann wird die "index.php" includet, aus dem Serendipity Verzeichnis. Dieses funktioniert nicht, da es halt ein include ist, und ein header bereits existiert.
Nun habe ich Deinen Vorschlag mit der api genutzt - es funktioniert - nur will ich ja nicht die abgespeckte Version, sondern schon den kompletten Leistungsumfang der erstellten Seite (Anm. Verdammt ging das schnell, ich als editor-user bekam beim zugucken nen heulkrampf).
Also das was ich will, ist das komplette Blog (wenn das so heißt, also die komplette Struktur). Jedoch ohne Header. Gibts sowas? Oder nur über API?
Gruß,
Chris
Posted: Thu Jul 27, 2006 11:50 am
by garvinhicking
Hi!
Erstmal, wieso bekamst Du einen Heulkrampf?
Was Du willst klingt für mich stark danach, dass Du serendipity einfach komplett auf dem Server "installieren" willst. Das hast Du ja schon so gut wie gemacht, denn ein installiertes s9y ist nicht mehr als:
1. Die Dateien
2. Die Datenbank (mit korrekten Pfaden in der serendipity_config Tabelle)
3. Eine Datei serendipity_config_local.inc.php die den Zugang zur DB enthält
Also das was ich will, ist das komplette Blog (wenn das so heißt, also die komplette Struktur). Jedoch ohne Header. Gibts sowas? Oder nur über API?
Das kannst Du machen indem Du einfach die index.tpl des Templates was für das Blog eingestellt ist editierst und da den Header-Kram einfach rauspackst.
Dann müsstest Du entweder die index.php einfach includen können (evtl. musst Du mit ob_start() usw. arbeiten) oder auch direkt auf das s9y blog verzeichnis verweisen.
Eine noch einfachere Lösung anstelle eines includes wäre natürlich auch, den inhalt per iframe auszugeben?
Viele Grüße,
Garvin
Posted: Fri Jul 28, 2006 6:41 pm
by Chris123
Ich konnte halt meinen Augen nicht trauen, wie schnell das ging. Und alles wunderbar in der Datenbank. Ich benutze ein mysql Frontend und einen php editor. Das Zeitverhältnis ist ungefähr 1:10000000000.
Wenn ich ein wenig mehr Zeit habe, dann werd ich mich wohl sehr intensiv mit S9 auseinandersetzen. Spart unglaublich Zeit.
Dein Vorschlag klingt logisch. Ich versuch es mit der Headerentfernung. Und danach mit iFrame. Bin überzeugt, dass es klappt.
Vielen Dank für den klasse Support!!!
Gruß,
Chris
Posted: Fri Jul 28, 2006 6:43 pm
by garvinhicking
Hi!
Fein, das freut mich. Schreib einfach nochmal wenn es noch Probleme gibt
Viele Grüße,
Garvin
Posted: Thu Aug 03, 2006 4:00 pm
by Chris123
Hallo,
iframe -> das sieht sehr gut aus! ES GEHT
Ganz kurze Frage, dann probier ich weiter. Gibts eine Patentlösung wegen dem .css? Momentan wird Deine ja nicht includet, weil ich eine habe. Ich gehe mal davon aus, dass es nicht funktioniert und binde die css-sachen im body ein. gibt es einen eleganteren weg?
Ich hoffe Du verstehst was ich meine
Gruß,
Chris