it-swarm.xyz

Реализация клона CrunchBase.com с использованием WordPress?

Я хотел бы создать что-то вроде CrunchBase.com с WordPress.org (так, чтобы иметь один веб-сайт, который является "базой данных", и другой, который является блогом, который подключается к нему) ,.

Является ли это возможным? и как?

Спасибо тал

20
Tal Galili

@Tal Gailili : Абсолютно, WordPress была бы отличной платформой для клона CrunchBase!

Использовать пользовательский тип записи и пользовательские таксономии

То, на что вы хотите взглянуть, это Пользовательские типы записей и Пользовательские таксономии [см. этот ответ Я дал очень похожую тему].

Пример кода для типа вашей компании и таксономии

В WordPress 3.0 вы можете создать настраиваемый тип публикации company, а затем одну или несколько пользовательских таксономий, таких как категория, финансирование и статус. Чтобы загрузить свои усилия, вот код, который вы можете зайти в файл functions.php вашей темы, чтобы начать:

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' ),
    )
);

Другие типы сообщений, которые вы можете захотеть:

Если вы действительно хотите клонировать CrunchBase, вы захотите создать собственные типы записей для каждого из них (хотя, я думаю, вы хотите что-то похожее, но для другого рынка?):

  • Люди
  • Финансовые организации
  • Поставщики услуг
  • Финансирование раундов
  • Приобретения

Страница листинга компании

Для страницы со списком вашей компании (например, этой на CrunchBase) я бы, вероятно, создал WordPress " Page " named "Companies" (представьте себе!), а затем используйте плагин для шорткода списка записей, например Список страниц шорткода (если вы его используете, вам нужно будет сделать однострочную модификацию для поддержки пользовательских типов постов, как я показываю здесь ).

С этим плагином и модификацией вы можете добавить следующий текст на страницу "Companies", и он перечислит все компании в маркированном списке на этой странице, который вы можете стилизовать с помощью CSS:

[list-pages post_type="company"]

Специфические макеты компании

Затем для пользовательского макета для каждой компании вы можете сделать копию файла шаблона темы single.php, назвать его single-company.php и внести любые необходимые изменения в макет.

Пользователь Компания Представления

И если вы хотите, чтобы люди отправляли компании, рассмотрите возможность использования Gravity Forms (not партнерская ссылка; 39 долларов США за лицензию на сайт и стоит каждого пенни.)

Если вам нужно больше ...

Я уверен, что есть еще кое-что, но это даст вам основную функциональность, которая вам нужна. Если вам нужно больше, задайте еще один вопрос здесь, на WordPress Ответы!

Надеюсь, это помогло.

31
MikeSchinkel

Нет никаких причин, по которым это невозможно сделать, используя пользовательские типы записей и соответствующие шаблоны, чтобы сделать его подходящим ... но это ПРАВИЛЬНЫЙ способ сделать это - другой вопрос.

CrunchBase.com в данный момент не работает, поэтому я не могу сделать правильную оценку, но из того, что я помню, было бы лучше использовать блог WordPress + пользовательский плагин для обработки записей в базе данных, вроде как как плагин электронной коммерции работает для WP. Храните базу данных о компании, которая хранится и управляется с помощью плагина, который также позволяет встраивать соответствующую информацию в сообщения блога с помощью функции из плагина.

3
Callan

Однако ..... если вы думаете, что использовать другую базу данных проще, потому что вы, например, синхронизировать это ежедневно с другими источниками, уже иметь весь код отчетности, использовать эту базу данных для множества других источников, подготовиться к будущему, когда вы захотите использовать эту базу данных в других проектах для синхронизации, добавьте данные из другого приложения, и т. д. Хитрость заключается в переключении баз данных:

//
// 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');

затем сделайте свое дело, запустите все запросы/внешние файлы php, генерирующие отчеты и т. д., а затем переключитесь обратно в базу данных WP:

mysql_select_db(WPDB_DATABASE, $mysql_link_edl);
2
edelwater