Реализация CrunchBase.com Клонировать с помощью WordPress?
Я хочу создать что-то вроде CrunchBase.com с WordPress.org (Таким образом, чтобы иметь один веб-сайт, который является "базой данных", и другой, который является блогом, который подключается к нему).
Возможно ли это? и как?
Спасибо, Тал
3 answers
@ Тал Гайлили: Абсолютно, 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 " Страница" называемые "Компании" ( представьте себе это!), а затем используйте плагин шорткода списка сообщений, такой как Шорткод страниц списка (если вы используете его, вам нужно будет внести однострочную модификацию в поддержка пользовательских типов сообщений, таких как я показываю здесь.)
С помощью этого плагина и модификации вы можете добавить следующий текст на свою страницу "Компании", и на этой странице будут перечислены все компании в маркированном списке, который вы можете оформить с помощью CSS:
[list-pages post_type="company"]
Макеты, специфичные для компании
Затем для пользовательского макета для каждой компании вы можете сделать копию файла шаблона темы single.php
и назвать его single-company.php
и внести любые изменения в макет, которые вы хотите там.
Материалы Компании-пользователя
И если вы хотите, чтобы люди представляли компании, рассмотрите возможность использования Гравитационных форм ( не партнерская ссылка; 39 долларов США за лицензию на сайт и стоит каждого пенни.)
Если вам нужно больше...
Я уверен, что есть еще кое-что, но это даст вам большую часть необходимой вам базовой функциональности. Если вам нужно больше, задайте еще один вопрос здесь, на WordPress Ответы!
Надеюсь, это помогло.
Нет причин, по которым это невозможно сделать, используя пользовательские типы записей и соответствующие шаблоны, чтобы сделать это подходящим... но правильно ли это делать - это другой вопрос.
CrunchBase.com в данный момент не работает, поэтому я не могу провести надлежащую оценку, но из того, что я помню об этом, было бы лучше, если бы это был блог WordPress + пользовательский плагин для обработки записей базы данных, вроде того, как плагин электронной коммерции работает для WP. Храните базу данных информации о компании и управляется с помощью плагина, который также позволяет вставлять соответствующую информацию в сообщения блога с помощью функции плагина.
Однако..... если вы считаете, что использовать другую базу данных проще, потому что вы, например, синхронизируете ее ежедневно с другими источниками, у вас уже есть весь код отчетности, используйте эту базу данных для множества других источников, готовьтесь к будущему, когда вы захотите использовать эту базу данных в других проектах для синхронизации, добавляете данные из другого приложения и т. Д.... Хитрость заключается в переключении баз данных:
//
// 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);