"Printing the Latest Entries with PHP" auf s9y-blo

Hier können Probleme und alles andere in Deutscher Sprache gelöst werden.
Post Reply
stm999999999
Regular
Posts: 1531
Joined: Tue Mar 07, 2006 11:25 pm
Location: Berlin, Germany
Contact:

"Printing the Latest Entries with PHP" auf s9y-blo

Post by stm999999999 »

Hallo,

unter http://www.s9y.org/206.html wird eine Methode beschrieben, wie man s9y-Einträge außerhalb des eigentlichen Blogs mit php anzeigen lassen kann.

Ich will (siehe auch http://www.s9y.org/forums/viewtopic.php?t=7878) bestimmte Einträge meines Blogs in einem anderen Blog auf der Startseite anzeigen lassen (alle blogs liegen auf demselben Server).

Nun fürchte ich aber, daß diese Methode mit ihrem

Code: Select all

// 2: Start the Serendipity API
include 'serendipity_config.inc.php';
// 3: Start Smarty templating
serendipity_smarty_init();
so ihre Probleme haben / machen könnte, wenn man das in einem anderen s9y-Blog ausführt, oder?

Bliebe mir also nur die javascript-Variante?
Ciao, Stephan
hackerart
Regular
Posts: 92
Joined: Fri Dec 01, 2006 1:27 pm

Post by hackerart »

Ich habe das mal schnell ausprobiert und habe auf einer einfach Test-Webseite damit Probleme, siehe http://www.hackerart.eu/

Ich habe "chdir('..');" so gelassen, da es mit vollem Pfad Probleme gab.

Klicke ich auf "» nächste Seite" erhalte ich:
The requested URL /P2.html was not found on this server.

Wie kann ich _nur_ den Eintrag, ohne die Tags in die Seite einbinden?
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Post by garvinhicking »

Hi!

stm: Grundsätzlich sollte der Code-Aufruf eigentlich keine Probleme machen. Die Dateien sind ja auf beiden Blogs gleich. Evtl. ist für dich aber ein iframe oder eine javascript oder eine RSS-Feed Methode leichter, um zum Ziel zu kommen?

hackerart: Das chdir() ist schon sehr wichtig, ansonsten wird nicht ins richtige Verzeichnis zur Einbindung gewechselt. Die URL zur nächsten Seite ist evtl. ein relativer Link und klappt daher nicht, weil er auf deine aktuelle Seite statt auf das Zielblog zeigt. Das hängt dann wiederrum von der Konfiguration deines s9y's ab, und ob Du dort die relative Pfadangabe korrekt eingebaut hast.

Du kannst "nur" den Eintrag einbinden indem Du mittels der PHP-Befehle den Funktionen nicht die "entries.tpl" als Ausgabetemplate übergibst sondern z.B. eine "myentries.tpl" die Du erstellst. In dieser Datei kannst Du alle unwichtigen Sachen dann raushauen.

Gib mal Details wie Du was eingebunden hast, Beispie-URLs zum ansehen, dann kanni ch mehr dazu sagen.

Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
hackerart
Regular
Posts: 92
Joined: Fri Dec 01, 2006 1:27 pm

Post by hackerart »

Ich muss mir da was noch nächer anschauen, bevor ich mehr Informationen poste. Ich kann mir vorstellen, dass es mit Alias-Pfaden zusammenhängt.
stm999999999
Regular
Posts: 1531
Joined: Tue Mar 07, 2006 11:25 pm
Location: Berlin, Germany
Contact:

Post by stm999999999 »

garvinhicking wrote:stm: Grundsätzlich sollte der Code-Aufruf eigentlich keine Probleme machen. Die Dateien sind ja auf beiden Blogs gleich. Evtl. ist für dich aber ein iframe oder eine javascript oder eine RSS-Feed Methode leichter, um zum Ziel zu kommen?
Hm, ich dachte, weil da ja via "include 'serendipity_config.inc.php';" eine völlig fremde Konfig geladen wird (also auch andere Datenbank/Tabellen, etc.) daß das irgendwie zu Problemen führen kann, wenn hinterher noch Sachen aus dem eigenen Blog geladen werden müssen!?

Javascript würde ich nur als Notberhelf nehmen wollen, weil damit ja manche Nutzer ausgeschlossen werden. iframes muß ich mir mal angucken.

Gibt es eigentlich auch php-Code, der simpelst nur die Ausgabe eines RSS-Feeds übernimmt?
Ciao, Stephan
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Post by garvinhicking »

Hi!

Hm, jetzt verstehe ich das Problem. Ja, Du kannst in einem s9y nicht nochmal ein anderes s9y laden. Du musst daher die s9y API funktionen nutzen um eine weitere DB connection mit den entsprechenden daten des zweiten blogs aufmachen, dann temporär $serendipity['dbPrefix'] etc. umbiegen und dann via fetchentries() etc. deinen kram holen. Danach die $serendipity[] variablen wieder zurückstellen zu den ursprungsdaten.

Hmmmm. Nee. Auch das wird so nicht klappen, merke ich. Dein $serendipity[] Array ist ja generell ganz anders. Da musst Du also nicht nur eine neue db-connection aufmachen sondern ein ganz neues $serendipity via serendipity_load_config indizieren und vermutlich noch weitaus mehr funktionen umbiegen, damit die konfiguration korrekt ist.

Da wäre es also geschickter ein eigenes plugin zu entwickeln was einfach die entsprechenden SQL-Befehle absetzt und evtl. ein paar Hilfs-s9y Funktionen nutzt.
Gibt es eigentlich auch php-Code, der simpelst nur die Ausgabe eines RSS-Feeds übernimmt?
Ja, Onyx oder Magpierss ist da recht simpel.

Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
stm999999999
Regular
Posts: 1531
Joined: Tue Mar 07, 2006 11:25 pm
Location: Berlin, Germany
Contact:

Post by stm999999999 »

hm, am simpelsten erscheint es mir momentan, wenn ich plugin_remoterss irgendwie dazu bewegen könnte, auch per smarty in tpl-Dateien eine Ausgabe zu machen ... *seufz*
Ciao, Stephan
garvinhicking
Core Developer
Posts: 30022
Joined: Tue Sep 16, 2003 9:45 pm
Location: Cologne, Germany
Contact:

Post by garvinhicking »

Hi!

Du kannst doch das remoterss-plugin via {serendipity_showPlugin} einbinden?

Grüße,
Garvin
# Garvin Hicking (s9y Developer)
# Did I help you? Consider making me happy: http://wishes.garv.in/
# or use my PayPal account "paypal {at} supergarv (dot) de"
# My "other" hobby: http://flickr.garv.in/
stm999999999
Regular
Posts: 1531
Joined: Tue Mar 07, 2006 11:25 pm
Location: Berlin, Germany
Contact:

Post by stm999999999 »

Ich habe jetzt mittels der neuen Sidebar-Positions-Möglichkeiten einfach eine neue Position bottom aufgemacht und diese dann in meiner static startpage eingefügt:

Code: Select all

<div class="plugin_frontpage_bottom">
    {serendipity_printSidebar side="bottom"}
</div>
und über das zusätzliche div kann ich diese völlig nach Belieben formatieren:

Code: Select all

.plugin_frontpage_bottom .sidebar {
	width: 500px;
	float: left;
	clear: both;
	margin-top: 30px;
}


.plugin_frontpage_bottom {
	margin-top:5px;
	margin-left:-70px
}
und wenn ich will, dann kann ich auch Rahmen, Überschrift etc. anpassen. s9y rocks! :-)
Ciao, Stephan
Post Reply