Point d'accès aux actualités

Point d'extrémité

Actualités

Gérer les articles, les catégories et les auteurs de Newsdesk.


Aperçu

Articles d'actualité (Newsdesk)

OpérationMéthodePoint d'extrémitéPortée
ExportationGET/xpanel/xoPort/export/json/newsdesknews:read
ImportPOST/xpanel/xoPort/import/json/newsdesknews:write
Mise à jourPUT/xpanel/xoPort/import/json/newsdesknews:write
SupprimerDELETE/xpanel/xoPort/delete/json/newsdesknews:delete

Catégories d'actualités (newsdesk_categories)

OpérationMéthodePoint de terminaisonPortée
ExportationGET/xpanel/xoPort/export/json/newsdesk_categoriesactualités : lecture
ImportPOST/xpanel/xoPort/import/json/newsdesk_categoriesnews:write
SupprimerDELETE/xpanel/xoPort/delete/json/newsdesk_categoriesnews:delete

Auteurs (newsdesk_authors)

OpérationMéthodePoint de terminaisonPortée
Exportation (tout)GET/xpanel/xoPort/export/json/newsdesk_authorsnews:read
Exportation (individuelle)GET/xpanel/xoPort/export/json/newsdesk_author/{id}news:read

Exporter des articles d'actualité

Itinéraires

ItinéraireRésultat
/export/json/newsdesksTous les articles
/export/json/newsdesk/{id}Un seul article
/export/json/newsdesks/{id}Tous les articles à partir de cet ID

Paramètres de requête

ParamètresTypeDescription
limitintNombre maximal d'enregistrements
offsetintPosition de départ

Il n'y a pas de restriction côté serveur concernant la catégorie d'actualités — pour cela, il faut analyser le champ categories_ids de la réponse.


Liste des champs

Champs par article

ChampTypeDescription
newsdesk_idintID de l'article — champ obligatoire pour la requête PUT
newsdesk_statusint1 = publié, 0 = inactif
newsdesk_date_availabledatetimePublié à partir de (A-m-j H:i:s)
newsdesk_date_addeddatetimeDate de création
newsdesk_last_modifieddatetimeDernière modification — exportation uniquement
newsdesk_stickyint1 = épinglé en haut
sort_orderintOrdre de tri
newsdesk_imagechaîneImage de l'article (nom de fichier)
newsdesk_authorchaîneAuteur (texte libre)
author_idintAuteur issu de la gestion des auteurs (0 = aucun)
categories_idsint[]Catégories d'actualités, par exemple [2, 5] — plusieurs attributions possibles
languages{}objectBloc de langue, clé = code de langue (de, en …)

Depuis la v2.121.0 Lors de la création (POST), l’importation complète chaque langue active pour laquelle aucun bloc spécifique n’a été envoyé, à partir de la langue principale (le bloc « de », ou sinon le premier bloc envoyé). Si la traduction DeepL est configurée, elle traduira ces langues lors de la prochaine exécution.

Champs par langue (dans le bloc « languages »)

ChampTypeDescription
newsdesk_article_namechaîneTitre
newsdesk_article_shorttexthtmlTeaser / Texte court
newsdesk_article_descriptionhtmlTexte de l'article
newsdesk_image_textchaîneLégende / Texte alternatif
newsdesk_article_urlstringLien externe (facultatif)
newsdesk_article_url_namechaîneLibellé du lien externe
seo_namechaîneSlug de l'URL — généré à partir du titre s'il est vide
title_tagchaîneMéta-titre
desc_tagchaîneMéta-description
balise_mots-cléschaîneMots-clés méta
article_vu_par_la_rédactionintCompteur de visites — exportation uniquement

Importation (POST) et mise à jour (PUT)

curl -X POST "https://shop.de/xpanel/xoPort/import/json/newsdesk" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "newsdesk",
    "data": [{
      "newsdesk_status": 1,
      "newsdesk_sticky": 0,
      "sort_order": 0,
      "newsdesk_date_available": "2026-08-12 08:00:00",
      "author_id": 0,
      "categories_ids": [2],
      "languages": {
        "de": {
          "newsdesk_article_name": "Neue Produktlinie",
          "newsdesk_article_shorttext": "

Kurz angerissen …

", "newsdesk_article_description": "

Wir erweitern …

", "title_tag": "Neue Produktlinie | Shop", "desc_tag": "Wir erweitern unser Sortiment." }, "en": { "newsdesk_article_name": "New product line" } } }] }'

Pour une mise à jour, envoyez la même structure via PUT en précisant le newsdesk_id. Seuls les champs transmis sont modifiés — les champs non envoyés restent inchangés.


Remarques

  • categories_ids est un miroir complet : si le champ est envoyé, toutes les affectations de catégories précédentes de l’article sont remplacées. S’il est omis, elles restent inchangées.
  • L'affectation de catégories s'appelle categories_ids (tableau). Un newsdesk_categories_id est ignoré car considéré comme un champ inconnu — l'article serait alors créé sans catégorie.
  • Si seo_name est absent, le slug est généré automatiquement à partir de newsdesk_article_name (strip_seo()).
  • Si seo_name change lors d’une mise à jour, l’importation crée automatiquement une redirection 301 depuis l’ancienne URL (historique SEO).
  • Après l’importation, le cache des actualités est vidé et les traductions DeepL des articles modifiés sont marquées pour être retraduites.
  • Champs réservés à l’exportation (ignorés lors de l’importation) : newsdesk_last_modified, newsdesk_article_viewed.