Facebook Post Scheduler WP Registry grade A. No security issues foundWP RegistryNo security issues foundOpen the reportA
WP Plugin til planlægning af Facebook opslag med link til den valgte side/indlæg eller anden custom post type
Install
This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.
Install straight from GitHub with WP-CLI:
wp plugin install https://github.com/webjax/fb-post-scheduler/archive/refs/heads/main.zipBeskrivelse
Facebook Post Scheduler er et WordPress-plugin, der giver dig mulighed for at planlægge og administrere Facebook-opslag direkte fra WordPress. Du kan tilføje Facebook-opslagstekst til indhold fra forskellige post types og planlægge, hvornår opslagene skal postes til Facebook. Pluginet kan generere opslagstekst med lokal Ollama (Gemma 4) eller Google Gemini API.
Funktioner
- Vælg hvilke post types der skal kunne planlægge Facebook-opslag
- Tilføj Facebook-opslagstekst direkte i indholdsredigeringen
- Planlæg, hvornår opslaget skal sendes til Facebook
- AI-genereret opslagstekst med Ollama (lokal Gemma 4) eller Google Gemini API
- Automatisk Facebook Page selection og token management 🆕
- Facebook Group support - del direkte til grupper du administrerer 🆕
- Detaljeret Facebook App setup guide med rettigheder 🆕
- "Forny token" knap for nemt token management 🆕
- Automatisk tilføjelse af link til den originale indholdside
- Vedhæft et specifikt billede til Facebook-opslaget
- Hybrid forhåndsvisning af Facebook-linkkortet (
og:image, titel og beskrivelse) med knappen “Tjek hos Facebook” - Planlæg flere Facebook-opslag til samme indhold
- Kalenderoversigt over alle planlagte opslag (månedlig og ugentlig visning)
- Kopier, flyt og slet opslag direkte i kalenderoversigten
- Dashboard for hurtig oversigt over planlagte opslag
- Slet planlagte og postede opslag fra admin-listen — enkeltvis eller med flueben og “Slet valgte”
- Oprydning af revision-opslag — fjerner planlagte rækker der ved en fejl peger på en WordPress-revision (“Udgave”)
- Facebook delings-kolonne på post oversigter - se hvor mange gange hvert indlæg er blevet delt 🆕
- Robust Facebook API connection testing og token expiry checks
- Long-term access token exchange og management
- Eksporter planlagte opslag til CSV
- Notifikationssystem for opslagsstatus
- Logfil over alle Facebook API-kald og opslagsstatus
Installation
- Upload
fb-post-scheduler-mappen til/wp-content/plugins/mappen - Aktivér pluginet via 'Plugins'-menuen i WordPress
- Gå til 'FB Opslag' > 'Indstillinger' for at konfigurere pluginet
Konfiguration
1. Facebook App Setup
Før du kan bruge pluginet, skal du have en Facebook App med de korrekte rettigheder. Pluginet inkluderer en detaljeret setup-guide:
-
Opret Facebook App: Gå til Facebook for Developers og opret en ny app af typen "Business"
-
Tilføj produkter: Tilføj Facebook Login, Instagram Basic Display og Business Manager API
-
Anmod om rettigheder: Din app skal have følgende rettigheder:
pages_show_list- Se liste over siderbusiness_management- Administrer virksomhedskontiinstagram_basic- Grundlæggende Instagram adganginstagram_content_publish- Udgiv Instagram indholdpages_read_engagement- Læs side-engagementpages_manage_metadata- Administrer side-metadatapages_read_user_content- Læs brugerindhold på sidenpages_manage_posts- Administrer opslag på sidenpages_manage_engagement- Administrer side-engagementgroups_access_member_info- Adgang til gruppemedlemsoplysninger 🆕publish_to_groups- Udgiv opslag i grupper 🆕
-
Hent App ID og App Secret: Find disse i din apps "Basic Settings" sektion
2. Automatisk Facebook Side Setup 🆕
Pluginet inkluderer nu en ny funktion til at automatisk vælge Facebook-sider og generere long-term access tokens:
- Indtast App oplysninger: Udfyld Facebook App ID og App Secret
- Bruger Access Token: Hent et bruger access token fra Graph API Explorer med de nødvendige rettigheder og gem det
- Indlæs sider: Klik "Indlæs tilgængelige sider" for at se alle sider du har adgang til
- Vælg side: Vælg den ønskede Facebook-side fra dropdown-menuen
- Automatisk konfiguration: Pluginet genererer automatisk et long-term page access token og opdaterer alle indstillinger
3. Facebook Gruppe Support 🆕
Du kan nu også dele opslag direkte til Facebook-grupper du administrerer:
- Brug samme bruger access token: Som blev brugt til side-setup
- Indlæs grupper: Klik "Indlæs tilgængelige grupper" for at se alle grupper hvor du er administrator
- Vælg gruppe: Vælg den ønskede Facebook-gruppe fra dropdown-menuen
- Ved opslag: Vælg om du vil dele til din valgte side eller gruppe
Bemærk: For at dele til grupper skal du være administrator af gruppen, og gruppen skal tillade opslag fra eksterne apps.
4. Andre indstillinger
- Vælg Post Types: Vælg hvilke post types der skal kunne oprette Facebook-opslag
- Test Facebook API Forbindelse: Klik på "Test Facebook API Forbindelse" knappen for at verificere at dine indstillinger virker korrekt
- AI Tekst Generator Indstillinger: Aktivér AI-tekstgenerering, vælg Ollama eller Gemini, og indtast Gemini API-nøgle hvis du bruger Gemini
Token Fornyelse
For eksisterende opsætninger kan du forny dit page access token ved at:
- Opdatere dit bruger access token hvis nødvendigt
- Klikke på "Forny Token" knappen under den aktuelle side-information
- Dette henter et nyt long-term token automatisk
Sådan bruges pluginet
- Opret eller rediger et indlæg af en af de valgte post types
- Find 'Facebook Opslag' boksen i indholdseditoren
- Aktivér Facebook-opslag ved at klikke på checkboksen
- Vælg destination: Hvis du har konfigureret både en Facebook-side og en gruppe, vælg hvor opslaget skal deles 🆕
- Indtast teksten til Facebook-opslaget manuelt eller brug AI-knappen (Ollama eller Gemini afhængigt af indstillingen)
- Vælg dato og tidspunkt for opslaget
- Vælg eventuelt et billede til opslaget (bruges som link-preview via
og:image; ellers bruges sidens aktuelle Open Graph-billede) - Åbn Forhåndsvisning af opslag for at se det link-kort, Facebook forventes at vise. Kilde-labelen fortæller om billedet er valgt, kommer fra sidens
og:imageeller er udvalgt billede som fallback - Brug Tjek hos Facebook for at læse Facebooks cache uden at ændre den. Opdater Facebooks cache tvinger et nyt scrape (kræver bekræftelse)
- Gem indlægget
- Tilføj flere opslag efter behov ved at klikke på "Tilføj endnu et opslag"
AI-genererede Facebook-opslag
Pluginet kan generere Facebook-opslagstekst med Ollama (localhost) eller Google Gemini. Vælg provider under indstillingerne. Knapteksten i metaboxen følger valget.
Ollama (localhost)
- Gå til 'FB Opslag' > 'Indstillinger' > 'AI Tekst Generator Indstillinger'
- Aktivér AI-tekstgenerering
- Vælg Ollama (localhost)
- Installer Ollama og hent Gemma 4:
brew install ollamabrew services start ollamaollama run gemma4:latest
- Tilpas AI-prompten efter behov
- Klik Generer tekst med Ollama i metaboxen
Google Gemini API
- Aktivér AI-tekstgenerering og vælg Google Gemini API
- Indtast din API-nøgle fra Google AI Studio
- Tilpas AI-prompten efter behov
- Klik Generer tekst med Gemini i metaboxen
Gemini er typisk det rigtige valg i produktion, hvor Ollama ikke kører på serveren.
Facebook API Test
Pluginet inkluderer nu en omfattende test-funktion, der gør det muligt at verificere din Facebook API forbindelse direkte fra indstillingssiden. Test-funktionen tjekker:
- Access Token Validering: Verificerer at dit access token er gyldigt
- Side Information: Henter information om din Facebook-side (navn, kategori, følgere)
- Posting Tilladelser: Bekræfter at du har tilladelse til at poste på siden
- Token Udløb: Tjekker hvornår dit access token udløber
Long-term Access Tokens
Facebook access tokens udløber regelmæssigt. Pluginet understøtter nu automatisk udveksling til long-term tokens:
- Short-term tokens: Udløber efter 1-2 timer
- Long-term tokens: Udløber efter 60 dage
- Automatisk advarsel: Får besked når token snart udløber
- Nem udveksling: Udveksle tokens direkte fra indstillingssiden
Sådan bruger du long-term tokens:
- Få et short-term access token fra Facebook Graph API Explorer eller din app
- Gå til 'FB Opslag' > 'Indstillinger' > 'Facebook API Indstillinger'
- Indsæt short-term token i "Long-term Access Token" sektionen
- Klik "Udveksle til Long-term Token"
- Gem indstillingerne
Gå til 'FB Opslag' > 'Indstillinger' > 'Facebook API Indstillinger' og brug de tilgængelige test-funktioner efter du har udfyldt alle felter.
Nye funktioner
AI-provider: Ollama eller Gemini (1.2.0)
Under FB Opslag → Indstillinger kan du vælge om tekstgenerering skal bruge lokal Ollama eller Google Gemini API. Metabox-knappen skifter tekst efter valget. Gemini-nøglen vises kun når Gemini er valgt.
Hybrid Facebook-link-preview (1.1.7)
Opslag postes som klikbare link-opslag. Previewen i metaboxen viser det kort, Facebook forventes at vise — ikke bare indlæggets udvalgte billede.
Prioritet for preview-billedet:
- Det billede redaktøren har valgt til opslaget
- Sidens aktuelle
og:image(parsed fra permalink eller SEO-plugin) - Udvalgt billede som fallback
Titel og beskrivelse kommer fra og:title og og:description. Tjek hos Facebook læser Facebooks cache via Graph API uden scrape=true. Opdater Facebooks cache tvinger et nyt scrape.
Massehandlinger på FB Opslag-listen (1.1.7)
På FB Opslag kan du vælge rækker med flueben på både Kommende og Postede opslag. Vælg Slet valgte i dropdownen Massehandlinger og klik Udfør. Der er også “vælg alle” i kolonneoverskriften. Enkelt-slet knappen findes stadig på hver række.
Sletning fjerner kun posten i WordPress/plugin-databasen — det sletter ikke opslaget på Facebook.
Revisioner vises ikke længere som “Udgave”
Gutenberg kan gemme metabox-data på en WordPress-revision. I dansk WP hedder den type “Udgave”. Det gav dublerede planlagte rækker knyttet til revisionen i stedet for selve indlægget (fx en begivenhed).
Pluginnet ignorerer nu revision/autosave ved gem. Hvis der stadig ligger gamle rækker, vises knappen Fjern X planlagte opslag knyttet til revisioner over listen. Den sletter kun scheduled-rækker på revisioner — ikke postede opslag og ikke det rigtige indlæg.
Slet planlagte opslag fra admin listen
Du kan slette planlagte og postede opslag direkte fra listerne på FB Opslag med den røde Slet-knap, eller flere ad gangen via massehandlingerne.
Facebook delings-kolonne
I oversigterne for posts, sider og events kan du nu se en "FB Delinger" kolonne, der viser hvor mange gange hvert indlæg er blevet delt på Facebook. Kolonnen kan sorteres og viser:
- Et blåt tal for indlæg der er blevet delt
- "0" for indlæg der ikke er blevet delt endnu
- Tooltips med yderligere detaljer
Kalender
Du kan få en kalenderoversigt over alle planlagte Facebook-opslag ved at gå til 'FB Opslag' > 'Kalender' i WordPress admin-menuen. Her kan du se alle planlagte opslag og interagere med dem direkte. Du kan skifte mellem månedlig og ugentlig visning.
Kalenderfunktioner:
- Vis opslag: Klik på titel for at redigere det tilknyttede WordPress-indlæg
- Kopier opslag: Hover over et opslag og klik på kopier-ikonet for at oprette en kopi planlagt til dagen efter
- Slet opslag: Hover over et opslag og klik på slet-ikonet for at fjerne det permanent
- Rediger opslag: Klik på rediger-ikonet for hurtig navigation til redigering
Alle handlinger kræver bekræftelse og kalenderen opdateres automatisk efter ændringer.
Manuel kørsel af opslag
Hvis du ønsker at køre opslagsprocessen manuelt uden at vente på den timelige tjek, kan du gå til 'FB Opslag' og klikke på "Kør Facebook-opslag nu" knappen. Dette vil køre alle planlagte opslag, der er planlagt til at blive postet nu eller tidligere.
Logs og fejlfinding
Pluginet opretter automatisk en logfil med oplysninger om alle opslag, der postes til Facebook, samt eventuelle fejl. Logfilen findes i /wp-content/plugins/fb-post-scheduler/logs/ mappen.
Krav
- WordPress 5.0 eller nyere
- PHP 7.0 eller nyere
- Adgang til Facebook API (App ID, App Secret, Page ID, Access Token)
- For AI-funktioner: Ollama på localhost, eller en Google Gemini API-nøgle
Udviklet til
Pluginet er udviklet af Jacob Thygesen til brug på danske WordPress-hjemmesider.
Gemte sider til @-tags
Under FB Opslag → Indstillinger kan du gemme Facebook-sider med side-navn og Page ID.
I tekstfeltet til Facebook-opslag skriver du @[ efterfulgt af (en del af) navnet — f.eks. @[Skoring — og vælger siden i listen. Pluginet indsætter @[PAGE_ID:Side-navn], som ved publicering sendes til Facebook som @[PAGE_ID].
Du kan stadig søge offentlige sider via Facebook med @ + mindst 3 bogstaver (kræver App Review-tilladelser).
Sikkerhed
Dit Facebook API-nøgler, Google Gemini API-nøgle og tokens opbevares i WordPress-databasen. Sørg for at holde disse oplysninger sikre og brug kun pluginet på sikre websites med opdateret WordPress og relevante sikkerhedsforanstaltninger.
App Review: Page Public Content Access
This section is the description to paste into Meta App Review for the Page Public Content Access feature. English is included because Meta reviewers read English.
Related docs: Pages Search · Page Feed mentions · Page Public Content Access
Feature use (copy for Meta App Review)
App name: Facebook Post Scheduler (WordPress plugin)
Feature requested: Page Public Content Access
User-facing purpose: Let a Page admin look up public Facebook Pages they do not manage and insert an official @-mention (@[PAGE_ID]) into a scheduled post.
Why this feature is required
Facebook Post Scheduler is used by website editors (for example a municipality or local news site) to compose and schedule posts that are published as the organization’s Facebook Page via POST /{page-id}/feed.
Editors often need to tag official public Pages they do not administer — for example a royal household, a government agency, a museum, or a partner organization — so the mention appears as a blue, clickable @-tag on Facebook.
pages_read_engagement and pages_show_list only return Pages the logged-in user already manages. They cannot resolve a public Page such as “Dronninglund” or “Meteo” to a Page ID. The Graph API Pages Search endpoint (GET /pages/search) requires Page Public Content Access or Page Public Metadata Access for that lookup.
Without this feature, the editor would have to find and paste raw numeric Page IDs by hand, which is error-prone and not usable in a CMS workflow.
What the app does with the feature (and nothing else)
-
A WordPress editor opens a post and types in the plugin’s Facebook post text field.
-
When they type
@followed by at least 3 characters (example:@Mete), the plugin sends an authenticated admin AJAX request to WordPress. The browser never calls Graph API directly. -
The WordPress server calls:
GET https://graph.facebook.com/v18.0/pages/search?q={search_term}&fields=id,nameusing an app access token (
{app-id}|{app-secret}). A user token is tried first for Pages the user already manages; public search uses the app token once this feature is approved. -
Only two fields are requested:
id(Facebook Page ID) andname(Page name). The app does not request or store posts, comments, reactions, followers, emails, or any other Page content. -
Up to 8 matching Pages are shown in an autocomplete dropdown (name + ID). No other Graph data is displayed.
-
If the editor selects a Page, the plugin inserts
@[PAGE_ID:Page Name]into the draft text (for example@[123456789:Météo-France]). That string is saved with the WordPress post as ordinary post meta. -
At publish time the name is stripped and the Graph
messageparameter is sent as Meta’s official mention syntax, e.g.Check out this article about @[123456789]!, together withpages_manage_postsonPOST /{page-id}/feed. Facebook then renders the blue @-tag.
Data use, storage, and retention
- Search is on-demand and ephemeral. Query results are not cached, not written to a database, and not used for analytics, advertising, scraping, or building a Page directory.
- The only persisted values are the Page ID (and optionally the display name) that the editor explicitly chose, stored inside the scheduled post’s message text in WordPress.
- Access tokens stay on the server (WordPress options). They are never exposed to site visitors.
- The feature is available only to logged-in WordPress users with the
edit_postscapability. Requests are protected with a WordPress nonce.
What this app does not do
- It does not crawl, archive, or display public Page feed posts, photos, videos, or comments.
- It does not read Pages in bulk or run unattended search jobs.
- It does not mention Pages without an explicit editor action (selecting a result or typing
@[PAGE_ID]). - It does not use public Page data for ads, lookalike audiences, or resale.
Step-by-step for reviewers (screencast script)
- Log in to WordPress as an editor.
- Open FB Opslag → Indstillinger and confirm the Facebook App ID, App Secret, and Page are connected.
- Create or edit a WordPress post.
- In the Facebook Opslag meta box, enable the post and click the text field Tekst til Facebook-opslag.
- Type
@plus at least three letters of a public Page the connected user does not manage. - Confirm a dropdown of matching public Pages (name + ID) appears.
- Click a result. Confirm the field contains
@[PAGE_ID:Page Name]. - Schedule or publish. Confirm the Facebook post shows a blue @-mention of that Page.
API summary
| Item | Value |
|---|---|
| Endpoint | GET /v18.0/pages/search |
| Query | q = characters typed after @ (minimum 3) |
| Fields | id, name only |
| Token | App access token ({app-id}|{app-secret}) for public search |
| Publish | POST /{page-id}/feed with message containing @[PAGE_ID] |
| Related permission | pages_manage_posts (already used to publish as the Page) |
FAQ
Hvordan får jeg Facebook API-nøgler?
Du skal oprette en Facebook-app på Facebook for Developers og anmode om nødvendige tilladelser til at poste på en Facebook-side.
Hvor ofte tjekker pluginet for opslag der skal postes?
Pluginet tjekker hver time for planlagte opslag, der skal postes til Facebook.
Hvad sker der hvis et opslag ikke bliver postet?
Hvis et opslag ikke bliver postet, forbliver det i kalenderen og vil blive forsøgt postet igen ved næste tjek. Du kan også manuelt trigge et post ved at redigere og gemme indlægget igen.
Hvorfor står der “Udgave” i Type-kolonnen?
“Udgave” er WordPress’ danske navn for post typen revision (en gemt ændring). Ældre planlagte rækker kan pege på en revision i stedet for selve indlægget. Brug knappen til at fjerne dem under FB Opslag. Nye gem påvirker ikke længere revisioner.
Releases
5 releases.
These releases are tags only. The author does not attach a packaged zip, so there are no download counts to report.