Beiträge von mastermind

    Nun ja, dann kann man die Statements halt erweitern. In meinem Beispiel oben sorgt etwa die zweite Zeile dafür, dass auch Anfragen mit leerem Referer die Bilder bekommen. Bei jottliebs Beispiel das gleiche (auch zweite Zeile).

    Mit den RSS-Feeds ist es etwas schwieriger. Du könntest aber versuchen, durch PHP oder HTML -- Stichwort: http-equiv -- den Referer zu überschreiben bzw. selbst zu setzen (nur eine Idee).

    Letztendlich gibt es m.E. keine bessere Lösung als den Kontext über den Referer zu bestimmen.

    Doch, das geht. Probier mal folgendes:

    Unter die Zeile

    PHP
    <?php while (have_posts()) : the_post(); ?>


    setzt Du folgenden Schnipsel:

    PHP
    <?php
    			if ( $olddate != get_the_time('jmY') )
    				echo '<h2>' . get_the_time('j. F Y') . '</h2>';
    
    
    			$olddate = get_the_time('jmY');
    		?>

    Übrigens darf ich Dir dringend empfehlen, kein Tabellenlayout zu benutzen. Es verzögert den Seitenaufbau, es ist nicht barrierefrei, und Suchmaschinen mögen es auch nicht unbedingt. Wirf mal einen Blick auf CSS-Layout. Das ist zwar etwas schwieriger, bietet aber letztlich bedeutend mehr Möglichkeiten.

    Das ist schon eine sehr spezielle Anforderung... glaube nicht, dass es sowas gibt.

    Zerlegen wir das Problem mal in Teilprobleme:
    1.) Bei jeder Anmeldung soll eine Kategorie für den user erstellt werden
    2.) User muss für die Kategorie Schreibrechte haben.

    Zu 1.)
    Es müsste nicht nur eine Kategorie automatisch erstellt werden (was noch das geringste Problem wäre), sondern es muss auch eine Möglichkeit geben, erweiterte Kategoriedaten anzugeben. Dazu bräuchte man eine Eingabemaske; das ist aber auch kein großes Problem.

    Zu 2.)
    Schreibrechte für bestimmte Kategorien wären das eigentliche Problem, da das bei WordPress nicht vorgesehen ist. Man müsste dafür den Admin-Bereich grob umstricken, und evtl. sogar die Datenbank aufbohren.

    Das mit der Hervorhebung läßt sich doch relativ leicht vor der Ausgabe mittels PHP erledigen. Einfach "Suchwort" duch "<span class='suchwort'>Suchwort</span>" ersetzen. Mit SQL hat das ja nichts zu tun.

    Stimmt, aber das lässt sich mit der erweiterten MySQL-Suche nicht konsistent gestalten. Bspw müsste man Jokerzeichen interpretieren, und das würde ewig dauern. Oder boolsche Operatoren müssten interpretiert und ausgefiltert werden. Sicherlich ist das technisch machbar, aber es sind praktische Grenzen gesetzt.

    Ach so, ok. Ja, das ist bekannt und steht auch so in der MySQL-Doku. Um ehrlich zu sein, das stört mich momentan auch nicht sonderlich. Man könnte aber zu einem späteren Zeitpunkt mal andere Anwendungen (z.B. Forensysteme) und schauen, wie die das gelöst haben.

    Ich dachte, mit "Multibyte" meintest Du Probleme mit UTF-8 oder sowas.

    Wenn Du Ahnung von HTML und CSS hast, dann sind die Template-Anpassungen gar nicht so schwer.

    Wirf einfach mal nen Blick in das Default-Theme (Dateien in wp-content/themes/default), Du wirst sehen, dass das fast alles nur XHTML und CSS ist. Und zwischendrin halt ein paar PHP-Schnipsel, die den Content generieren.

    Am besten, Du machst eine Kopie des Default-Themes und strickst daraus Deine eigene WordPress-Oberfläche.


    hast du für deine suche MATCH () AGAINST () eingesetzt?

    Jep. Wobei das nur ein Teil der verbesserten/erweiterten Suche ist.

    ich hatte auch vor einiger zeit an einer verbesserten suche gearbeitet, muss aber davor noch eine lösung für das multibyte problem bei asiatischen sprachen finden.

    Aha, wusste gar nicht, dass es da zu Problemen kommen kann. Was genau ist denn das Problem?

    Meines Wissens nicht.

    Aber wenn Du das unbedingt möchtest, kannst Du einen kleinen Hack anwenden:

    In der Datei classes.php, Zeile 300 - 303 (in v2.0.4) steht folgendes

    PHP
    if ( $this->is_feed ) {
    			$q['posts_per_page'] = get_settings('posts_per_rss');
    			$q['what_to_show'] = 'posts';
    		}

    Du kannst darunter den folgenden Code setzen:

    PHP
    if ( $this->is_search) {
    			$q['posts_per_page'] = '20';
    		}

    Die Anzahl kannst Du beliebig wählen.

    Anmerkung: Es ist grundsätzlich nicht empfehlenswert, die WordPress-Installation an sich zu bearbeiten; sollte man nur machen, wenn man es wirklich braucht. Außerdem muss man an die Änderungen erneut durchführen, wenn es ein Update gibt.

    Das Problem beginnt schon dabei, dass die normale Suchfunktion nur nach einem zusammenhängenden String sucht. Wenn ich bspw. nach "Berlin Bundestag" suche, müssen diese beiden Begriffe direkt nebeneinander stehen, damit sie als Ergebnis gewertet werden. Mit der erweiterten Suche reicht es, wenn beide Begriffe irgendwo im Content auftauchen.

    Weiterhin ist es auch bei mittelgroßen Sites schon wünschenswert, das Ziel genauer beschreiben zu können. Die von HenSch beschriebenen und noch weitere Funktionen geben dem Suchenden weit mehr Möglichkeiten, aus einem Wulst von Beiträgen den gewünschten zu finden.

    Was der Standardsuche außerdem fehlt, ist eine Möglichkeit, die Ergebnisse nach Relevanz oder anderen Kriterien zu sortieren.

    Die Suche zeigt bei Dir die selbe Anzahl an Ergebnissen wie auch Blogeinträge auf der Startseite angezeigt weden. Ergebnisse gibt es natürlich ein paar mehr, nur fehlt in Euren Templates (z.B. search.php) offenbar sowas wie:

    PHP
    <div class="navigation">
    			<div class="alignleft"><?php next_posts_link(__('&laquo; Previous Entries')) ?></div>
    			<div class="alignright"><?php previous_posts_link(__('Next Entries &raquo;')) ?></div>
    		</div>

    Wenn man diesen o.ä Kode vor oder nach dem Loop einfügt, hat man auch Zugriff auf die anderen Suchergebnisse.

    Nein, es übersetzt alle Texte, die als gettext-Kataloge in den Hauptsprachdateien sind.


    Installation ist ganz einfach:

    - Plugin laden
    - Deutsche Sprachdatei herunterladen und ggf. in de_DE.mo umbenennen (statt de_Sie)
    - in der wp-config.php die Sprache auf en_US setzen (wichtig!)
    - in der polyglot.php die Variablen $polyglot_settings['default_lang'] und $polyglot_settings['knownlangs'] setzen
    - Sprachwechsler if (function_exists('polyglot_list_langs')) polyglot_list_langs(false); an gewünschter Stelle einfügen.

    Ich kenne mich noch nicht so gut aus ... in welcher Datei hast Du diesen Eintrag vorgenommen?

    Das gehört in die Serverkonfiguration bzw. in die VirtualHost-Konfiguration; um die zu bearbeiten, brauchst Du aber normalerweise Root-Rechte.

    Anderenfalls kannst Du versuchen, es in die .htaccess zu schreiben. Falls Du aber einen Fehler 500 o.ä bekommst, dann geht es nicht, und Du solltest Dich direkt an Deinen Hoster wenden.

    Die angefügte Mail hat mir die Sprache verschlagen - ist das eine übliche Vorgehensweise???

    :mrgreen:

    Wohl eher nicht... da hat sich eher der Verfasser gut lächerlich gemacht. ;-)