1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

Datatables.js hinzufügen

Dieses Thema im Forum "Design" wurde erstellt von krombes, 26. April 2018.

Schlagworte:
  1. krombes

    krombes Active Member

    Registriert seit:
    12. Januar 2009
    Beiträge:
    29
    Zustimmungen:
    0
    Hallo, ich würde gerne DataTables.js meinem Template hinzufügen. Wie mache ich das am Besten? Folgenden Code habe ich schon im Headbereich angegeben, doch scheint das nicht sauber zu laufen.
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Nun habe ich gelesen, es wäre sinvoller dies über die functions.php zu realisieren.
    In der functions.php des Unterstrap Templates welches icbenutze, steht folgendes.

    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    In dieser enqueue.php Datei finde ich dann folgendes.

    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Ich habe nun die 4 Dateien von Datatable in den Ordnern /js/ und /css/ liegen. Ist dann folgender Zusatz richtig?

    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
  2. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.685
    Zustimmungen:
    1.786
    1. bloginfo('template_url') verwendet man nicht mehr, besser get_template_directory_uri() für einen Link zum Parent Theme Ordner oder get_stylesheet_directory_uri() für einen Link zum Child-Theme Ordner.

    2. Die Variable $theme_version ist nirgends definiert.

    3. Statt der Zeile wp_enqueue_script( 'jquery'); setze die korrekte Abhängigkeit in das leere array(), also array( 'jquery' )

    4. Hier ist ein Hochkomma zu viel: add_action(''wp_enqueue_scripts', 'my_styles');
     
  3. krombes

    krombes Active Member

    Registriert seit:
    12. Januar 2009
    Beiträge:
    29
    Zustimmungen:
    0
    Habe nun eine andere Anleitung gefunden. Ist es so besser?
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
  4. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.685
    Zustimmungen:
    1.786
    1.0 bei wp_enqueue_style() sollte '1.0' heissen.

    Generell: Nicht einfach blind Anleitungen kopieren, sondern wenigstens versuchen, das zu verstehen, was man da kopiert.. :rolleyes:
     
  5. krombes

    krombes Active Member

    Registriert seit:
    12. Januar 2009
    Beiträge:
    29
    Zustimmungen:
    0
    Dank dir. Ich versuche es ja zu verstehen, doch das Thema ist für mich noch sehr komplex. Habe zwar HTML Kentnisse, doch bei PHP komme ich schnell an meine Grenzen. Mir ist es aufgefallen, doch bei allen css Beispielen hat der Author es ohne Hochkommas geschrieben. Darum dachte ich das wird wohl so stimmen.
    https://conversion-junkies.de/programmierung/javascript-und-css-dateien-richtig-in-wordpress-einbinden/#Einbinden_von_JS_und_CSS_Dateien_per_Funktion

    Irgendwie funktoniert es auch nicht. Da scheinen wohl noch andere Fehler vorzuliegen. Habe der Tabelle die entsprechende ID für Datatable gegeben, den Code der Page hinzugefügt und nun sollte die Tabelle sortierbar und filterbar sein. Ist sie aber nicht. Über die Console vom Firefox erhalte ich nun einen Fehler.
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Und der befindet sich genau an der Stelle, in der ich folgenden Code von Datatable eingefügt habe.

    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Jetzt muss ich herausfinden, was den Fehler auslöst.

    Vielleicht kennt auch jemand eine einfachere Lösung. Ich möchte eigentlich nur eine sortierbare und filterbare Tabelle für meine Rezepte (Post Type) ausgeben.
     
  6. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.685
    Zustimmungen:
    1.786
    Stimmt aber nicht, kann man in der Doku sehen, die Version ist ein String (also mit ' Zeichen aussenrum) oder true/false oder null.

    Zum restlichen Code, ersetze mal
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    durch
    Code:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
     
    #6 b3317133, 26. April 2018
    Zuletzt bearbeitet: 26. April 2018
  7. krombes

    krombes Active Member

    Registriert seit:
    12. Januar 2009
    Beiträge:
    29
    Zustimmungen:
    0
  8. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.685
    Zustimmungen:
    1.786
    Deutet darauf hin, dass das datatables.min.js ggf.nicht eingebunden bzw. geladen wurde, ohne Link zur Seite schwer zu sagen.
     
  9. krombes

    krombes Active Member

    Registriert seit:
    12. Januar 2009
    Beiträge:
    29
    Zustimmungen:
    0
  10. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.685
    Zustimmungen:
    1.786
    Wie vermutet wird die Datei datatables.min.js nicht eingebunden, das sieht man im HTML-Quelltext der Seite, und den Grund sieht man dann auch beim zweiten Blick auf den o.g. Code bzgl. des Scripts, da steht add_action( 'enqueue_scripts' statt add_action( 'wp_enqueue_scripts'

    Wie gesagt, man sollte zumindest versuchen, zu verstehen, was man kopiert...

    Am Rande bemerkt, hat nichts mit dem enqeue zu tun, der Code von Datatable befindet sich zu weit unten, erst nach </body>, wie hast Du den da hingesetzt? Den könnte man besser in einer wp_footer Action ausgeben.

    Ergänzung aus aktuellem Anlass: Wild rumprobieren bringt eher nie was, beachte #6 und gib den Code von Datatable via wp_footer Action aus, dann wärst Du fertig.
     
    #10 b3317133, 26. April 2018
    Zuletzt bearbeitet: 26. April 2018
  11. krombes

    krombes Active Member

    Registriert seit:
    12. Januar 2009
    Beiträge:
    29
    Zustimmungen:
    0
    Nun funktioniert es. Der Code befand sich am Ende, der template Datei unter dem Teil wo der Footer geladen wird. Nun ist es über der Tabelle. Ist das richtig so? Was mir nun aber gleich auffällt, ich kann nicht nach Bewertungen sortieren. Das nächste Problem. :(
     
    #11 krombes, 26. April 2018
    Zuletzt bearbeitet: 26. April 2018
  12. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.685
    Zustimmungen:
    1.786
    Hier im Forum geht es vorrangig um WordPress, und die Einbindung der Style- und Script-Dateien und die Anpassung und Ausgabe des entspr. Codes von Datatables funktionieren jetzt. Für weitere Konfiguration lies am besten die Datatables Dokumentation oder wende Dich an das Datatables-Forum.
     
  13. krombes

    krombes Active Member

    Registriert seit:
    12. Januar 2009
    Beiträge:
    29
    Zustimmungen:
    0
    Ich danke dir für deine Hilfe. In der Dokumentation lese ich schon.
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden