Verwenden Sie Plugin oder benutzerdefinierten Post-Typ für Spiel-Score-functionalität

In den letzten paar Tagen habe ich an einem Plug-in gearbeitet, das die functionen zum Speichern von Partituren aus einem Paintball-Spiel hinzufügt. Wenn es mir gelingt, es zu beenden, möchte ich den Spielern ein Formular präsentieren, damit sie Dinge hinzufügen können wie: Treffer, Todesfälle, Gewinne, Verluste, Standort, Rolle und Datum.

Das geht zu einer benutzerdefinierten Tabelle in der WP-database.

Sie erhalten auch eine Profilseite, die die letzten 5 Datensätze, Gewinn / Verlust-Verhältnis und dergleichen zeigt.

Der Admin hat auch ein Menü, das diese Tabelle anzeigt, und sollte in der Lage sein, das Datum zu manipulieren (bei Missbrauch).

Ich bin weiter mit dem Plugin dann habe ich gedacht. Der Admin-Bildschirm ist vorhanden und lädt die Informationen aus der Tabelle (sortiert einige Spalten). Aber ich habe noch nicht die Bearbeitungs- oder Löschfunktion, um zu funktionieren.

Was mich zum Nachdenken gebracht hat. Ich habe vorher mit benutzerdefinierten Beitragstypen gearbeitet. Wäre es nicht einfacher, dieses Plug-In für einen benutzerdefinierten Post-Typ zu erstellen? Können Benutzer Daten vom Front-End aus an sie senden? Kann ich die Daten abfragen und ein wenig Mathematik damit machen? Administratoren können die Daten relativ einfach mit einem benutzerdefinierten Beitragstyp ändern, wenn ich mich nicht irre.

Einzige Nachteile, an die ich jetzt denken kann, sind Themenprobleme. Ich denke, es ist einfacher, die Daten aus der benutzerdefinierten Tabelle mit einem Plug-in über kurze Codes anzuzeigen und benutzerdefinierte Beiträge in ein Thema zu integrieren.

Kann ich einen Kurzcode für den benutzerdefinierten Posttyp erstellen?

Also sollte ich den Plug-in-Weg fallen lassen und für einen benutzerdefinierten Post-Typ gehen? Ich würde gerne in der Lage sein, dieses Plug-In irgendwann zu teilen, also wenn ich mit dem benutzerdefinierten Typ gehe, werde ich wahrscheinlich am Ende ein Plug-in machen, das den benutzerdefinierten Post-Typ aktiviert.

Solutions Collecting From Web of "Verwenden Sie Plugin oder benutzerdefinierten Post-Typ für Spiel-Score-functionalität"

Die posts und post_meta Tabellen sind für regelmäßige Blogposts und ähnliche Inhalte post_meta . Schau dir das Schema an und frage dich: Brauche ich diese Felder?

 CREATE TABLE $wpdb->posts ( ID bigint(20) unsigned NOT NULL auto_increment, post_author bigint(20) unsigned NOT NULL default '0', post_date datetime NOT NULL default '0000-00-00 00:00:00', post_date_gmt datetime NOT NULL default '0000-00-00 00:00:00', post_content longtext NOT NULL, post_title text NOT NULL, post_excerpt text NOT NULL, post_status varchar(20) NOT NULL default 'publish', comment_status varchar(20) NOT NULL default 'open', ping_status varchar(20) NOT NULL default 'open', post_password varchar(20) NOT NULL default '', post_name varchar(200) NOT NULL default '', to_ping text NOT NULL, pinged text NOT NULL, post_modified datetime NOT NULL default '0000-00-00 00:00:00', post_modified_gmt datetime NOT NULL default '0000-00-00 00:00:00', post_content_filtered longtext NOT NULL, post_parent bigint(20) unsigned NOT NULL default '0', guid varchar(255) NOT NULL default '', menu_order int(11) NOT NULL default '0', post_type varchar(20) NOT NULL default 'post', post_mime_type varchar(100) NOT NULL default '', comment_count bigint(20) NOT NULL default '0', PRIMARY KEY (ID), KEY post_name (post_name), KEY type_status_date (post_type,post_status,post_date,ID), KEY post_parent (post_parent), KEY post_author (post_author) ) 

Das Erstellen eines benutzerdefinierten Formulars für Ihre benutzerdefinierte Tabelle ist fast identisch mit dem Erstellen eines benutzerdefinierten Formulars für einen benutzerdefinierten Posttyp. Aber in Ihrer eigenen Tabelle können Sie nur die Felder verwenden, die Sie benötigen, Sie können sogar eine andere DB-Engine und PDO verwenden, wenn Sie möchten.

Außerdem funktionieren benutzerdefinierte Post-Typen nicht in einem Netzwerk mit mehreren Standorten. Sie können von schlecht geschriebenen Plugins betroffen sein (einige aktivieren ihre Metaboxen oder Taxonomien für alle öffentlichen Post-Typen).

Die Tabellen, die Sie verwenden, sollten zu Ihrem Datenmodell passen und nicht umgekehrt.