Ich möchte etwas wie CrunchBase.com mit WordPress.org erstellen (also eine Website, die eine “database” ist, und eine andere, die ein Blog ist, der sich mit ihr verbindet).
Ist es möglich? und wie?
Danke, Tal
@Tal Gailili : Absolut , WordPress wäre eine großartige Plattform für einen CrunchBase-Klon!
Was Sie sehen möchten, sind benutzerdefinierte Post-Typen und benutzerdefinierte Taxonomien [siehe diese Antwort, die ich zu einem sehr ähnlichen Thema gegeben habe].
Mit WordPress 3.0 können Sie einen company
Post-Typ und dann eine oder mehrere benutzerdefinierte Taxonomien erstellen, die für das Unternehmen gelten, z. B. Kategorie, Finanzierung und Status. Um deine Bemühungen hier zu booten, kannst du dich in die functions.php
Datei deines Themes begeben, um loszulegen:
register_post_type('company', array( 'label' => __('Companies'), 'public' => true, 'show_ui' => true, 'query_var' => 'company', 'rewrite' => array('slug' => 'companies'), 'hierarchical' => true, 'supports' => array( 'title', 'page-attributes', 'excerpts', 'thumbnail', 'custom-fields', 'editor', ), ) ); register_taxonomy('company-category', 'company', array( 'hierarchical' => true, 'label' => __('Categories'), 'query_var' => 'company-category', 'rewrite' => array('slug' => 'categories' ), ) ); register_taxonomy('company-status', 'company', array( 'hierarchical' => true, 'label' => __('Status'), 'query_var' => 'company-status', 'rewrite' => array('slug' => 'status' ), ) ); register_taxonomy('company-funding', 'company', array( 'hierarchical' => true, 'label' => __('Funding'), 'query_var' => 'company-funding', 'rewrite' => array('slug' => 'funding' ), ) );
Wenn du CrunchBase wirklich klonen willst, dann solltest du für jeden von ihnen benutzerdefinierte Post-Typen erstellen (obwohl ich vermute, dass du etwas ähnliches willst, aber für einen anderen Markt?):
Für die Listing-Seite Ihres Unternehmens (wie diese auf CrunchBase) würde ich wahrscheinlich eine WordPress ” Seite ” namens ” Companies ” erstellen ( sich das vorstellen! ) Und dann ein Post List Shortcode Plugin wie List Pages Shortcode verwenden (wenn Sie diesen verwenden) muss eine einzeilige Änderung machen, um benutzerdefinierte Beitragstypen zu unterstützen, wie ich hier zeige.)
Mit diesem Plugin und der Modifikation können Sie den folgenden Text zu Ihrer ” Firmen ” Seite hinzufügen und es werden alle Firmen in einer Aufzählungsliste auf dieser Seite aufgeführt, die Sie mit CSS gestalten können:
[list-pages post_type="company"]
Dann können Sie für jedes Unternehmen ein eigenes Layout erstellen, single.php
Sie eine Kopie der Template-Datei single.php
und sie single-company.php
single.php
und dort die single.php
Änderungen vornehmen.
Und wenn Sie möchten, dass die Leute Unternehmen dazu überreden , Gravity Forms zu verwenden ( kein Affiliate-Link; US $ 39 pro Site-Lizenz und jeden Cent wert).
Ich bin mir sicher, dass Sie mehr von den grundlegenden functionen erhalten, die Sie benötigen. Wenn Sie mehr brauchen, stellen Sie eine andere Frage hier auf WordPress Antworten!
Hoffe das hat geholfen.
Es gibt keinen Grund, warum es nicht möglich ist, indem man benutzerdefinierte Post-Typen und das passende Template verwendet, um es zu einem passenden Produkt zu machen … aber ob es der richtige Weg ist, es zu tun, ist eine andere Sache.
CrunchBase.com ist im Moment down, so dass ich keine richtige Bewertung machen kann, aber von dem, woran ich mich erinnere, wäre es besser dafür geeignet, ein WordPress-Blog + benutzerdefiniertes Plugin zu sein, um die databaseeinträge sortieren zu können wie ein E-Commerce-Plugin für WP funktioniert. Bewahren Sie die database mit Unternehmensinformationen auf, die über ein Plugin gespeichert und verwaltet werden. Mit dieser function können Sie relevante Informationen mithilfe einer function aus dem Plugin in Blogposts einbetten.
Jedoch ….. wenn Sie denken, dass die Verwendung einer anderen database einfacher ist, weil Sie zB diese täglich mit anderen Quellen synchronisieren, haben Sie bereits den gesamten Reporting-Code, verwenden Sie diese database für viele andere Quellen, bereiten Sie sich für die Zukunft vor Ich möchte diese database in anderen Projekten verwenden, um sie zu synchronisieren, sie fügen die Daten aus einer anderen Anwendung hinzu, usw. Der Trick besteht darin, die databaseen zu wechseln:
// // Connect to the other database // $mysql_link_edl = mysql_connect($db_host, $db_user, $db_pwd) or die (mysql_error() . 'Error connecting to mysql'); mysql_select_db($db_db, $mysql_link_edl) or die (mysql_error() . 'problem connecting with database');
dann mach dein Zeug, führe alle Abfragen / externen PHP-Dateien aus, erzeuge Berichte usw. und wechsle dann zurück zur WP-database:
mysql_select_db(WPDB_DATABASE, $mysql_link_edl);