Einen CrunchBase.com-Klon mit WordPress implementieren?

20

Ich möchte so etwas wie CrunchBase.com mit WordPress.org erstellen (also eine Website, die eine "Datenbank" ist, und eine andere, die ein Blog ist, das eine Verbindung dazu herstellt).

Ist es möglich? und wie?

Danke, Tal

Tal Galili
quelle

Antworten:

31

@Tal Gailili : Absolut würde Wordpress eine großartige Plattform für einen Klon seiner Crunchbase!

Verwenden Sie den benutzerdefinierten Beitragstyp und die benutzerdefinierten Taxonomien

Was Sie sich ansehen möchten, sind benutzerdefinierte Beitragstypen und benutzerdefinierte Taxonomien [siehe diese Antwort, die ich zu einem sehr ähnlichen Thema gegeben habe].

Beispielcode für den Post-Typ und die Taxonomien Ihres Unternehmens

Mit WordPress 3.0 können Sie einen companybenutzerdefinierten Beitragstyp und dann eine oder mehrere benutzerdefinierte Taxonomien erstellen , die für das Unternehmen gelten, z. B. Kategorie, Finanzierung und Status. Um Ihre Bemühungen im folgenden Code zu beschleunigen, können Sie die functions.phpDatei Ihres Themas aufrufen, 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' ),
    )
);

Andere Post-Typen, die Sie vielleicht wollen:

Wenn Sie CrunchBase wirklich klonen möchten, möchten Sie für jeden dieser Typen einen benutzerdefinierten Beitrag erstellen (obwohl ich denke, Sie möchten etwas Ähnliches, aber für einen anderen Markt?):

  • Menschen
  • Finanzielle Organisationen
  • Dienstleister
  • Finanzierungsrunden
  • Akquisitionen

Unternehmensliste

Für die Listingseite Ihres Unternehmens (wie diese auf CrunchBase) würde ich wahrscheinlich eine WordPress " Page " mit dem Namen " Companies " erstellen ( stellen Sie sich das vor! ) Und dann ein Post- List-Shortcode- Plugin wie List Pages Shortcode verwenden (wenn Sie diesen verwenden) müssen eine einzeilige Änderung vornehmen, um benutzerdefinierte Beitragstypen wie die hier gezeigten zu unterstützen .)

Mit diesem Plugin und dieser Modifikation können Sie der Seite " Firmen " den folgenden Text hinzufügen, und es werden alle Firmen in einer Aufzählung auf dieser Seite aufgelistet, die Sie mit CSS gestalten können:

[list-pages post_type="company"]

Firmenspezifische Layouts

Dann können Sie für ein benutzerdefiniertes Layout für jede Firma eine Kopie der Designvorlagendatei erstellen single.phpund benennen single-company.phpund dort die gewünschten Änderungen am Layout vornehmen.

Einsendungen von Benutzerunternehmen

Und wenn Sie zulassen möchten, dass andere Unternehmen Gravity Forms-Formulare einreichen ( kein Affiliate-Link; 39 US-Dollar pro Site-Lizenz und jeden Cent wert).

Wenn Sie mehr brauchen ...

Ich bin mir sicher, dass es noch mehr gibt, aber damit erhalten Sie die meisten grundlegenden Funktionen, die Sie benötigen. Wenn Sie mehr brauchen, stellen Sie eine andere Frage hier auf WordPress Answers!

Hoffe das hat geholfen.

MikeSchinkel
quelle
Wow - was für eine tolle Antwort!
Tal Galili
Makelloser Sieg. Dies sollte als Beispiel dafür dienen, wie hier Antworten gegeben werden sollten.
Callan
Hallo @MikeSchinkel, ich bin an der Verwendung von Gravity Forms interessiert. Ermöglicht es Benutzern jedoch, Unternehmen direkt zur Genehmigung durch einen Administrator in die Wordpress-Datenbank einzureichen, oder ist dies das Gleiche wie das Erstellen eines Formulars, mit dem die Daten an eine E-Mail-Adresse gesendet werden? Ich suche nach Möglichkeiten, den Prozess für Administratoren zu rationalisieren, um Unternehmen hinzuzufügen. Vielen Dank für Ihre Zeit, Osu
Osu
3

Es gibt keinen Grund, warum dies nicht möglich ist. Verwenden Sie benutzerdefinierte Post-Typen und das entsprechende Template, um es anzupassen. Ob dies jedoch die RICHTIGE Methode ist, ist eine andere Frage.

CrunchBase.com ist im Moment nicht verfügbar, daher kann ich keine ordnungsgemäße Bewertung vornehmen. Soweit ich mich erinnere, ist es jedoch besser geeignet, ein WordPress-Blog und ein benutzerdefiniertes Plugin zu sein, um mit den Datenbankeinträgen umzugehen Wie funktioniert ein E-Commerce-Plugin für WP? Halten Sie die Datenbank mit Unternehmensinformationen über ein Plugin gespeichert und verwaltet, mit dem Sie auch relevante Informationen in Blog-Posts einbetten können, indem Sie eine Funktion aus dem Plugin verwenden.

Callan
quelle
2

Wenn Sie jedoch der Meinung sind, dass die Verwendung einer anderen Datenbank einfacher ist, weil Sie diese beispielsweise täglich mit anderen Quellen synchronisieren, bereits den gesamten Berichtscode haben, diese Datenbank für viele andere Quellen verwenden und sich auf die Zukunft vorbereiten, wenn Sie dies möchten Sie möchten diese Datenbank in anderen Projekten zum Synchronisieren verwenden, fügen die Daten aus einer anderen Anwendung usw. hinzu. Der Trick besteht darin, die Datenbank 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 erledigen Sie Ihre Aufgaben, führen alle Abfragen / externen PHP-Dateien aus, die Berichte erstellen, usw. und wechseln dann zurück zur WP-Datenbank:

mysql_select_db(WPDB_DATABASE, $mysql_link_edl);
Edelwasser
quelle