Статьи

Интеграция WordPress с приложением Workflow

Вообразите это:

  1. У вас есть веб-интерфейс на платформе WordPress
  2. Вы разрабатываете приложение рабочего процесса, используя Joget Workflow , и встраиваете его в страницу WordPress.
  3. Включить виджет WordPress для отображения папки «Входящие» в рабочий процесс Joget
  4. Интегрируйте Joget Workflow с пользовательским каталогом WordPress, используя плагин

Да, интересный пример использования, описанный выше, является основной темой этой учебной статьи, все с использованием продуктов с открытым исходным кодом.

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

Установите Joget Workflow

Прежде чем вы сможете приступить к изучению этого руководства, вам необходимо загрузить и установить Joget Workflow, чтобы он был доступен по адресу http: // localhost: 8080 / wflow-wfweb.

Раздел «Загрузка и установка Joget Workflow» этой статьи о Javalobby должен дать вам хорошее представление.

Приложение Design Workflow

Теперь давайте предположим, что мы разрабатываем процесс контактной формы, который является более полным, чем любой другой доступный плагин контактной формы WordPress.

Рисунок 1: Форма процесса контакта

Как показано на рисунке 1, этот рабочий процесс начинается с оценки для представленного контакта:

  1. редакционный
  2. реклама
  3. Или любой другой цели; в этом случае мы принимаем запрос на встречу

Каждое из различных назначений представленного контакта будет обрабатываться различными субъектом / ролью варианта использования (или в терминологии рабочего процесса — участник).

Чтобы сделать рабочий процесс немного более интересным, мы оцениваем пол отправителя контакта.

  1. Если податель указывает, что она женщина, редактор получит задание выполнить запрос на встречу.
  2. В противном случае бедняга получит автоматический ответ по электронной почте, отклонив его запрос на встречу.

Все эти логические схемы и технологический процесс могут быть легко спроектированы с использованием графического дизайнера Workflow — одного из основных компонентов Joget Workflow.

Импортируйте пакет процесса, необходимый для этого учебника

Чтобы сохранить актуальность этой учебной статьи, я не буду подробно рассказывать о том, как описанный выше процесс контактной формы может быть разработан в Joget Workflow. Вы можете обратиться к учебным статьям в Javalobby или в базе знаний Joget Workflow .

Вместо этого я прикрепил экспортированный пакет ( package-demo-20110328172423.zip ) в конце этой статьи. После установки Joget Workflow выполните следующие действия, чтобы импортировать пакет, необходимый для этого урока:

  1. Доступ к http: // localhost: 8080 / wflow-wfweb в вашем веб-браузере
  2. Войдите с « admin » в качестве имени пользователя и « admin » в качестве пароля (без кавычек)
  3. Перейдите к Проектные процессы> Управление процессами
  4. Нажмите кнопку « Импортировать пакет »
  5. Загрузите загруженный вами файл package-demo-20110324010435.zip
  6. Перейдите снова к «Процессы проектирования»> «Управление процессами», и вы увидите « Процесс контактной формы » в списке как один из доступных процессов

Нажав на «Процесс контактной формы», вы попадаете на страницу «Процесс обновления», которая позволяет нам настраивать отображение участников и действий . На вкладке Mapping активности, вы можете настроить следующий Email Plugin свойств «E — mail Ответить автоматически отклонять Meetup Request» и «E — mail Ответить на контакт податель» деятельность:

  • SMTP Host
  • Порт SMTP
  • SMTP нуждается в аутентификации?
  • Имя пользователя SMTP
  • Пароль SMTP
  • От

В этом пакете я распределил участников следующим образом:

  1. Контактное лицо — любой
  2. Редактор — кларк / пароль (логин / пароль)
  3. Реклама In-Charge — Дэвид / пароль (имя пользователя / пароль)

 

Вставить процесс в страницу WordPress

На странице «Процесс обновления» при нажатии на ссылку « Показать дополнительную информацию » откроется URL-адрес, известный как « Ссылка для запуска процесса ».

Рисунок 2: Ссылка на запуск процесса

Вы можете легко встроить начальную активность этого процесса в любой HTML, скопировав URL-адрес «Link To Run Process» в атрибут src IFrame , например:

