Titelindex, A bis Z Index etc.

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • Hey, danke! Genau so etwas suche ich - so wie du es in deinem blog verwirklicht hast. Hast du das mit jenem plugin (wp-snap) realisiert oder mit dem code?
    leider bin ich noch recht neu im umgang mit php. wie stellst du die überleitung zu den interpreten her?

  • ???

    Hmm ist eine echt schicke Anleitung, aber irgendwie bekomme ich es nicht hin. hab es nach 2 h aufgegeben.

    Gibt es noch eine etwas aussagekräftigere Anleitung oder ein plugin was unproblematischer ist?

    Danke. :-D


  • Sowas hier?

    Inhalts-Übersicht (gunnART - Grafik, Layout, Konzeption)

    Müsste ich noch mal ein bisschen "ordentlicher" schreiben, aber vom Prinzip her ist es als PlugIn schon fertig. Der Index kann auf zweierlei Weise angezeigt werden:

    Entweder man schreibt in PHP

    show_AlphaIndex('navi') - Für das verlinkte Alphabet
    show_AlphaIndex('list') - Für die Auflistung der Beiträge

    Oder man legt eine Page bzw. ein Posting an und schreibt (ganz normal im Beitrags-Text)

    {AlphaIndexNavi} - Für das verlinkte Alphabet und
    {AlphaIndexList} - Für die Auflistung der Beiträge bzw. Seiten

    In der Auflistung tauchen aktuell NICHT auf:
    - Seiten und Beiträge im Entwurfs-Stadium
    - Seiten und Beiträge, die ein Passwort haben
    - Seiten und Beiträge mit Status "privat"
    - Seiten, die (via SideBar Page Switcher) aus der Navigation ausgeschlossen sdin
    - Seiten, die extern weiterleiten (siehe PlugIn Page Links-To)

    Ein bisschen dran rumbasteln möchte ich allerdings schon noch, bevor ich das "auf die Menschheit" loslasse ...

  • Hallo Smexstar,

    es gibt auch ein Plug-In dafür:
    nateomedia | WP-SNAP! WordPress Plugin

    Ich war allerdings nicht so begeistert davon, da es doch etwas träge reagiert.
    Der Ansatz es mit WP-Bordmitteln zu lösen erscheint mir sinnvoller.

    Evtl. erstellt Pufaxx ein besseres Plug-In!

    An welcher Stelle von meiner Anleitung:
    WP Alphabetische Sortierung (Archiv A-Z) | funkygog Blog
    bist Du denn verzweifelt?

    Will gerne meinen Beitrag daraufhin verbessern.

    funkygog Blog | Chicago House

    Einmal editiert, zuletzt von funkygog (19. Mai 2007 um 01:12)

  • Ahja, das PlugIn ... Ich weiß jetzt nicht, wie da der aktuelle Stand der Technik ist, aber ich hab das damals auch ausprobiert.

    Was mich gestört hatte, war ...

    ... dass Umlaute nicht beachtet wurden
    ... dass Überschriften auch mit Zahlen beginnen können
    ... dass Titel, die beispielsweise mit Anführungszeichen beginnen, auch nicht korrekt einsortiert wurden

    Außerdem wollte ich Beiträge UND Seiten auflisten. Letzteres ist seit WordPress 2.1 natürlich ein bisschen einfacher geworden, weil dort Pages und Postings in der selben Datenbanktabelle gespeichert werden. Das PlugIn für ältere Versionen müsste ich wieder "ausgraben", ich weiß gar nicht mehr, wo das rumschwirrt ...

    Sortierung: Von den Beitragstiteln wird zunächst einmal alles "gelöscht", was weder Zahl noch Buchstabe ist. Umlaute werden ä in ae, ö in oe und so weiter gewandelt - und diese Ergebnisse werden dann alphabetisch sortiert.

    Die eigene Funktion dazu hab ich wieder rausgenommen, weil's ein ziemlicher Aufstand gewesen wäre, alle möglichen Codierungen durchzuprüfen. Ich bin der Einfachheit halber davon ausgegangen, dass bei deutschsprachigen Installationen das PlugIn "Clean Umlauts" aktiv sein dürfte und somit die Funktion o42_cu_permalinks(); zur Verfügung steht.

    Der Index wird einmal erzeugt und (via WordPress Object Cache) Datei mit einer Woche Gültigkeit gespeichert. Wird vor Ablauf ein Beitrag veröffentlicht, gelöscht oder umbenannt, wird der Cache geleert, damit kein veralteter Index gezeigt wird.

    Ohne Caching wäre meine Lösung sonst ebenfalls recht "träge" - Denn die erzeugten Links sind allesamt "Permalinks" - und jedesmal "get_permalink(irgendeinenummer)" bedeutet (je nachdem, welche Permalink-Optionen man nutzt) eine Datenbank-Abfrage. Das kann unter Umständen ganz stattlich werden ...

    Ich müsste noch irgendwie eine Einstellmöglichkeit bieten, in der man auswählen kann, ob die Links als Permalink oder in Form von https://wpde.org/www.beispiel.de/index.php?page_id=123 ausgegeben werden ...

    Das mit den Clean Umlauts kann man aber (denke ich) so lassen, oder?

  • Alphabetischer Index - Beta-Version ist fertig!

    ... und bereit zum Testen.

    Download-Link und Anleitung gibt es bei mir

    Das Ausschließen von Pages, die mit dem Sidebar PageSwitcher "verborgen" werden, hab ich übrigens wieder rausgenommen - Denn dazu müssten die Custom-Fields eingelesen werden - Was die Geschichte ein bisschen verlangsamt.

    Ansonsten (ich hoffe, das funktioniert auch überall) wird das PlugIn "Clean-Umlauts" nicht mehr zum Sortieren benötigt. Bitte bescheid sagen, wenn ich da irgendwie Mist gebaut hab. Man weiß ja nie so genau, mit welcher Codierung die Inhalte eingelesen werden ...

  • Derzeitige Lage

    @funkygog:

    Ich weiß gar nicht wo ich anfangen soll.^^ Ich starte einfach mal mit meinen Fragen, ... und weise darauf hin, dass meine php Kenntnisse sehr beschränkt sind. :(

    1. Die 3 Schritte sind von der Basic her gut nachvollziehbar.
    2. Ich weiß nur nicht so recht was mit den Templates anzufangen. Beide wurden entsprechend umbenannt, sowie die Katerogie Zahl angepasst udn hochgeladen. Meine Frage! Was mach ich jetzt damit? Ich mein mir ist bewusst das ich ein Archiv erstellen muss aus dem später die Beträge kommen. Ich muss die beiden php Seiten ja jetzt irgendwie einbinden oder so.
    3. Kann ich die Code's zum Verlinken nicht nachvollziehen. Ich mein wohin gehen die?

    Ich hoffe ich stell nicht all zu blöde Fragen, aber wie geschrieben meine Kenntnisse sind minimal. Auch wenn ich schon viel auf meinen/ unseren Blog hinbekommen hab. + + Kabelblume - Das Online-Fanzine für Popkultur + +

    @
    pufaxx:

    Ich habs entpackt, hochgeladen und einen der drei Links eingefügt. Doch es steht nur der Linkbefehl da. Was hab ich falsch gemacht? Muss ich im Plugin noch was umschreiben?

    Ich hoffe ihr könnt mir weiterhelfen. :confused:


  • Hallo smexstar,

    Du musst zunächst eine Seite anlegen und der dann das Template zuweisen.
    Die Templates sind in der rechten Spalte gelistet. Da suchst Du dann das A-Z raus.

    Werde heute Abend nochmal den Beitrag in meinem Blog daraufhin erweitern.
    Schönen Gruß
    Gorden

    funkygog Blog | Chicago House

    Einmal editiert, zuletzt von funkygog (21. Januar 2009 um 11:37)

  • smexstar:

    Ich glaub, Du hast gar nichts falsch gemacht, sondern ich ... probier mal >>DIESE Version ...?


    EDIT

    Nee, Quatsch, dass ist Blödsinn. Bevor ich x neue Versionen online stelle ... Lieber Fehlersuche anders ... Probier mal auf der Seite, wo der Index auftauchen soll ... Folgendes zu schreiben

    Code
    <p>{AlphaIndex}</p>
    <p>{AlphaIndexNavi}</p>

    Das Problem liegt daran, dass ich versucht hab ... Naja, WordPress macht ja eigenständig Absätze. Und ich hab versucht, das auszugleichen so dass da nachher nicht <p><p> und <p><h4> oder sowas rauskommt. Hat nur nicht wirklich geklappt ... Und ich merk auch grad - bei WordPress 2.2 mit unveränderter wpautop-Funktion müssen jetzt tatächlich Absatzmarken um den Index stehen, sonst wird der Platzhalter gar nicht ersetzt.

    Aber wenn Du das aufschreibst wie oben, müsste es klappen ...

    Nein, das ist keine Brille, das sind Augenränder!

    Print- und Webdesign

    Einmal editiert, zuletzt von pufaxx (24. Mai 2007 um 12:24)

  • Oha

    @ pufaxx:

    klappt jetzt wunderbar. nur zeigt er mit in der auflistung auch bereits gelöschte beträge und statische seiten an. wie verhinder ich das?

    @ funkygog:

    ich setz mich nachher nochmal ran und probiers. =)
    freu mich auf ein update deiner anleitung.

    euch beiden schonmal einen dickes danke schön! :)


  • Das wundert mich... Im PlugIn steht eindeutig drin:

    Code
    WHERE (post_status = 'publish' OR post_status = 'static' AND post_password ='')";

    Da fällt mir als "Fehlerquelle" nur ein nicht aktualisierter Cache ein. Das sollte eigentlich in den Zeilen

    Code
    add_action('publish_page', 'wp_cache_flush');
    add_action('publish_post', 'wp_cache_flush');
    add_action('edit_post', 'wp_cache_flush');
    add_action('delete_post', 'wp_cache_flush');
    add_action('save_post', 'wp_cache_flush');
    add_action('private_to_published', 'wp_cache_flush');

    geregelt sein.

    Ich hatte gehofft, damit alle "Änderungen" abgedekct zu haben. Dank Dir jedenfalls für den Hinweis ... Kannst Du mal bitte (und jetzt müsste es klappen)

    a) die Version 0.2b vom AlphaIndex installieren
    b) entweder Deinen Ordner "wp-content/cache" löschen (sofern vorhanden) oder aber (ist praktischer) dieses PlugIn installieren?

    Mit dem WP CacheInspect kannst Du den Cache nämlich per Knopfdruck löschen und muss nicht über FTP reingehen.

    .
    .
    .

    Schiet - Wahrscheinlich noch ein Dateifitzel von der Version für WordPress unterhalb von 2.1 ...

    Lösch mal das hier raus:

    Code
    OR post_status = 'static'

    *grübel*

    Ja, das kann schuld sein. Jetzt werden ja alle "veröffentlichten" Beiträge und Seiten gezeigt - Zusätzlich auch noch alle, die "static" sind. Das könnten dann auch unveröffentlichte Dinger (Seiten, nicht Postings) sein ...?

    Was für eine WordPress-Version läuft denn bei Dir?

    .
    .
    .

    Auf jeden Fall schon mal dicken Dank für's Testen. Man selbst hat ja nicht immer die Möglichkeit (oder es ist ein ziemlicher Aufstand) ALLE Kombinationen miteinander durchzuspielen ... Da verlass ich mich eben auf die Mitarbeit derjenigen, die meinen Kram haben wollen.

    :-)

  • Ach ja - Falls Du Fehler gefunden hast und so - Kannst Du mir das bitte lieber als "Kommentar" zu meinem Blog-Beitrag schreiben? Ich hab die ganzen Infos lieber "auf einem Haufen".

    Ist nicht nur für mich praktischer, sondern vermutlich auch für die Leute, die sich eine der Beta-Versionen runtergeladen haben und bei denen irgendetwas auch noch nicht so recht funktionieren mag ...

    Thank U

    :-)

  • Ich habe jetzt den Code:

    PHP
    OR post_status = 'static'

    gelöscht. Es sind somit gelöschte und geschützte Bereiche aus dem Index verschwunden.

    Leider noch nicht die statischen Seiten. Gibt es da eine Lösung?

    Übrigens ich habe die Wordpressversion 2.1.2.

    Aber soweit ein dickes THX. Ist soweit schon echt geilo. :mrgreen:


  • Ach so!

    Also die statischen Seiten SOLLTEN auch mit gelistet werden. Ich hab die Geschichte ursprünglich auch für Auftritte gebastelt, die vorwiegend aus "Seiten" bestehen und eventuell irgendwo einen Blog-Bereich mit "Beiträgen" haben. Wie z.B. auf meiner Seite ... (Da verwende ich auch hauptsächlich "Pages", der Bereich "Tipps & Tricks" besteht aber aus "Beiträgen" ...)

    --> Der Status jetzt ist demnach für alphabetische Indizes, mit denen ALLE Inhalte sortiert werden sollen
    --> Wenn du nur deine Blog-Postings alphabetisch listen möchtest, dann muss die Zeile (ausgehend von Version 0.2b) 36 bis 40 entsprechend angepasst werden.

    WordPress (ab >2.1) unterscheidet zwischen Seiten und Postings durch den Eintrag im Feld "post_type".

    --> Probier mal ...

    Code
    $sql = 	"SELECT post_title, ID
    		FROM $wpdb->posts
    		WHERE (post_status = 'publish'
    		AND post_type = 'post'
    		AND post_password ='')"

    Damit fällt alles mit dem post_type = 'page' raus.

    Jetzt frag ich mich nur, warum Du das so haben willst ... Wenn die Pages mit gelistet werden, findet man z.B. das Impressum unter "I" und "Kontakt" unter "K" und so weiter ...?

    :-)

    Najut, aber wäre auf jeden Fall schon mal ein "ToDo" für das (in Arbeit befindliche) Admin-Menü, dass man sich da halt ein bisschen näher aussuchen kann, was alles im Index berücksichtigt werden soll.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!