Come imposto dinamicamente il titolo della pagina?
-
-
Da dove verrebbeil valore?cosa hain quellapaginail valore di # 123?Where would the value come from? what has in that page the value of #123 ?
- 0
- 2011-11-07
- Sagive SEO
-
6 risposta
- voti
-
- 2011-11-07
Non c'è documentazione,mapuoi sempre applicare unfiltro a
the_title
in questomodo:add_filter('the_title','some_callback'); function some_callback($data){ global $post; // where $data would be string(#) "current title" // Example: // (you would want to change $post->ID to however you are getting the book order #, // but you can see how it works this way with global $post;) return 'Book Order #' . $post->ID; }
Vedi questi:
There is no documentation on it but you could always apply a filter to
the_title
like this:add_filter('the_title','some_callback'); function some_callback($data){ global $post; // where $data would be string(#) "current title" // Example: // (you would want to change $post->ID to however you are getting the book order #, // but you can see how it works this way with global $post;) return 'Book Order #' . $post->ID; }
See these:
-
Questo sembra sovrascriveretuttii titoli.Come sovrascrivo soloiltitolo corrente?This seems to override all titles. How do I override only the current title?
- 0
- 2017-03-29
- Petrus Theron
-
Dovresti aggiungere una condizione alla richiamata,adesempio `if ($post-> ID==45) {...}`You would need to add a condition to the callback, e.g `if ($post->ID == 45) { ... }`
- 0
- 2018-07-09
- Nick Barrett
-
Ilfiltro "the_title"nonfunzionapiùnelle ultime versioni di Wordpress,usai filtri "document_title_parts" o "pre_get_document_title" come spiegatoin altre risposte.`the_title` filter no longer works in the latest versions of Wordpress, use `document_title_parts` or `pre_get_document_title` filters as detailed in other answers.
- 3
- 2018-11-15
- Brendan Nee
-
- 2018-11-15
Apartire da Wordpress 4.4,puoi utilizzareilfiltro Wordpress
document_title_parts
permodificareiltitolo.Aggiungi quanto segue a
functions.php
:add_filter('document_title_parts', 'my_custom_title'); function my_custom_title( $title ) { // $title is an array of title parts, including one called `title` $title['title'] = 'My new title'; if (is_singular('post')) { $title['title'] = 'Fresh Post: ' . $title['title']; } return $title; }
As of Wordpress 4.4, you can use the Wordpress filter
document_title_parts
to change the title.Add the following to
functions.php
:add_filter('document_title_parts', 'my_custom_title'); function my_custom_title( $title ) { // $title is an array of title parts, including one called `title` $title['title'] = 'My new title'; if (is_singular('post')) { $title['title'] = 'Fresh Post: ' . $title['title']; } return $title; }
-
ma dovepassiilparametro a unfiltro?but where do you pass in the parameter to a filter?
- 0
- 2018-12-22
- Tintinabulator Zea
-
Lafunzioneprecedentemodificailmodoin cuifunzionano lefunzioni `the_title ()`e `get_the_title ()`,quindinon ènecessariopassare alcunparametro.The above function modifies the way `the_title()` and `get_the_title()` functions work - so no need to pass any parameters.
- 0
- 2018-12-25
- Brendan Nee
-
- 2018-08-12
Per coloro che desideranomodificare l'attributo
title
del documento,ho scoperto che l'utilizzo delfiltrowp_title
nonfunzionapiù.Utilizzainveceil ilfiltropre_get_document_title
:add_filter("pre_get_document_title", "my_callback"); function my_callback($old_title){ return "My Modified Title"; }
For those wishing to change the document's
title
attribute, I found that using thewp_title
filter no longer works. Instead, use thepre_get_document_title
filter:add_filter("pre_get_document_title", "my_callback"); function my_callback($old_title){ return "My Modified Title"; }
-
grazieperesseretornati anni dopoperpubblicare questo aggiornamento.Ho usato wp_titlein unmiopluginper annie nonmi ero reso conto chenonfunzionavapiùfino ad orae latua rispostami ha risparmiato un sacco difatica.Quindigrazie!thanks for coming back years later to post this update. I had been using wp_title in a plugin of mine for years and hadn't realized it was no longer working until now and your answer saved me a lot of effort. So Thank you!
- 1
- 2019-01-11
- MatthewLee
-
@MatthewLee Sono contento di sentire cheti ha aiutato :)@MatthewLee Glad to hear it helped you :)
- 0
- 2019-01-11
- Nathan Arthur
-
- 2019-04-14
Quando hai Yoast abilitato,devi sovrascrivereiltitoloin questomodo:
add_filter('wpseo_title', 'custom_titles', 10, 1); function custom_titles() { global $wp; $current_slug = $wp->request; if ($current_slug == 'foobar') { return 'Foobar'; } }
When having Yoast enabled you need to override the title like so:
add_filter('wpseo_title', 'custom_titles', 10, 1); function custom_titles() { global $wp; $current_slug = $wp->request; if ($current_slug == 'foobar') { return 'Foobar'; } }
-
- 2013-12-15
Dipende davvero se stai cercando di visualizzare untitolopersonalizzatoper lapagina corrente (ovveroi contenuti deltag
<title></title>
nell'intestazione) o difiltrareiltitolodipaginenel corpo dellapagina oneglielenchi.Nelprimo caso (iltitolo dellapagina corrente),prova ad aggiungere unfiltroper
wp_title()
in questomodo: http://codex.wordpress.org/Plugin_API/Filter_Reference/wp_titleSe vuoimodificarei titoli dellepagine sututta la linea,filtrare
the_title()
faràiltrucco: http://codex.wordpress.org/Plugin_API/Filter_Reference/the_titleReally depends if you're looking to display a custom title for the current page (i.e. the contents of the
<title></title>
tag in the header) or filter the title of pages in the page body or in listings.In the former case (the title of the current page), try adding a filter for
wp_title()
like so: http://codex.wordpress.org/Plugin_API/Filter_Reference/wp_titleIf you want to modify page titles across the board, filtering
the_title()
will do the trick: http://codex.wordpress.org/Plugin_API/Filter_Reference/the_title-
In realtànellamiaesperienza ènecessariofiltrare sia `wp_title` che`the_title`per coprireentrambi.Actually in my experience you need to filter both `wp_title` and `the_title` to cover both.
- 0
- 2015-03-26
- Geoffrey
-
Non sono sicuro che sia a causa della deprecazione,manonfunzionaperme.Hoprovato combinazionie filtriin lineae ilnuovo apply_filters ('pre_get_document_title',string $title)I am not sure if its because of the deprecation but tis doesnt work for me. I have tried combinations and inline filters and the new apply_filters( 'pre_get_document_title', string $title )
- 0
- 2017-01-18
- landed
-
purtropponeancheperme hafunzionato.sadly neither worked for me either.
- 0
- 2019-06-08
- Debbie Kurth
-
Questa risposta ha quasi 6 anni;comeposter (e qualcuno chenon lavorapiù attivamente con WP),suggerireiinvece diguardare la documentazionepiù recente.This answer is nearly 6 years old; as the poster (and someone who doesn't actively work with WP anymore), I would suggest looking at the latest documentation instead.
- 0
- 2019-06-09
- nickb
-
- 2020-09-05
In realtàilmodopiù sempliceperfarlo è utilizzare una riga dijs.
Inserisciil seguente codicenelmodello:
<script>document.title = "<?php echo $new_title; ?>";</script>
Questo codicenon deveesserenell'intestazione html,puòessereinseritonel corpo html.
Actually the easiest way to do this is use one line of js.
Put the following code in the template:
<script>document.title = "<?php echo $new_title; ?>";</script>
This code doesn't has to be in the html header, it can be put in the html body.
Èpossibilemodificareiltitolo dellapagina conil codice?
Adesempio,supponiamo cheilnome dellapagina sia "Prenotailtuo ordine",ma voglio cambiarloin "Ordine libron. 123".
Ho cercato unpo 'su Google,hoguardato quie non ho vistonulla.Qualcuno sa di unplugin o di un hack?
wp_title restituisceiltitolo dellapaginamanon consente l'impostazione deltitolo dellapagina: http://codex.wordpress.org/Function_Reference/wp_title