<iframe src="http://localhost:8080/wflow-wfweb/web/client/process/start/demo:4:contact-form-process?embed=true&completeLabel=Submit&cancel=false&complete=http%3A%2F%2Flocalhost/wordpress/contact-submission-acknowledgement.html" width="100%" height="700"></iframe>

The value of the «complete» parameter, defines the URL that will be redirected to, when the form of the starting activity is submitted.

Figure 3: Example of a Process Embedded into a WordPress Page, using IFrame

Now, whenever a new submission is completed, the Contact Form Process will be automatically started in Joget Workflow, and activities will flow according to the workflow design.

So, if you have submitted the form for the purpose of «Contribute Content to This Blog», clark — the Editor, will get a new task in his Task Inbox. You can login to the Workflow Management Console as clark/password, to perform the «Reply to Content Contribution Request» task.

Simple, isn’t it?

Display Task Inbox in WordPress Site, Using Widget

Instead of requiring all your process users to perform his/her task by logging into Workflow Management Console, we can also display the Task Inbox on WordPress site, by installing and enabling the WordPress’ Joget Workflow Inbox Widget.

  1. Download Joget Workflow Inbox Widget from WordPress Plugin Directory.
  2. Unzip the Widget, and upload the joget-inbox-widget directory to your WordPress’ /wp-content/plugins/ folder
  3. Login to WordPress Administration Panel, and activate the Joget Workflow Inbox plugin through the «Plugins» menu in WordPress
  4. Navigate to the «Widgets» page, and place «Joget Workflow Inbox» on any visible bar in your theme
  5. Configure the widget to point to your Joget Workflow installation. Unless you have changed it, the default URL should be pointed to your /wflow-wfweb/ (i.e. http://localhost:8080/wflow-wfweb/). Please note that your URL has to be publicly accessible (and http://localhost will not likely be)

    Figure 4: Configuring Joget Workflow Inbox Widget

  6. Go to the frontend of your WordPress site, and you should be able to see the Joget Workflow Inbox Widget shown on the targeted sidebar.

Integrate Joget Workflow with WordPress’ User Directory

By default, Joget Workflow uses its own user directory implementation. However, if you would like to abandon the default user directory, and integrate with the user base maintained in WordPress, we can easily achieve this by using Joget Workflow’s WordPress DirectoryManager Plugin.

  1. Download WordPress DirectoryManager Plugin (.jar) from Joget Marketplace.
  2. In Workflow Management Console, navigate to Settings > Manage Plugins.
  3. Click the «Upload Plugin» button, and upload the JAR file.
  4. Navigate to Settings > System Setup, and click to open the «DirectoryManager Settings» tab
  5. Select «WordPress Directory Manager» from the drop-down list, and click the «Select Plugin» button.
  6. In the overlay dialog, configure all the necessary configuration properties. If you are unsure of the settings, please refer to them from your wp-config.php file (which sets the configuration for your WordPress deployment).

    Figure 5: Configuring WordPress DirectoryManager Plugin

  7. If the WordPress database is hosted in a server different from Joget Workflow installation, make sure that the host is accessible.
  8. Make sure that the WordPress Authentication URL is accessible from your Joget Workflow installation. The configuration should point all the way to your joget-login.php file (i.e. http://www.mywpsite.com/wordpress/wp-content/plugins/joget-inbox/joget-login.php).
  9. ВАЖНО : После нажатия кнопки «Отправить», чтобы применить изменения конфигурации, НЕ ВЫХОДИТ немедленно. Вместо этого откройте другое окно браузера и попробуйте войти, используя любого пользователя WordPress. Если проверка подлинности прошла успешно, это означает, что она работает, и вы можете безопасно выйти из существующего сеанса «Администратор», который у вас есть. В противном случае вам может понадобиться заново настроить свойства DirectoryManager и убедиться, что сервер Joget Workflow может установить соединение с MySQL WordPress.

Теперь вы можете войти в Консоль управления Workflow, используя любую учетную запись, сохраненную в каталоге пользователей WordPress.

Это оно! С некоторыми конфигурациями мы можем легко интегрировать наше приложение рабочего процесса с WordPress. Следите за интеграцией в Drupal таким же образом!