Beiträge von redcat63

    Hallo Leute,

    ich würde gerne die Kommentarfunktion nur in einer bestimmten Kategorie anzeigen lassen. Habe versucht, über Conditional Tags in der single.php das comments_template ausschließlich für die entsprechende Kategorie einzublenden, hat aber leider nicht geklappt. Das Resultat war, dass das comments_template in gar keiner Kategorie mehr angezeigt wurde.

    Hier ist der Code meines erfolglosen Versuchs:

    <?php if (is_category('15')) { ?><?php comments_template();?><?php } ?>

    Hat jemand eine Idee? das wär`super!
    Vielen Dank!
    Muddy

    Die Abfrage innerhalb der single.php muss m. E. so lauten:

    PHP
    <?php if (in_category('15')) { ?><?php comments_template();?><?php } ?>

    VG Elke

    Hallo Tim,

    dafür brauchst Du kein Plugin, denn Du kannst ja im Frontend/Template einen normalen Link setzen. Um welche Adresse es sich dabei handelt, siehst Du wenn Du einen Beitrag schreibst in der Adresszeile Deines Browsers.
    :-D (Der linksstehende lachende Smilie erscheint hier auf Wunsch meines Sohnes. ;-))

    VG Elke

    Strato und die DB-Geschwindigkeit

    Wenn die jetzt noch die Datenbank-Geschwindigkeit verbessern, gibt es da aus Wordpress-Sicht kaum noch was zu meckern :-)...


    Nachdem ich gestern fast einem Kunden geraten habe, Strato zu verlassen und selbst drauf und dran war das Selbe zu tun, weil die DB-Geschwindigkeit so miserabel ist, habe ich mich mit Strato in Verbindung gesetzt.
    Das Verständnis für meine / unsere Bedürfnisse war groß. Das Bemühen mir weiterzuhelfen ebenfalls. Während des Gesprächs erhielt ich u.a. folgende Infos:
    1. Im Vergleichstest liegt Strato, wie viele andere auch, im Mittelfeld, d.h. die DBs sind weder besonders schnell noch besonders langsam.
    Die Tests kann man sich hier ansehen: WebHosting-Test.de Test und Messwerte, der Leistungsvergleich
    2. Wer die volle Aufmerksamkeit des Servers haben und nicht lange auf die DB-Infos warten will, sollte sich einen Server zulegen. Hat man sich aus welchen Gründen auch immer für ein Paket entschieden, teilt man sich diese Aufmerksamkeit mit vielen Anderen.
    3. Zusätzlich hat er mich auch noch auf den WP-Cache aufmerksam gemacht und mir diese Seite empfohlen: Bessere Blog-Performance dank WordPress-internen Cache &mdash; Software Guide
    (Ich hatte zwar schon mal davon gehört und auch das Plugin wp-cache installiert, konnte aber vor einigen Wochen keine Fortschritte feststellen und habe dann die miserable Geschwindigkeit erst einmal wieder hingenommen.)

    Auf Grund der Links habe ich mich heute die ganze Zeit mit wp-cache und Datenbankzugriffen beschäftigt. Dies hatte zur Folge, dass ich nach stundenlanger Recherche mit Schrecken feststellte, dass die Plugins fold_page_list und fold_category_list enorm viele Datenbankabfragen (mehr als 30 pro Aufruf) verursachen. D. h. in Zahlen vor der Änderung meines Codes waren es noch mehr als 110 Aufrufe pro Seite, manchmal sogar 130, jetzt belaufen sich die Datenbankabfragen zwischen 30 und 50 Abfragen.
    Warum die Abfragen nach oben schnellen (50-60), wenn ich statt einer Page oder der Home mir eine Kategorie oder einen Beitrag ansehe, das kann ich mir allerdings noch nicht erklären. Hat jemand dafür eine Erklärung?

    Zusätzlich habe ich den Cache von WP aktiviert. Ob dies wirklich hilft, kann ich noch nicht beurteilen, dass werde ich aber noch genauer unter die Lupe nehmen.
    Weiteren Ideen zur Performance-Steigerung stehe ich jederzeit offen gegenüber. ;-)

    VG Elke

    Hallo alle zusammen,

    seit Stunden suche ich nach Plugins mit denen ich die Links (Blogroll) ausgeben kann, wobei nicht die Blogeschreibung, sondern die Notizen (das Textfeld) ausgegeben werden soll.
    Ganz besonders toll wäre es, wenn man es so einstellen könnte, dass es die Beschreibung ausgibt, wenn in dem Feld Notizen nichts drin steht.
    Gibt es ein solches Plugin?
    Gibt es überhaupt Plugins für den Blogroll?:confused:
    Gibt es vielleicht irgendwo eine Auflistung der WP-Funktionen (nicht nur Template-Funktionen), die sich mit dem Blogroll beschäftigen?

    Vielen Dank im Voraus für Eure Hilfe.

    VG Elke

    Nur ein Gedanke:
    - Mit is_feed() überprüfen ob ein Feed abgerufen ist
    - Mit is_category('deineID') auf die bewusste(n) Kategorie(n) überprüfen
    - Wenn ja - umleiten mit header('location...)

    Weiss nicht ob das funktionieren kann, v.a. ob is_category() in Feeds korrekt funktioniert, einen Versuch wäre es wert.

    Grüsse

    Vielen Dank für Deine Anregungen.
    Die Funktion is_category hat leider nicht geklappt, dafür aber das Umleiten auf eine andere Seite. :-D

    VG Elke

    Ich dachte mir jetzt, wenn die URL von der Veranstaltungsseite aufgerufen wird eine Weiterleitung zu der Übersicht der Kategorieseite geschaltet, welche nur die Beiträge aus der Kategorie anzeigt. Die Beiträge, sowie die Kategorieübersicht welche in dieser Kategorie liegen sollen dann eine separate CSS Datei aufrufen

    Ich dachte an sowas wie:

    PHP
    If Kategorie(X) 
    {separates_stylesheet.css aufrufen}
    else
    {Standard.css aufrufen}

    Ist sowas möglich? Wie gesagt, ich kenne mich mit PHP leider nicht aus, vielleicht gibt es hier welche die mir diese Zeilen vielleicht hinschreiben können? Oder eine bessere Idee haben?


    In der Datei header.php kannst Du das natürlich machen.
    Außerdem würde ich die Datei category.php kopieren und in category-15.php umbenennen. Die 15 ersetzt Du mit der gewünschten ID der Kategorie. Die Datei kannst Du dann nach Herzenslust abändern, ohne dass sich diese und die anderen Kategorien in die Quere kommen.
    Zusätzlich musst Du die Einzeldarstellung der Beiträge berücksichtigen Und da kommt dann die Funktion in_category ins Spiel, die marX weiter oben ins Spiel gebracht hat.
    Nun aber Schluss mit der vielen Spielerei. ;-)

    VG Elke

    Da sind halt irgendwo noch Leerzeichen und/oder Leerzeilen vor <?php und/oder nach ?>, die da nicht sein dürfen.

    Gruß Jeriko


    Leider nicht.

    Manchmal ist man einfach nur dämlich: :oops::oops::oops:
    Nachdem ich Deinen Beitrag gelesen habe, fiel mir ein, dass ich ja bereits ein Plugin, das u. a. Kategorien aus den Feeds ausschließt, geschrieben habe.
    Dabei habe ich allerdings einen Fehler entdeckt, den ich noch beheben muss.
    Für alle, die es interessiert:
    Für das Projekt, für das ich das brauche, habe ich erst einmal die folgende Lösung gefunden:

    PHP
    add_filter('pre_get_posts','eb_feed_cat_query');
    
    
    function eb_feed_cat_query($query) {
    if (is_feed()) {
       $query->set('cat', '-15' );
    }
    return $query;
    }

    Dies ist allerdings nur sinnvoll, wenn man wirklich nur eine Kategorie ausschließen will und noch nicht die Version 2.5 installiert hat.
    Wenn beides nicht zutrifft, muss man die Variable $where verändern.
    Ich habe das zunächst (auf die Schnelle) so gelöst:

    (Die Befehle str_replace kann man noch zusammenfassen, wobei die jeweils 1. Parameter in ein array geschrieben werden und die Funktion str_replace durch preg_replace erstezt werden muss.)

    Beide o.g. Funktionen werden übrigens in ein Plugin geschrieben und anschließend aktiviert.
    Soweit so gut.

    Allerdings habe ich trotzdem noch ein Problem:
    Wenn man in der Adresszeile des Browsers die Domainadresse der zu schützenden Kategorie eingibt und anschließend den String /feed dranhängt, dann zeigt er unabhängig, ob man angemeldet ist oder nicht, die Beiträge im Feed an.
    Wie kann ich dies verhindern?

    Weiß jemand Rat?
    Vielen Dank im Voraus für Eure Hilfe.

    VG Elke

    Hallo Jeriko,

    vielen Dank für Deine Hilfe.

    Leider hat es noch nicht geklappt, d.h. bei der Version WP 2.5.1 kommt folgende Fehlermeldung, wenn man die Feedseite aufruft:

    PHP
    Warning: Cannot modify header information - headers already sent by (output started at /mnt/web1/53/17/5481317/htdocs/wp-content/themes/default/functions.php:10) in /mnt/web1/53/17/5481317/htdocs/wp-includes/feed-rss2.php on line 8
    http://www.meine-domain.de Computer-Seminare-Webdesign Tue, 27 May 2008 12:58:19 +0000 en http://www.meine-domain.de/index.php/2008/05/25/wordpress-weblog-zum-ueben/ 
    http://www.meine-domain.de/index.php/2008/05/25/wordpress-weblog-zum-ueben/#comments Sun, 25 May 2008 15:33:01 +0000 Vorname Nachname 
    http://www.meine-domain.de/?p=109 http://www.meine-domain.de/index.php/2008/05/25/wordpress-weblog-zum-ueben/feed/

    Wenn ich es mit einer älteren Version (ich glaube 2.2.3) versuche, dann kommt eine andere Meldung (bei den Feeds) und der gesamte Blog ist nicht mehr erreichbar, d.h. der Bildschirm bleibt weiß.

    Ich habe die Funktion sowohl in der functions.php ausprobiert als auch das Ganze als Plugin versucht. Das Ergebnis war immer das Selbe.

    Weißt Du warum?

    Vielen Dank schon im Voraus für Deine/Eure Hilfe.
    Herzliche Grüße
    Elke

    Hallo alle zusammen,

    seit einigen Stunden suche ich sowohl im Netz als auch hier im Forum nach der Auflösung meines Problems. Aber bislang bin ich nicht wirklich fündig geworden.

    Deswegen wage ich es nun ein eigenes Thema zu eröffnen. ;-)

    Mein Problem:
    ich möchte/muss aus den Feeds eine Kategorie ausschließen. Dies gilt sowohl für die Suchmaschinen als auch für die Abonnenten der Feeds.

    Die Suchmaschinen habe ich mit Hilfe der robots.txt und der Abfrage im Header mit Hilfe des Meta-Tags ausgeschlossen. M. E. müsste das ausreichen:
    robots.txt:

    PHP
    # robots.txt für meine-domain.de
    # Diese Webcrawler schließe ich aus
    # Diese Verzeichnisse/Dateien sollen nicht durchsucht werden
    User-agent: *
    Disallow: /rss/
    Disallow: /feed/
    Disallow: /atom/

    header.php:

    PHP
    <?php if (is_category('redaktion')) {
    echo '<meta name="robots" content="noindex,nofollow" />';
    }
    else {   
    echo '<meta name="robots" content="index, follow" />';
    }
    ?>

    Den Link im Menü habe ich ebenfalls geändert.
    Soweit so gut.

    Wenn ich nun aber in der Adresszeile des Browsers die Domainadresse (Beispiel: http://www.meine-domain.de/feed

    PHP
    Meine-domain.de/feed/

    http://www.meine-domain.de/feed
    eingebe, dann spuckt er mir natürlich alle, also auch die der auszuschließenden Kategorie aus.
    Wie verhindere ich dies?
    Kann ich das per WP bzw. PHP automatisch korrigieren? Oder muss oder kann man dafür die Datei .htaccess-Datei nehmen, in der man den Link umleitet? Wenn ja, wie müsste dieser Befehl aussehen?
    (Diese Möglichkeit wäre für mich allerdings nur die 2. Wahl, aber was muss, das muss. ;-))
    Oder gibt es bereits eine viel elegantere Möglichkeit?

    Inwiefern muss ich eigentlich die Feeds der Kommentare berücksichtigen?

    Über Eure Hilfe wäre ich sehr dankbar.

    Zum Schluss:
    Gibt es eigentlich leicht verständliche Infos und Beispiele zu RSS und WP?

    VG Elke

    Verstanden? Wenn nicht nochmal nachfragen.


    Wenn ich ganz ehrlich bin:
    Nicht wirklich und nicht ganz, denn u. a. frage ich mich:
    - wo die Termine, die Du erhälst, wie abgespeichert werden?
    - wie das Widget aussehen soll?
    (Was soll wann und wie ausgegeben werden?)
    - wie werden die Termine mit den Beiträgen verbunden?
    (Stichwort: Schnittstelle)

    Verstehe ich Dich richtig:
    Willst Du die Beiträge zwar auf den normalen Seiten erst später veröffentlichen, aber trotzdem in einer speziellen Ansicht dann doch anzeigen?

    Was genau ist Dein Problem?
    :confused:

    VG Elke

    Ich vermute fast, dass das Problem eher vom Webserver her kommt.


    Das hört sich (fast) so an.
    Allerdings:
    ich würde auf dem Server, auf dem das Template Probleme bereitet, zu Testzwecken einen 2. Blog installieren*, um zu prüfen, ob es ggf. an korrupten Dateien bzw. Beiträgen oder irgendwelchen Plugins liegt. Wenn es nach Erstellung einiger Testbeiträge (in verschiedenen Kategorien ohne Plugins aktiviert zu haben) ebenfalls zu Problemen kommt, dann wird es wahrscheinlich am Server liegen. Im anderen Fall solltest Du zunächst alle Plugins deaktivieren, die WP-Dateien erneut auf den Rechner kopieren* und es erneut versuchen. Wenn es dann immer noch nicht funktioniert, würde ich die Beiträge Stück für Stück wieder auf Draft (nicht veröffentlichen) setzen. Ggf.befindet sich in einer der Beiträge eine Zeichenkombination, die diese Probleme verursacht.

    Was mir gerade noch einfällt:
    hast Du noch weitere Themes installiert? Ggf. irgendwann ausgetestet und vielleicht sogar Deinen Wünschen teilweise angepasst?
    Wenn ja, kopiere alle überflüssige Themes auf Deinen lokalen Rechner und lösche sie dann auf Deinem Server.
    Funktioniert dann alles noch so wie gehabt? Oder tauchen plötzlich andere Fehlermeldungen / Probleme auf?
    Wenn ja, dann kann es sein, dass, aus welchen Gründen auch immer, auf das andere Theme zugegriffen wird.
    Das selbe "Problem" habe ich zur Zeit. D. h. im Moment kann ich zwar damit leben, aber ich werde mich irgendwann darum kümmern müssen/wollen, damit ich die überflüssigen Themes endlich löschen kann. Ich gehe davon aus, dass in der Datenbank noch eine Verbindung zu dem vorher genutzten Theme besteht. Wissen weiß ich es aber nicht. ;-)

    VG Elke

    * Bevor die WP-Dateien und Theme-Dateien auf den Server kopiert werden, solltest Du die Einstellung für die Übertragung auf Automatisch stellen. Denn einige Dateiarten müssen binär (z. B. gif) und manche als ASCII (z. B. php) übertragen werden. Bei falscher Übertragungsweise kann es sein, dass die Dateien korrupt ankommen.

    Wenn ich Dich richtig verstehe, dann meinst Du keine statische Seite, die man bei Wordpress über Seiten erstellen kann, sondern eine Seite Deiner Webseite. D. h. Du willst auf einer Seite Deiner Webseite Beiträge anzeigen, die Du vorher einer Kategorie zugeordnet hast. (Deswegen auch meine obige Frage. ;-))

    Dazu musst Du Folgendes machen:
    1. die gewünschten Kategorien im Backend erstellen.
    (das kannst Du auch noch während der Beitragserstellung machen)
    2. die Beiträge während des Erstellen oder Änderns den gewünschten Kategorien zuordnen.
    Fertig.

    Wenn Du dann im Frontend auf die jeweilige Kategorie im Menü klickst, dann werden die Beiträge angezeigt, die Du der jeweiligen Kategorie zugeordnet hast.

    Ich hoffe, dass war halbwegs verständlich.

    VG Elke

    Ich vermute mal, das Plugin wurde unter PHP5 entwickelt (wo es Exceptions und damit try...catch gibt), auf deinem Server läuft aber PHP4. Vielleicht kannst du die PHP-Version im Verwaltungsmenü des Servers umstellen, oder du fragst deinen Hoster ob er das für dich ändert.


    Das wird es wohl sein. :)

    VG Elke