Beiträge von Ammaletu

    Klappt es denn mit domain.de/category/news/2009/?! Das "category" kannst Du ja im Backend einstellen, ggf. auch auf etwas wie "archiv" oder so.Wo hast Du diesen Code denn eingesetzt? In der category.php? Du solltest dabei auch noch prüfen, dass das, was Du aus der URL parst, auch wirklich eine Zahl ist und andernfalls ebenfalls das aktuelle Jahr nehmen. Dann wären die Kategorieseiten immer jahresbasiert, ob es in der URL steht oder nicht. Falls Dich doppelter Content interessiert, könnte man vom Archiv ohne Jahreszahl auch auf eines mit der aktuellen weiterleiten.

    Auch dann sehe ich aber noch nicht, wie Du die Jahreszahl in die Links zu weiteren Seiten bekommst. Das braucht doch noch mal Extra-Code, oder?

    Danke fürs Posten der Infos, hilft vielleicht anderen auch weiter. Dachte ich doch, dass das an PHP 4 liegen muss. Wieso noch irgendein Provider PHP 4 überhaupt anbieten sollte, ist mir ehrlich schleierhaft!

    Ob TweetOnPost normalerweise funktioniert, kann ich nicht beurteilen, nutze selber kein Twitter. Aber es gibt ja viele Twitter-Plugins, schön wenn Du ein funktionierendes gefunden hast.

    Hm, sieht so aus als hättest Du das schon fast fertig. Du musst doch jetzt nur noch in der sidebar.php raussuchen, wo die Sidebars aktuell eingebunden sind und dort Deinen obigen Pseudo-Code durch echten Code ersetzen. ;)

    Wenn die Sidebar bei Dir noch in einer if-Abfrage eingebunden ist, überlege, das da rauszuziehen. Du wirst die Sidebars ja wohl nicht leer lassen und WP kann immer Widgets darstellen, die if-Abfrage ist also unnötig.

    Statt dessen prüfst Du dort eben zuerst Deine Ausnahmen. Etwa so:

    PHP
    if (is_page('About')) {
      // Sidebar für About-Seite
      // ...
    } else {
      // normale Sidebar
      // ...
    }

    Meine Anerkung zur .htaccess bezog sich auf diesen FAQ-Eintrag:
    http://faq.wordpress-deutschland.org/server-fehler-…-auf-11-server/

    Dateien mit der Endung ".php" werden u.a. bei 1&1 sonst wohl als PHP 4 ausgeführt. Das wäre jetzt so für mich die naheliegendste Erklärung.

    Du kannst das Problem übrigens auch einfach anhand einer Testdatei lösen, wenn es denn daran liegt. Kopier mal das hier in eine test.php:

    PHP
    <?php
      try {
        phpinfo(); 
      } catch (Exception $ex) {
        echo 'Exception';
      }
    ?>

    Wenn der Webspace tatsächlich noch mit PHP 4 läuft, sollte das ja den gleichen Fehler produzieren. Ansonsten ist es noch was anderes.

    Die oben verlinkte Seite gehört zum Supportbereich von wordpress.com, was ja bekanntlich nicht das gleiche wie wordpress.org ist. ;) Die haben in der auf wordpress.com laufenden Version hinter den Kulissen sicher einiges an Plugins laufen, darunter auch eines für das Kontaktformular. Im normalen selbst installierten WP wird das so nicht ohne Plugin gehen. Es gibt aber genug Plugins, die einem das tatschlich als Shortcode anbieten, der dann bei der Anzeige durch das Formular ersetzt wird.

    Falls sich keine findet ist es ja ein halbwegs überschaubarer Aufwand, das Theme einfach selbst zu übersetzen. Anleitungen gibt es genug, z.B.: http://www.texto.de/wordpress-them…-anleitung-553/

    Sehr einfach ist das natürlich, wenn das Theme schon andere Übersetzungen hat und Du nicht die Themedateien an sich anpassen musst. In dem Fall kannst Du in dem verlinkten Tutorial einige Schritte überspringen. Nicht vergessen am Ende, dem Themeautor die Übersetzung zu schicken!

    Also ich hab mal ins TweetOnPost-Plugin reingeschaut. Der Fehler tritt dort bei einem "try {" auf, was sehr stark auf ein PHP-4-Problem hinweist. Wenn Deine Seite nun mit PHP 5 läuft, sollte das aber eigentlich gehen. Bist Du bei einem dieser komischen Provider, wo Du PHP 5 noch mit einer Zeile in der .htaccess auf ganz normale PHP-Dateien anwenden musst anstatt nur auf *.php5?

    Zitat

    Mein Problem ist nun, dass in der sidebar.php ja lediglich der Code für die Standard-Sidebar steht aber nicht der für eine individuelle und ich nicht weiß, wo ich die entsprechenden Tags des Plugin eintragen muss, damit mir der Vorschautext im Widget angezeigt wird.



    Du müsstest dafür das Widget überschreiben, denke ich. Such Dir raus, wo in WP die Standard-Widgets definiert sind und kopier Dir den Code dieses Widgts in die functions.php. Dort kannst Du das Widget anpassen, so dass es den Excerpt mit ausgibt. Das Standard-Widget kannst Du deregistrieren und dafür steht dann Dein neues Widget zur Auswahl im Backend.

    Die normale Sidebar ist immer so aufgebaut, dass sie die statische Sidebar nur anzeigt, wenn keine Widgets konfiguriert sind. Das muss aber natürlich nicht so sein, Du kannst den Widgetbereich auch einfach einbinden an einer Stelle Deiner Wahl. Die if-Abfragen sind eigentlich heutzutage obsolet, WP kann ja immer Widgets (das stammt noch aus Zeiten, als Widgets per Plugin gelöst waren). Mit einem Blick ins alte Default-Theme sollte sich die Syntax zur Einbindung finden lassen. Einfach auf das if drum herum verzichten.

    Zitat

    Nun erlebe ich, dass bei meinen selbsterstellen Menüs alle css einstellungen von diesem Theme überschrieben, bzw; verwendet werden. Ich möchte aber individuell entscheiden wo welche CSS Einstellung zum Tragen kommt.

    Also so ganz kann ich Dir nicht folgen. Wie muss ich mir das vorstellen? Hängst Du style-Attribute an das statisch erstellte Menü? Generell sollten Styles wenn irgend möglich im Stylesheet des Themes stehen und nirgends sonst. Das Theme ist ja logischerweise die Instanz, die das Aussehen des Menüs regelt. Wenn einzelne Menüpunkte anders aussehen sollen, haben die in der Regel eine Klasse, welche man in der style.css ansprechen kann.


    Zitat

    Und wie kann ich zB in den kategorien, zwar alle Kategorien anzeigen lassen, aber nur die oberste Hierachie, der Rest sollte aufklappbar und auch wieder zum Schließen sein.

    Nur die oberste Ebene anzeigen sollte kein Problem sein. Für Ein- und Ausklappmenüs müsstest Du aber entweder nach einer fertigen Lösung (Plugin/Widget) suchen oder Dir z.B. mit jQuery selber was basteln.

    Also das mittlere kannst Du weglassen, das Format ist nun wirklich veraltet. RSS 2.0 und Atom sind zwei konkurrierende Formate, sie sich aber aus meiner Sicht nur minimal unterscheiden. Ich biete normalerweise gewohnheitsmäßig nur den RSS-Feed an, aber man kann Atom natürlich ohne speziellen Aufwand parallel anbieten. FeedBurner würdest Du dann einfach den normalen RSS-Feed geben.

    Einen fertig eingebauten Weg gibt es dafür nicht, aber man könnte es sicher irgendwie selber basteln. Bin mir da mit den Details aber gerade auch nicht so sicher. Ich denke, Du könntest das auf der category.php des Themes aufsetzen (aus der archive.php erstellen falls nicht vorhanden). Dort müsstest Du dann der Query immer noch ein Jahr mitgeben. Falls keines in der URL steckt dann das aktuelle.

    Soweit sollte das trivial sein, schwieriger wird es sicher, das Jahr dann auch in die Seitenlinks zu bekommen, damit Seite 2, 3 etc. immer noch das richtige Jahr anzeigen. Außerdem müsstest Du selber eine Leiste mit allen verfügbaren Jahren ausgeben (vermutlich alle Jahre von aktuell bis definiertem Startjahr, ohne zu schauen, ob dafür auch Beiträge vorhanden sind).

    Also mal ins Blaue geraten: Verwendest Du noch PHP 4? Falls ja solltest Du mal auf PHP 5 upgraden. Das Plugin nutzt vielleicht neue Syntax, die in PHP 4 nicht funktioniert. Obwohl das der Plugin-Autor ja auch ruhig mal hätte irgendwo erwähnen können.

    Du musst halt da, wo jetzt CSS-Klassen mit den Seiten-IDs vergeben werden, statt dessen oder zusätzlich CSS-Klassen mit den Seiten-Namen/Slugs ausgeben. Wie Du das machst kommt drauf an, wo Du das brauchst: Am Body-Tag der Seite, am li-Element in einer Seitenauflistung etc.

    Ich kopier Dir das mal beispielhaft etwas aus den Hybrid- und Thematic-Frameworks zusammen. In der header.php ist das Body-Tag so definiert:

    PHP
    <body class="<?php my_body_class(); ?>">

    Und die Funktion sieht in der functions.php so aus:

    Das müsste dann auf der Seite "Feed" die Klasse "page-feed" am body-Tag ergeben, welche Du im Stylesheet ansprechen kannst um Elemente auf dieser Seite anders zu stylen.

    Ich hab's nicht probiert, aber ich würde auf etwas in der Art tippen:

    Apache Configuration
    RewriteEngine On 
    RewriteRule ^/?$ [URL]http://www.beispielseite.de/subblog/[/URL] [R=301,L]
    RewriteRule ^/index\.php$ [URL]http://www.beispielseite.de/subblog/[/URL]  [R=301,L]

    Damit sollte der Aufruf von nur der Domain, nur der Domain mit Slash am Ende und der Domain mit index.php umgeleitet werden. Bei Deiner Variante würde jeder Pfad umgeleitet, der auf ".php" endet. Kann gut sein, dass das sogar zu einer Endlosschleife führt, denn der Subblog läuft ja auch über eine index.php. Vielleicht war's aber auch syntaktisch falsch, dann sollte sich was im Errorlog des Apache finden dazu.

    Besser fährst Du, wenn Du nicht mit IDs arbeitest sondern mit Seitennamen. Falls Dein Theme das nicht schon macht, ist es kein Problem, Klassennamen z.B. aus dem Seiten-Slug statt der ID zu bilden. Das gleiche gilt für Namen von Theme-Dateien (z.B. für Kategorien), die können mittlerweile auch den Slug oder Seitennamen statt der ID enthalten. Dann vermeidest Du dieses ID-Problem anstatt dauerhaft die IDs synchronisieren zu müssen.