hi,
in der datenbank gibts es ja eine spalte post_name. wo finde ich denn den codeschnipsel, wie dieser name erzeugt wird?
Um schreiben oder kommentieren zu können, benötigen Sie ein Benutzerkonto.
Sie haben schon ein Benutzerkonto? Melden Sie sich hier an.
Jetzt anmeldenHier können Sie ein neues Benutzerkonto erstellen.
Neues Benutzerkonto erstellenhi,
in der datenbank gibts es ja eine spalte post_name. wo finde ich denn den codeschnipsel, wie dieser name erzeugt wird?
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.
Schau mal unter wp_includes/functions-post.php....
Da findest Du u.a.
if ( empty($post_name) ) {
if ( 'draft' != $post_status )
$post_name = sanitize_title($post_title);
} else {
$post_name = sanitize_title($post_name);
Wenn Du also selbst keinen Post-Namen (im deutschen Wordpress im Feld "Titelform") beim Posten vorgibst, wird der Titel des Posts verwendet, bereinigt um bestimmte Sonderzeichen.
Dazu kannst Du Dir ja die Funktion sanitize_title mal näher ansehen.
ciao, Mario
hi,
die funktion habe ich mir angesehen, aber dort stehen nur ein paar zeilen drin mit anderen funktionen und irgendwie steig ich da nicht dahinter wo nun genau der prozess des umwandels passiert.
eigentlich wollte ich mir nur mal ansehen wie das hier gemacht ist, da ja dieser name in der url verwendet wird, aber es wird wol so sein, das alle sonderzeichen und leerzeichen einfach nur ersetzt werden
Naja, so kompliziert ist's wirklich nicht....
Also, in der Funktion "sanitize_title" werden ja zwei Funktionen aufgerufen:
In der o.g. Funktion finden dann die eigentlichen Ersetzungen statt...
ciao, Mario
danke. ist schon so wie ich es mir gedacht habe .-)
aber über die funktion apply_filters zu der letztgenannten zu kommen, ist für mich aus dem quelltext nicht grad ersichtlich
Ich füge aus einer anderen Anwendung alle Daten per SQL automatisch in wp_posts und wp_comments ein. Nun muß ich dafür (bisher) immer erst noch ins Backend von WP und die Kategorie auswählen und abspeichern, bevor die Kommentare im FE angezeigt werden. Jetzt habe ich in der Datenbank gesehen, dass durch die Änderung im BE das post_name Feld verändert wird. Vor der Änderung steht dort das von mir eingefügte ('kategorie1') und danach steht da: kategorie1-3. Das hab ich nun mit mehreren Einträgen gemacht. Es handelt sich um eine fortlaufende Nummer. Meine Frage ist jetzt: wie (welche/s Argument/Variable erstellt diese Nummer) und wo wird sie per SQL eingfügt (sprich wie sieht der SQL Befehl aus)?
Diese fehlt mir sozusagen
Keine Ahnung wo das herkommt und was du vorhast, aber post_name muss eindeutig sein (wegen Permalinks) das macht WP für dich indem es -ID ranhängt. Vielleicht solltest du das beachten!?
ok, danke für den Hinweis. Aber ich habe schon rausgefunden, das auch der Titel angefügt werden kann. Jetzt habe ich den Titel auch manuell mitgesetzt, aber trotzdem muß ich im Backend die Kategorie nochmal auswählen und speichern.
Ich werd mal weitermachen ...
Es ist wohl so, das in allen Tabellen die "post" enthalten die Artikel "mitgeführt" werden müssen, da werd ich mich dann jetzt mal ransetzten ...
gReEtS
[EDITH meint:]jau, hat funktioniert, jetzt wird die Kategorie automatisch eingefügt. Jetzt brauche ich es im BE nicht mehr manuell bearbeiten![/EDITH]
Wo wird denn post_name erstellt? Die Info könnte ich auch sehr gut gebrauchen, da ich einen doppelten Titel verhindern will...
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!