Faceți un meniu dinamic în wordpress

Orei bune din timpul zilei.

Recent, într-un mic proiect pe WordPress, trebuia să schimb dinamic elementele de meniu.
Un pic de googling, nu am primit opțiunea pe care o așteptam - întreaga opțiune era fie neplăcută, fie pierdută funcționalitatea necesară, și cel mai important, abilitatea de a edita încă meniul din panoul de administrare.







Merită să menționez că lucrez cu WP

2 luni, unele aspecte, desigur, nu știu încă, dar am ajuns la funcția wp_update_nav_menu_item (). care, dintr-un motiv oarecare, nu se afla în documentație, dar sa dovedit a fi un lucru bun.

Funcția este localizată în / wp-include / nav-menu.php și are 3 parametri - $ menu_id. $ menu_item_db_id și $ menu_item_data.

Să examinăm fiecare parametru separat:
$ menu_id - integer - identificatorul meniului. Când creați un nou meniu (mai precis, înregistrați) în funcțiile dvs., fiecare meniu are un identificator.







$ menu_item_db_id - integer - când creați elemente de meniu, fiecăruia li se atribuie un identificator și un identificator în baza de date (acestea coincid de obicei). Dacă acest parametru este setat la 0, atunci funcția creează un element nou și nu actualizează unul existent.

$ menu_item_data - matrice - matricea de date pentru elementul pe care urmează să îl actualizați sau să îl creați.
Parametrii de marfă:

  • meniu-item-db-id
  • meniu-item-obiect-id
  • meniu-item-obiect
  • meniu-element-părinte-id
  • meniu-item-position
  • meniu-element de tip
  • meniu-element din titlu
  • meniu-element-url
  • meniu-item-descriere
  • meniu-item-attr-titlu
  • meniu-item-țintă
  • meniu-item-clase
  • meniu-item-XFN
  • meniu-element de stare

Cred că, din nume, este clar ce pentru ce răspunsuri.

După executare, funcția returnează false în cazul unei defecțiuni sau int cu ID-ul elementului de meniu (?) Dacă totul a mers bine.

Apoi este ceva mai mult - am pus o acțiune asupra acestei funcții și după ce unul dintre posturile copiilor apare într-unul din titlurile copilului, acesta va fi adăugat automat la meniu, dar nu va apărea imediat acolo. Acest lucru sa dovedit a fi un plus plăcut pentru mine. În mod implicit, administratorul va trebui să confirme prezența acestui element în meniu, după care va fi dus la lista generală.

Vă mulțumesc pentru atenție.
Poate pentru persoanele care lucrează cu WP de mult timp, nu am arătat nimic nou, dar pentru începători, ca mine, va fi util să știm.







Articole similare

Trimiteți-le prietenilor: