FacebookEvents by justb3a

ProcessWire module to get Facebook Page Events using the Graph API.

WARNING: This repository is no longer maintained

This repository will not be updated. The repository will be kept available in read-only mode.

ProcessWire FacebookEvents

ProcessWire module to get Facebook Page Events using the Graph API.

Create an app on Facebook developers website


You have to create an app to get appId and appSecret. Those keys are required.
Go to Facebook Developers and add a new app.
Congrats! Now you can copy your Facebook appId and appSecret.

Get your Facebook page ID


You can either enter your facebook page ID or the facebook page name.
If you enter the Facebook page name, this module will get the page ID for you!

Call Module


$events = $modules->get('FacebookEvents')->getEvents();

Output Events


echo "<ul>";
foreach ($events as $event) {
  echo "<li>{$event['name']}</li>";
}
echo "</ul>";
{% for event in events|reverse %}
  {% if event.start_time|date('U') > date().timestamp %}
    <div>
      {% set dts = modules.get('FacebookEvents').getDates(event) %}
      <a href="https://www.facebook.com/events/{{event.id}}/" title="Facebook">{{dts.dates}}:</a>
      {{event.name}} <em>{{dts.times}}</em>
    </div>
  {% endif %}
{% endfor %}

Format / Combine Start and End Date


$dts = $modules->get('FacebookEvents')->getDates($event);

Parameter:

paramtyperequireddefaultdescription
$eventarraytrue/current event (loop)
$formatDatestringfalsed.m.Ydate format
$formatTimestringfalseH:itime format
$dividerstringfalse-date / time separator

Result:

array with keys:

  • dates
  • times

Example Output:

<!-- one-day event -->
<div>
  <a href="https://www.facebook.com/events/xxx/" title="xxx">07.01.2017:</a>
  event title <em>12:00 - 16:00Uhr</em>
</div>

<!-- multi-day event -->
 <div>
  <a href="https://www.facebook.com/events/xxx/" title="xxx">01.07.2017 - 02.07.2017:</a>
  another event title <em>09:30 - 17:00</em>
</div>

Install and use modules at your own risk. Always have a site and database backup before installing new modules.

Latest news

  • ProcessWire Weekly #561
    In the 561st issue of ProcessWire Weekly we're going to check out the latest core updates, share recent support forum highlights and online resources, and more. Read on!
    Weekly.pw / 8 February 2025
  • ProcessWire 3.0.244 new main/master version
    ProcessWire 3.0.244 is our newest main/master/stable version. It's been more than a year in the making and is packed with tons of new features, issue fixes, optimizations and more. This post covers all the details.
    Blog / 18 January 2025
  • Subscribe to weekly ProcessWire news

“We chose ProcessWire because of its excellent architecture, modular extensibility and the internal API. The CMS offers the necessary flexibility and performance for such a complex website like superbude.de. ProcessWire offers options that are only available for larger systems, such as Drupal, and allows a much slimmer development process.” —xport communication GmbH