💼 Jobliste BA API – WordPress-Plugin für die Arbeitsagentur

REST-API-Integration + Shortcode [jobsuche] + Admin-Einstellungsseite

WordPressPHPREST APIPluginShortcode

🚀 Bereit für Ihre digitale Transformation?

Vereinbaren Sie ein unverbindliches Strategiegespräch

📞 02406 803 7603 ✉️ info@computerkumpel.de

📊 Business Value

Ein vollständiges WordPress-Plugin, das die Jobbörse der Bundesagentur für Arbeit in jede Website integriert. Per Shortcode einbindbar, voll konfigurierbar im Admin-Bereich — kein Entwickler nötig für den Betrieb.

🔌
Plug & Play
Plugin installieren, Shortcode [jobsuche] einfügen, fertig. Keine API-Programmierung nötig.
⚙️
Voll konfigurierbar
Admin-Seite mit Suchwort, Ort, Umkreis, Angebotsart, Arbeitszeit, Befristung und mehr.
📱
Responsive Design
Eingebautes CSS mit Mobile-Breakpoints. Job-Listings sehen auf jedem Gerät gut aus.
🛡️
Sicher
ABSPATH-Check, esc_html/esc_url, try-catch für API-Fehler. WordPress Coding Standards.

⚙️ Plugin-Architektur

1
🔧

Admin Settings

WordPress Settings API: Suchwort, Ort, Umkreis, Arbeitszeit-Checkboxen, Befristung, Zeitarbeits-Filter.

2
📡

REST API Call

Aufruf der BA-Jobsuche-API mit wp_remote_get(), http_build_query() und X-API-Key-Header.

3
🔄

Shortcode Rendering

[jobsuche] parst JSON-Response und rendert HTML-Liste mit Titel, Arbeitgeber, Ort, Referenznummer.

4
🔗

Detail-Link

Intelligente URL-Generierung — refnr > hashId > Suchparameter-Fallback.

💻 Echter Code aus dem Projekt

Code aus D:\arbeit\git\jobplugin\jobplugin.php. Ein produktionsreifes WordPress-Plugin (~450 Zeilen) mit Admin-UI, Shortcode und REST-API-Integration.

📦 Plugin Header & Security (jobplugin.php)

/**
 * Plugin Name: Jobliste BA API
 * Description: Zeigt Jobs aus der Bundesagentur für Arbeit API
 * Version: 1.3
 * Author: Marcel
 */
if (!defined('ABSPATH')) { exit; }

define('JOBLISTE_DEBUG', false);

⚙️ Admin Settings Page mit WordPress API (jobplugin.php)

function jobliste_settings_page() {
    ?>
    <form method="post" action="options.php">
        <?php settings_fields('jobliste_settings_group'); ?>
        <input name="jobliste_suchwort"
            value="<?= esc_attr(get_option('jobliste_suchwort','IT')) ?>">
        <input name="jobliste_ort"
            value="<?= esc_attr(get_option('jobliste_ort','Berlin')) ?>">
        <input name="jobliste_umkreis" type="number"
            value="<?= esc_attr(get_option('jobliste_umkreis',50)) ?>">
        
        <select name="jobliste_angebotsart">
            <option value="1" <?php selected(...) ?>>Arbeit</option>
            <option value="4">Ausbildung/Duales Studium</option>
            <option value="34">Praktikum/Trainee</option>
        </select>
        <?php submit_button(); ?>
    </form>
}

add_action('admin_menu', 'jobliste_add_admin_menu');

📡 REST API Aufruf zur BA-Jobbörse (jobplugin.php)

