Интеграция Fluxbb в wordpress

09.03.2017 06:08

Есть у меня один подопечный сайт на wordpress и там же форум на fluxbb. И появилась мысль воткнуть виджет с активными темами на форуме. Беглое гугление по вордпресовской базе виджетов ничего не показало и решил сделай свой...

Первая мысль- сделать нормальный wordpress виджет. Но подумав, что его придётся постоянно поддерживать(вордпресс обновляется часто), отклонил эту идею. Плюс привязываться только к вордпрессу не хотелось (некоторое время назад сайт крутился на joomla).

После чего принял решение сделать отдельную мини-апиху, которая будет отдавать нужные данные с fluxbb, которую уже можно будет воткнуть куда угодно.

Backend

Архив

Так как нам всего лишь нужно сделать 1 sql запрос, я не стал тянуть тяжелые либы, а сделал небольшой велосипед. Подробно объяснять код не буду, всего несколько комментариев:

  • Количество постов в виджете задаётся в конфиге: activeTopics_limit
  • Запрещённые топики: activeTopics_disCats (можно задавать несколько, через запятую)

Установка

Бакэнд распаковать в отдельную папку (например /fluxbb_connector) на сайте, и заполнить конфиг.

Frontend

Добавляем виджет "Текст", в который копипастим следующий код:

<div id="forumActiveTopics"></div>
<script>
jQuery(document).ready(function(){
  jQuery.get( "http://_ВАШ_САЙТ_/fluxbb_connector/?route=activeTopics", function( data ) {
    jQuery("#forumActiveTopics").html( data )
  })
})
</script>

И если всё ок, виджет должен заработать.

Работает оно так:

  1. Мы добавили текстовый виджет, в котором есть див с ID "forumActiveTopics"
  2. А так же js код, который запрашивает страницу с адреса "http://_ВАШ_САЙТ_/fluxbb_connector/?route=activeTopics"
  3. Наш бэкэнд отдаёт нужные данные на фронтэнд
  4. Затем js'ка закидывает полученые данные в наш див

По идее, юзая этот коннектор, можно интегрировать fluxbb куда угодно.

Update

Дада, многие уже подумали: "вот же дебил ...". И они правы. Как обычно забыл про самую простейшую вещь - rss feed. У флакса же есть своя рсс лента, а у вордпресса есть стандартный виджет. В итоге всё что нужно- втыкаем стандартный рсс виджет и настраиваем на наш форум и всё.

Ну да ничего, пусть инструкция выше лежит для истории, может сгодится для чего-нить ещё.



Запуск нескольких экземпляров приложения на pm2 (fork mode)

Есть у нас, например, некое приложение, которое что-то делает в фоновом режиме, например обрабатывает очередь из rabbitmq. И нам, внезапно, захотелось запустить ещё пару его инстансов, чтобы работало в параллели несколько копий приложения.

Тетрис на Javascript

Каждый программист рано или поздно пишет свой тетрис. Этот тетрис уже, наверное 10 на моём счету. Но на javascript - первый. Скажем так, лишил свой javascript тетрисной девственности. Каждый программист рано или поздно пишет свой тетрис. Этот тетрис уже, наверное 10 на моём счету. Но на javascript - первый. Скажем так, лишил свой javascript тетрисной девственности.


(0) Комментариев