Unde este implementată funcția implicită wp_head()?
Încerc să personalizez o temă și observ că fișierul header.php apelează "wp_head()". Nu pot găsi o implementare a acesteia în temă, așa că presupun că există o implementare implicită care include, de exemplu, setările pentru Opțiuni de Culoare specificate în pagina de administrare.
Așadar, întrebările mele conexe sunt:
- Există undeva unde pot vedea această implementare implicită?
- Poate fi această implementare implicită "dezactivată"?
- Poate fi dezactivată opțiunea "Opțiuni de Culoare" în ecranul de administrare pentru temă?
Vă rog să îmi indicați documentația relevantă dacă ar fi mai ușor. Am consultat paginile de referință pentru funcția wp_head() și pentru hook-ul de acțiune wp_head corespunzător, dar acestea nu par să ofere suficiente informații pentru a aborda întrebările de mai sus.
Mulțumesc.

Există undeva unde pot vedea această implementare implicită?
Funcția wp_head()
pur și simplu declanșează cârligul de acțiune wp_head
care rulează toate funcțiile de callback care au fost adăugate la acest cârlig folosind add_action('wp_head','functie_callback');
Deci nu există o implementare implicită.
Poate fi "dezactivată" această implementare implicită?
După cum am spus anterior, deoarece nu există o implementare implicită, trebuie să găsiți add_action-urile care se conectează la wp_head și să le eliminați folosind remove_action. De exemplu, dacă acesta este add_action:
add_action('wp_head','functie_callback');
atunci pentru a-l elimina, adăugați
remove_action('wp_head','functie_callback');
Poate fi dezactivată opțiunea "Opțiuni de culoare" în ecranul de administrare pentru temă?
Presupun că tema ta are un fel de panou de opțiuni care îți permite să alegi opțiunile de culoare, așadar pentru a o dezactiva depinde de tema în sine, dar ar trebui să fie într-unul dintre fișierele temei. A ști despre ce temă vorbești ar ajuta.
Actualizare
există unele acțiuni care rulează implicit atunci când wp_head este declanșat și pentru a le elimina folosește:
remove_action('wp_head', 'rsd_link');
remove_action('wp_head', 'wp_generator');
remove_action('wp_head', 'feed_links', 2);
remove_action('wp_head', 'index_rel_link');
remove_action('wp_head', 'wlwmanifest_link');
remove_action('wp_head', 'feed_links_extra', 3);
remove_action('wp_head', 'start_post_rel_link', 10, 0);
remove_action('wp_head', 'parent_post_rel_link', 10, 0);
remove_action('wp_head', 'adjacent_posts_rel_link', 10, 0);
în afară de asta, caută add_action('wp_head' ...
în fișierele temei și pluginuri.

mulțumesc pentru răspunsuri. Mă joc cu tema Twenty Ten, care a fost inclusă în WordPress-ul pe care l-am descărcat. Dacă caut cu "grep" pentru "wp_head", există doar o singură apariție - apelul în header.php. Nu pot găsi niciun "add_action('wp_head')". Totuși, se pare că ceva este apelat de wp_head(), deoarece HTML-ul final include un număr de tag-uri unde era wp_head(), inclusiv un stil CSS pentru body (implementând alegerea mea de culoare din ecranul de administrare). Deci, presupun că întrebarea mea este, unde este codul care face asta și pot să-l ocolesc? Mulțumesc.

Perfect. Exact ceea ce aveam nevoie. Am reușit să modific tag-ul <link ref="canonical" ...
pe care WordPress îl afișează automat cu apelul wp_head()
prin eliminarea funcției implicite care îl generează astfel: remove_action('wp_head','rel_canonical');
. Apoi am înregistrat propria mea funcție astfel: add_action('wp_head', 'my_custom_rel_canonical');
și am adăugat tot acest cod în template-ul header.php
deoarece trebuie să fac asta acolo în loc de template-ul obișnuit functions.php
. Deci acum știu că funcționează foarte bine. Mulțumesc Bainternet.