function jobliste_hole_jobs($atts = [], $debug_mode = false) {
    $params = [
        'was' => $suchwort,
        'wo' => $ort,
        'umkreis' => intval($umkreis),
        'size' => intval($anzahl),
        'angebotsart' => $angebotsart,
        'page' => 1
    ];
    
    if (!empty($arbeitszeit) && $befristung != '0') {
        $params['befristung'] = $befristung;
    }
    
    $api_url = 'https://rest.arbeitsagentur.de/jobboerse/'
        . 'jobsuche-service/pc/v4/jobs?'
        . http_build_query($params, '', '&', PHP_QUERY_RFC3986);
    
    $args = ['headers' => [
        'X-API-Key' => 'jobboerse-jobsuche',
        'Accept' => 'application/json'
    ], 'timeout' => 15];
    
    $response = wp_remote_get($api_url, $args);
    return json_decode(wp_remote_retrieve_body($response), true);
}

📋 Shortcode [jobsuche] — Job-Liste Rendering (jobplugin.php)

add_shortcode('jobsuche', 'jobliste_shortcode');

function jobliste_shortcode($atts) {
    $search_params = [
        'suchwort' => get_option('jobliste_suchwort', 'IT'),
        'ort' => get_option('jobliste_ort', 'Berlin'),
        'umkreis' => get_option('jobliste_umkreis', 50),
        'anzahl' => get_option('jobliste_anzahl', 10)
    ];
    
    $response = jobliste_hole_jobs($search_params);
    
    foreach ($response['stellenangebote'] as $job) {
        $output .= '<li class="jobliste-item">';
        $output .= '<h4>' . esc_html($job['titel']) . '</h4>';
        $output .= '<p><strong>Arbeitgeber:</strong> '
            . esc_html($job['arbeitgeber']) . '</p>';
        
        // Intelligenter Detail-Link
        $detail_url = jobliste_get_detail_url($job);
        $output .= '<a href="' . esc_url($detail_url)
            . '" class="jobliste-button">Details ansehen</a>';
    }
    return $output;
}

💻 Tech-Stack

🐘
PHP 7.4+
WordPress-kompatibel mit esc_html/esc_url und try-catch Error-Handling.
🔄
WordPress REST API
wp_remote_get() mit Header-Auth und Query-Parametern.
📋
Shortcode API
add_shortcode() für nahtlose Einbindung in Gutenberg & Classic Editor.
⚙️
Settings API
register_setting(), add_options_page() für Admin-Konfiguration.
🎨
Eingebettetes CSS mit Media Queries und Hover-Animationen.

🚀 Externe APIs in WordPress integrieren — fertig in Stunden

📞 02406 803 7603 ✉️ info@computerkumpel.de

🎯 Strategische Erkenntnisse

🔐

WordPress-Plugins als Vertriebskanal

43% aller Websites laufen auf WordPress. Ein gut gemachtes Plugin erreicht Millionen potenzieller Kunden — ohne Marketing-Budget.

Ein Plugin im WordPress Repository = kostenlose Distribution.

📈

BA-API: Unterschätzte Datenquelle

Die Arbeitsagentur-API ist kostenlos, offen und liefert tausende Jobs in Echtzeit. Perfekt für Job-Portale, Recruiting-Tools und Marktanalysen.

Öffentliche APIs sind die besten Datenquellen — sie kosten nichts.

🔧

Shortcodes = No-Code für Endanwender

Ein einfacher Shortcode macht komplexe API-Integration nutzbar für Nicht-Entwickler. Die beste Technologie ist die, die keiner erklären muss.

Komplexität im Backend kapseln, Einfachheit nach außen liefern.

👥

Failover-Strategie im Detail-Link

Drei Fallback-Stufen für die Detail-URL sorgen dafür, dass immer ein klickbarer Link existiert — auch wenn die API mal Felder weglässt.

Defensive Programmierung: Immer einen Plan B, C und D haben.

Ihr eigenes WordPress-Plugin entwickeln lassen?

Als Brückenbauer zwischen Business und Technik unterstütze ich Sie bei WordPress-Entwicklung und API-Integration — pragmatisch, ergebnisorientiert, ohne Berater-Bullshit.

📞 Jetzt anrufen ✉️ E-Mail senden