PHPackages                             mvo/contao-facebook-import - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. mvo/contao-facebook-import

ActiveContao-bundle

mvo/contao-facebook-import
==========================

Facebook posts and events for Contao Open Source CMS

v3.3.3(3y ago)102.7k6[7 issues](https://github.com/m-vo/contao-facebook-import/issues)[2 PRs](https://github.com/m-vo/contao-facebook-import/pulls)1MITPHPPHP &gt;=7.1

Since Sep 11Pushed 2y ago5 watchersCompare

[ Source](https://github.com/m-vo/contao-facebook-import)[ Packagist](https://packagist.org/packages/mvo/contao-facebook-import)[ RSS](/packages/mvo-contao-facebook-import/feed)WikiDiscussions main Synced today

READMEChangelog (10)Dependencies (22)Versions (30)Used By (1)

contao-facebook-import
======================

[](#contao-facebook-import)

This bundle enables to use Facebook's events and posts as native elements in Contao Open Source CMS. The following things are available:

- Automatic and on-demand import of Facebook events and posts
- Image scraper that automatically downloads high resolution images\*) of posts and events into Contao's filesystem
- Content Elements to display events and posts
- Support for multiple Facebook pages simultaneously

\*) Note that the largest size of images being used will be smaller or equal the maximum size set in the Contao settings. (The system tries to download the biggest possible file with this constraint.)

#### Version 3

[](#version-3)

This is version 3 of the bundle - to see a list of changes and information on how to migrate from older versions please refer to the [changelog](CHANGELOG.md).

#### PHP 8

[](#php-8)

Unfortunately, there is no official release of [facebook/graph-sdk](https://packagist.org/packages/facebook/graph-sdk) with support for PHP 8. You can, however, require the third-party fork [nickdnk/graph-sdk](https://packagist.org/packages/nickdnk/graph-sdk) in your application, which added support for PHP 8 and acts as a drop-in-replacement. You might want to do this *before* installing this bundle, so that the installation won't fail.

```
$ composer require nickdnk/graph-sdk
```

Setup
-----

[](#setup)

#### Step 1: Download (&amp; register) the Bundle

[](#step-1-download--register-the-bundle)

Require the bundle as a dependency and register the `MvoContaoFacebookImportBundle`in your `AppKernel` (automatically done in the Contao Managed Edition):

```
$ composer require mvo/contao-facebook-import
```

Update your database.

#### Step 2: Configure (optional)

[](#step-2-configure-optional)

You can edit the configuration by setting the following parameters in your `config.yml` - the following values are the defaults:

```
mvo_contao_facebook_import:
    request_limit_per_node: 150
    request_window_per_node: 3600
    max_execution_time: 16
    trigger_type: 'internal'
```

- **request\_limit\_per\_node** defines the maximum amount of requests that will be issued in a certain time (request window) to prevent exceeding the API limits - this limit is calculated individually for every defined Facebook node.
- **request\_window\_per\_node** defines the length of the request window in seconds. The evaluation happens on a scrolling window basis.
- **max\_execution\_time** defines the maximum execution time in seconds that the synchronization process is allowed to run. Setting this value to a bigger value (that your server is still capable to do) will offer a quicker image synchronization.
- **trigger\_type** defines how the synchronization should be triggered. By default (`internal`) the Contao cron system is used but you can set it to `route`. The process can than be started by calling the `/_sync_fb_nodes`route. If you want to limit the synchronization a specific node you can pass the node id as an optional get parameter.

    *Example to trigger synchronizing node 5:*

    ```
    wget https://mydomain.org/_sync_fb_nodes?node=5

    ```

> Its highly recommended to use a distinct cron job and use the route. If you use the internal variant make sure you have disabled the periodic command scheduler and you are still triggering the `_contao/cron` route with a cron job. Otherwise long latency might occur when the synchronizer is running.

#### Step 3: Use the Bundle

[](#step-3-use-the-bundle)

**Facebook GraphAPI**

Create one or more Facebook nodes in the backend. To make your application able to connect to Facebook's GraphAPI, you need to create a at least one Facebook app and access token.

The latter you can generate doing the following steps:

- Open the [Graph API Explorer](https://developers.facebook.com/tools/explorer/)
- Select your app from the `App` dropdown.
- Select your page from the `Get Token` dropdown (under *Page Access Tokens*) - you'll therefore have to allow the app to access your page.
- Paste the generated token into the facebook node's field in the backend.
- Check the belongside checkbox (convert token) and save the record - the system will then try to generate a token that won't expire anymore and replace it with the one you entered.

To test your token and see if it won't expire, you can enter it into the [Access Token Debugger](https://developers.facebook.com/tools/debug/accesstoken) and look for the expiry date.

**Synchronization**

If you enable auto synchronization, you're good to go. To manually import posts and events, see what got imported or hide certain elements head to the respective posts / events child views of your Facebook node.

Images are being imported separately from the textual contents in the background. Their import happens in chunks and is prioritized over updating the textual content. You'll see images appearing in the elements as soon they have been scraped.

**Frontend**

To display the data in the frontend use the `Facebook Post List` and `Facebook Event List` content elements.

###  Health Score

32

—

LowBetter than 74% of packages

Maintenance6

Infrequent updates — may be unmaintained

Popularity26

Limited adoption so far

Community16

Small or concentrated contributor base

Maturity69

Established project with proven stability

 Bus Factor1

Top contributor holds 81.2% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~70 days

Recently: every ~198 days

Total

26

Last Release

1343d ago

Major Versions

1.1.2 → v2.0.02018-04-13

v2.2.1 → v3.0.0-beta12018-08-14

### Community

Maintainers

![](https://www.gravatar.com/avatar/ebbd1a2ef505d2afa0c828ea08244e9636e397bc837ec3cf6daa74ff07f08e0b?d=identicon)[m-vo](/maintainers/m-vo)

---

Top Contributors

[![m-vo](https://avatars.githubusercontent.com/u/5305677?v=4)](https://github.com/m-vo "m-vo (82 commits)")[![rabauss](https://avatars.githubusercontent.com/u/14016098?v=4)](https://github.com/rabauss "rabauss (19 commits)")

---

Tags

facebookeventsimportcontaosocialposts

###  Code Quality

Static AnalysisPHPStan

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/mvo-contao-facebook-import/health.svg)

```
[![Health](https://phpackages.com/badges/mvo-contao-facebook-import/health.svg)](https://phpackages.com/packages/mvo-contao-facebook-import)
```

###  Alternatives

[sylius/sylius

E-Commerce platform for PHP, based on Symfony framework.

8.4k5.5M596](/packages/sylius-sylius)[pimcore/pimcore

Content &amp; Product Management Framework (CMS/PIM/E-Commerce)

3.7k3.6M345](/packages/pimcore-pimcore)[ec-cube/ec-cube

EC-CUBE EC open platform.

78427.0k1](/packages/ec-cube-ec-cube)[oro/platform

Business Application Platform (BAP)

648132.0k71](/packages/oro-platform)[kunstmaan/bundles-cms

The Kunstmaan CMS is an advanced yet user-friendly content management system, based on the full stack Symfony framework combined with a whole host of community bundles. It provides a full featured, multi-language CMS system with an innovative page and form assembling process, versioning, workflow, translation and media managers and much more.

413283.8k18](/packages/kunstmaan-bundles-cms)[metamodels/core

MetaModels core

10155.2k58](/packages/metamodels-core)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
