The Documentația metatagurilor oferă un exemplu de setare meta-etichete ca acesta:
$node->set('field_meta_tags', serialize([
'title' => 'Un titlu',
'description' => 'O anumită descriere.',
'keywords' => 'Unele, cuvinte cheie',
]));
Cu toate acestea, vreau să setez câmpurile „avansate”, cum ar fi URL canonic. (Caz de utilizare: încerc să import câteva sute de pagini cu modulul Feeds, dintre care unele sunt foarte asemănătoare, așa că vreau să setez automat adresa URL canonică pentru paginile similare.)
Am încercat să obțin numele cheii pentru a se serializa setând adresa URL canonică pentru un nod în interfața de utilizare, salvând nodul și apoi aruncând rezultatul field_metatags
, dar acesta a fost rezultatul:
www.example.com a:4:{s:5:"@type";s:6:"Persoană";s:3:"@id";s:39:"https://www.example.com /bio";s:4:"nume";s:12:"Numele persoanei";s:3:"url";s:39:"https://www.example.com/my-bio";}
Aici, primul www.example.com
este valoarea pe care am setat-o pentru URL-ul canonic, dar aceasta nu îmi dă un indiciu despre ce să folosesc pentru a seta adresa URL canonică.
Cum pot seta în mod programatic valorile metaetichetelor „avansate”?
Întrebări similare
Această întrebare se referă la setarea adresei URL canonice dar este pentru Drupal 7 și se referă la preprocesarea URL-ului canonic înainte de afișare, în timp ce vreau să setez URL-ul canonic metatag atunci când salvez nodul în Drupal 9.