Beiträge von marX

    WordPress verwendet *immer* die vollständige Adresse samt Protokoll und Domainname bzw. IP-Adresse. D.h. wenn du von extern mit der externen IP kommst, dann wird in WP auf die interne 192.168.*-IP umgeleitet. Das geht von extern natürlich schief, da diese Adresse eine für lokale Netze reservierte ist. Lösung: du musst die externe IP als Blog- und WP-Adresse eintragen.

    Dieser Code gibt dir eine Sidebar, mit den Standard-Inhalten am Ende, und am Anfang einen Widgetfähigen Bereich:


    Der rot markierte Bereich gibt die Widgets aus, der Rest ist immer da.

    Da es ja nicht nur in meinem Theme auftritt, muss es was mit Wordpres 2.6 direkt zu tun haben. Hier aber mal die Seite, ich hoffe es ist die richtige. Sie ist in meinem Theme und nennt sich header.php:


    Ja sieht gut aus. Hier ist der Übeltäter:


    Den ganzen Bereich kannst du löschen, falls du keine Unterseiten verwendest. Oder du probierst es mit meinem CSS-Tipp von oben.

    Eingebunden wird Sie mittels

    PHP
    require '/srv/www/web1/html/bidgolicious/wp-blog-header.php';


    Okay, ausgehend davon dass dein WordPress dort installiert ist sollte es so eigentlich funktionieren. Ansonsten sollte ja ein Fatal Error geworfen werden, wenn er die wp-blog-header.php nicht findet.

    Zitat

    Fehlermeldung:
    Fatal error: Call to undefined function wp() in /srv/www/web1/html/bidgolicious/wp-blog-header.php on line 22


    Dann findet er die wp()-Funktion nicht. Möglicherweise werden die weiteren WP-Dateien nicht korrekt eingebunden.

    Schau doch mal im error.log des Servers nach, ob du Warnungen findest, die besagen, dass die folgenden Dateien nicht gefunden wurden:

    Code
    /srv/www/web1/html/bidgolicious/wp-includes/classes.php
    /srv/www/web1/html/bidgolicious/wp-includes/functions.php
    /srv/www/web1/html/bidgolicious/wp-includes/plugin.php

    Poste mal die Template-Datei, die die #subnav ausgibt. Also vermutlich die page.php, evtl. auch die header.php. ("Suchen in Dateien" im Editor deines geringsten Misstrauens ;-)) Eventuell ist auch wp_list_pages() schuld, möglicherweise haben die Entwickler da etwas geändert in 2.6.
    Template Tags/wp list pages « WordPress Codex

    Wenn du nirgends Unterseiten hast, dann kannst du auch in der style.css schreiben:
    #subnav {display:none;}

    Du willst verhindern, dass the_content() einen eigenen Absatz erzeugt. Schreib mal folgendes in die functions.php des Themes:

    PHP
    <?php 
    remove_filter ('the_content', 'wpautop');
    ?>


    (Wenn du keine functions.php hast, dann erstelle einfach eine neue. Und aufpassen, dass sich keine Zeichen außerhalb von <?php und ?> einschleichen)

    Das sind m. E. die leeren, bzw. unvollständig generierten Listen der Sidebarwidgets.


    Ja meine ich ja auch, passt schon. ;-9

    Zitat

    Das Theme, bzw. die Sidebar benutzt widgets und basiert auf dem deutschen default-Theme, mit dem der Fehler übrigens auch auftritt (ein drittes habe ich noch nicht getestet).


    Möglicherweise hat auch eins der Widgets ne Macke. Sind das alles Standard-Widgets, oder nachinstallierte? Versuche die mal nach u. nachabzuschalten, vielleicht findest du ein fehlerhaftes. Dann kann man da weiter forschen. hast du vielleicht ein Code-Widget? (Text-Widget mit PHP-Code + PHP-Exec-Plugin o.ä.)
    Eventuell hat das error.log des Servers auch eine Fehlermeldung für dich parat.

    Zitat

    Die Version ist derzeit noch 2.5.1.


    Oki.

    Zitat

    Schon blöd, kann es eventuell an meinem php-code liegen?


    Eher nicht, außer du hast Widgets selbst mit Code versehen. Ansonsten kommt alles Widget-Zeugs ja aus dem WP-Kern bzw. aus Plugins.

    Zitat

    Ich werde nochmal ein anderes Theme ausprobieren, meld mich wieder.


    Mach das, vielleicht können wir das ja das Theme ausschließen.

    Also nochmal, du sollst nur folgende Zeile in deiner bestehenden Seite einbauen:

    PHP
    <?php require 'path/to/wordpress/wp-blog-header.php'; ?>


    Den Pfad musst du natürlich zu deiner WP-Installation anpassen. Aber an der Blog-Header-Datei selbst dürfen keine Änderungen vorgenommen werden. (Wenn du die wp()-Funktion auskommentierst, dann wird WP natürlich nicht geladen, und es stehen dir dann natürlich auch keine WP-Funktionen zur Verfügung.) Nochmal: es muss die wp-blog-header.php der bestehenden WP-Installation includet werden, sonst funktioniert das Ganze nicht! Idealerweise bindest du die Datei ein, bevor die andere Seite irgendeine Ausgabe macht.

    Wenn sich dann nicht irgendwelche Funktionen in die Quere kommen, dann solltest du jetzt WP vollständig in deiner anderen Seite nutzen können.

    the_permalink() funktioniert nur innerhalb eines Loop. Du suchst vermutlich eher get_permalink(), mit der numerischen Post-ID als Übergabeparameter.

    in der kopierten wp-blog-header.php hätten nix gebracht.


    Kopierte wp-blog.header.php? Du musst schon die wp-blog-header.php der WP-Installation includen. Diese holt sich dann sämtliche Funktionen aus den weiteren WP-Dateien. Voraussetzung dafür ist natürlich, dass die WP-Installation über das Server-Dateisystem erreichbar ist.

    Nimm dir mal das Plugin:
    WordPress › Most Commented « WordPress Plugins

    Zeile 17 änderst du so ab:

    Code
    $request .= " WHERE post_status = 'publish' [COLOR="Red"][B]AND comment_count = 0[/B][/COLOR] ";

    In Zeile 22 kannst du auch noch was ändern:

    Code
    [B][COLOR="#ff0000"]//[/COLOR][/B] $request .= " ORDER BY comment_count DESC LIMIT $no_posts";


    Wenn du alle Posts ohne Kommentare haben möchtest, dann kommentiere die Zeile einfach aus. (Orderby brauchst du in der Form nicht, du willst eh nur die Posts ohne Kommentare, und Limit begrenzt die Anzahl der zurückgelieferten Beiträge auf standardmäßig 5.)

    Noch Fragen dazu? :D

    Nicht mehrere Sidebars. Du kannst statische bereiche festlegen. Diese stehen außerhalb von

    PHP
    <?php if ( !function_exists('dynamic_sidebar') : ?>
       <!-- many lines of code here -->
    <?php endif; ?>

    In deinem Fall: