Ce face wp post create
wp post create creează conținut nou prin wp_insert_post(), deci orice câmp al acestei funcții poate fi dat ca opțiune: --post_title, --post_content, --post_status, --post_type, --post_author (ID-ul utilizatorului), --post_date, --post_category, --tags_input, --meta_input (JSON) etc.
Starea implicită este draft (ciornă), iar tipul implicit post. Pentru publicare imediată dai --post_status=publish; cu --post_status=future și o --post_date în viitor, articolul se programează.
Conținutul lung se poate citi dintr-un fișier dat ca prim argument (atunci --post_content este ignorat), iar cu - se citește de la intrarea standard. --porcelain afișează doar ID-ul articolului creat.
Parametri
| Parametru | Descriere |
|---|---|
[<file>] |
Fișierul din care se citește conținutul; - citește de la intrarea standard. |
--post_title=<post_title> |
Titlul. |
--post_content=<post_content> |
Conținutul (HTML sau blocuri). |
--post_status=<post_status> |
Starea: draft (implicit), publish, pending, private, future. |
--post_type=<post_type> |
Tipul de conținut; implicit post. Pentru pagini, page. |
--post_author=<post_author> |
ID-ul autorului. |
--post_date=<post_date> |
Data articolului, de exemplu '2026-12-01 09:00:00'. |
--post_category=<post_category> |
Categorii (nume, slug-uri sau ID-uri), separate prin virgulă. |
--meta_input=<meta_input> |
Câmpuri personalizate, ca obiect JSON. |
--porcelain |
Afișează doar ID-ul articolului nou. |
Exemple
Exemplul 1: Un articol publicat imediat
Autorul este Ana (ID 2).
wp post create --post_title="Meniul de toamnă la Cafenea Iași" --post_content="<p>Plăcintă cu dovleac, 18 lei.</p>" --post_status=publish --post_author=2
Ieșire în terminal
Success: Created post 57.
Exemplul 2: Conținut dintr-un fișier, programat pentru decembrie
Conținutul vine din craciun.html; starea future și data în viitor programează publicarea.
wp post create ./craciun.html --post_title="Program de Crăciun" --post_status=future --post_date="2026-12-01 09:00:00" --post_category=noutati
Ieșire în terminal
Success: Created post 58.
Exemplul 3: O pagină nouă, cu ID-ul păstrat într-o variabilă
Cu --porcelain comanda scrie doar ID-ul paginii.
ID=$(wp post create --post_type=page --post_title="Contact" --post_status=publish --porcelain)
echo "Pagina Contact are ID-ul $ID"
Ieșire în terminal
Pagina Contact are ID-ul 9
Greșeli frecvente
- Uitarea lui
--post_status=publish: articolul rămâne ciornă și nu apare pe site. - Ghilimele lipsă în jurul titlurilor cu spații:
--post_title=Meniul de toamnăeste împărțit de shell în mai multe argumente. Pune valoarea între ghilimele. - Așteptarea ca autorul să fie utilizatorul tău: WP-CLI nu rulează ca un utilizator anume, deci fără
--post_author(sau parametrul global--user=ana) autorul poate rămâne 0.
Comenzi înrudite
wp post update: Modifică unul sau mai multe articole existente: titlu, stare, autor, conținut sau câmpuri personalizate.wp post list: Afișează articole, pagini sau alte tipuri de conținut, filtrate cu argumentele WP_Query, în tabel, CSV, JSON sau ID-uri.wp user create: Creează un utilizator WordPress nou, cu rol, nume și parolă, direct din terminal.