WordPress глубокая интеграция с (Zend) php проектом - PullRequest
1 голос
/ 17 января 2011

У нас есть большой проект, построенный на php 5.2 (мы используем Zend Framework), и мы хотели бы интегрировать wordpress с нашим работающим кодом, чтобы:

  • позволяют нашим пользователям публиковать статьи (сообщения в блогах в определенных категориях, с комментариями и всеми интересными функциями WordPress)
  • Используйте WordPress, чтобы создать простую функцию вопросов и ответов, используя коммерческую тему (из темплатской)

У нас нет проблем при интеграции простого блога WordPress с нашим кодом (http://stackoverflow.com/q/3796586/578670). Наша проблема в обоих случаях заключается в том, что нам нужна глубокая интеграция между WordPress и нашей иерархией классов:

  1. Единая регистрация с использованием наших методов аутентификации (мы отключим функции регистрации и входа в систему при установке WordPress)
  2. Используйте наши пользовательские данные в WordPress: имена пользователей, описания, аватары и другие данные профиля со ссылками на страницы профиля нашего сайта
  3. Отслеживание сообщений, комментариев и других действий пользователей с целью представления сводок на страницах их профилей, использования их в наших внутренних расчетах "рейтинга пользователей" и / или для значков и т. Д.
  4. Используйте наш собственный многофункциональный редактор для создания новых сообщений или встраивайте редактор Wordpress Rich на наш сайт (без остальных функций администратора)

Я искал, но я мог найти только простые решения для отображения сообщений или пользовательских данных, поэтому я был бы признателен за любую помощь, которую вы можете мне оказать.

1 Ответ

1 голос
/ 31 января 2011

Я сделал похожий проект некоторое время назад; насколько мне известно:

  1. Это трудно понять, не зная, как вы аутентифицируетесь. Как бы я это сделал, используя что-то вроде OpenID, чтобы вам не приходилось иметь дело с кучей паролей / дубликатов пользовательских записей, но, учитывая, что у вас есть устаревшие данные, проще всего было бы просто написать кусок кода, который постоянно обновляет таблицу пользователей WP данными из вашей Zend Framework. Если вам нужна дополнительная информация о том, как это сделать, пожалуйста, прокомментируйте, и я добавлю больше подробностей (вплоть до SQL-запроса, включенного в мой список и использовавшего его для импорта пользователей из собственной базы данных в WP с BuddyPress).

  2. Смотри выше. Если ваши пользовательские данные содержат больше полей, чем WP по умолчанию, рассмотрите возможность установки BuddyPress, чтобы разрешить настраиваемые поля профиля. Затем вы можете встроить поддержку для этого в скрипт-мост, упомянутый выше.

  3. BuddyPress может пригодиться для создания этих сводок (при условии, что все эти данные обрабатываются WP). Тем не менее, я не совсем уверен, как вы передадите эту статистику на сайт Zend - вам, вероятно, придется написать несколько ручных запросов по сбору статистики, которые выполняются при загрузке страницы статистики.

  4. Этот вопрос не имеет особого смысла - что вы имеете в виду, "без остальных функций администратора"? Если вы предоставляете пользователю полномочия «Автор» в WP, они могут использовать редактор сообщений, не имея доступа к каким-либо функциям администратора сайта. Просто правильно установите свои пользовательские роли и направьте людей в / wp-admin /? Почему вы хотите «встраивать» редакторов в другие места? Вероятно, вы можете написать плагин, который отображает ваш текстовый редактор RTF вместо стандартного интерфейса WP, но это не похоже на посты, которые пойдут в вашу Zend Framework; добавление редактора Wordpress на страницы Zend не приведет к их сохранению в WordPress - они будут просто отформатированы в формате HTML и сохранены в том же месте, что и раньше.

Хотя лично, если среда Zend не выполняет МНОГО действительно обширной, специализированной работы, я попытался бы воспроизвести все это в WP (поскольку вы все равно будете импортировать большую часть данных инфраструктуры Zend). Большая часть того, что вы указали (Рейтинг пользователей; достижения), может быть сделано с помощью бесплатных плагинов WP. Только мои двое.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...