Inserire il titolo della pagina nell'intestazione?
-
-
Se è stata data risposta allatua domanda,contrassegna la risposta accettata cometale.Grazie.If your question has been answered please mark the accepted answer as such. Thank you.
- 0
- 2015-02-16
- tacudtap
-
3 risposta
- voti
-
- 2015-02-15
Seti serve soloiltitolo,puoi richiederlofacilmentefuori dal ciclo.
Prova a chiamare
the_title()
nell'intestazione.DovrebbefunzionareMa deviessere consapevole che senonmetti una condizione,ognipagina deltuo sito webmostreràil suotitolonella sezione dell'intestazione.
MODIFICA: lafunzione da chiamare è
get_the_title($post->ID)
poichéthe_title()
nonti permette di specificare l'id delpost come argomento.Puoi controllareil Wordpress Codex per lafunzione cheti consente diinterrogareinformazioni daltuopost al difuori del ciclo.If you only need the title you can request it outside the loop easily.
Try and call
the_title()
in your header. It should workBut you have to be aware that if you don't put a condition, each page of your website will display its title in the header section.
EDIT: the function to call is
get_the_title($post->ID)
sincethe_title()
doesn't allow you to specify the post id as an argument. You can check on the Wordpress Codex for function allowing you to query information from your post outside the loop.-
the_title deveessere utilizzato solo all'interno del ciclo.Per ottenereiltitolo di unpost al difuori del ciclo usaget_the_title ($post-> ID)the_title is intended to only be used within the loop. To get the title of a post outside of the loop use get_the_title( $post->ID )
- 0
- 2015-02-15
- Rachel Baker
-
Sì,scusa ho confusoi due.Yes sorry I confused the two.
- 0
- 2015-02-15
- mathieuhays
-
In realtà,ho raddoppiatoil controlloe "the_title ()"funziona al difuori del ciclo.In caso dimodelli di archivio verrà stampatoiltitolo delprimo articolo.In caso di `single.php`e`page.php` stamperàiltitolo dellapagina.Puòessere utilein alcuni casimanon consigliato dalla documentazioneActually, I doubled check and `the_title()` do work outside the loop. In case of the archive templates it will print the title of first article. In case of `single.php` and `page.php` it will print the page title. Can be useful in some cases but not recommended by the documentation
- 0
- 2015-02-15
- mathieuhays
-
Moltointeressante!Come ho detto,sononuovoin WP,quindi _nulla_ è ovvioperme ... (inclusoilfatto che,a quantopare,nonpossopremereinvioper unanuova riga all'interno di un commento ---immagino chepubblicherò una riga separatavoce di seguito.Very interesting! As I said, I'm new to WP, so _nothing_ is obvious to me... (Including the fact that, apparently, I can't hit enter for a newline within a comment --- guess I'll post a separate entry below.
- 0
- 2015-02-15
- user781470
-
- 2015-02-15
Devi usare wp_title ();
Se stai cercando di utilizzareiltitolo delpostin questomodo:
<head> <title> post title here </title> </head>
Dovresti aggiungere wp_title ('',true,'');
<head> <title> <?php wp_title('', true,''); ?> </title> </head>
Adesempio: seilnome deltuopostera Hello World,Hello World ora verrà visualizzatonella scheda.
You need to use wp_title();
If you're trying to use the post title like so:
<head> <title> post title here </title> </head>
You would need to add the wp_title(' ', true , ' ');
<head> <title> <?php wp_title('', true,''); ?> </title> </head>
For example: If your post name was Hello World, Hello World would now show up in the tab.
-
Le domandebasate solo sui linknon sonobuone.Perfavore,spiega cosafaree perché risponde alla domanda.E,sepossibile,pubblica unesempio.Link-only based questions as not good. Please, explain what to do and why it answers the question. And, if possible, post an example.
- 0
- 2015-02-15
- cybmeta
-
Grazie.Hai rispostoprimama ho dovuto accettare l'altra rispostapoiché wp_titlenon avrebbefunzionatoperme.Comunque,buono a sapersi su wp_title.Thanks. You answered first but I had to accept the other response since wp_title wouldn't work for me. Still, good to know about wp_title.
- 0
- 2015-02-16
- user781470
-
- 2018-11-15
Sebbenei metodi sopramenzionatifunzioninoperilmomento,gli sviluppatoriprincipali di WordPress consiglia come segue:
Apartire da 4.1e Twenty Fifteen,ilmodo consigliatoperi temi per visualizzarei titoli è aggiungendoil supporto deltema come questo: - Konstantin Obenland
Puoi aggiungere questa riganelfilefunctions.php deltuotema dopo after_setup_theme . o
dalla stessapagina,
Apartire da 4.1e Twenty Fifteen,ilmodo consigliatoperi temi per visualizzarei titoli è aggiungereil supporto deltemain questomodo:
function theme_slug_setup() { add_theme_support( 'title-tag' ); } add_action( 'after_setup_theme', 'theme_slug_setup' );
Il supporto dovrebbeessere aggiunto all'azione after_setup_theme oinit,ma entroe non oltre. Non accetta ulteriori argomenti.
Ciò chefa è lasciare che WordPress scelgailtitolo dellapaginanell'intestazione,senza utilizzaretag hardcodednelfile header.php.
iltuotitolo verrà visualizzatonel seguenteformato.
<"
Page Title - Site Title
While above mentioned methods are working for the moment, WordPress core developers recommends as follows:
Starting with 4.1 and Twenty Fifteen, the recommended way for themes to display titles is by adding theme support like this: -Konstantin Obenland
You can either add this line in your theme's functions.php file after the after_setup_theme. or
from same page,
Starting with 4.1 and Twenty Fifteen, the recommended way for themes to display titles is by adding theme support like this:
function theme_slug_setup() { add_theme_support( 'title-tag' ); } add_action( 'after_setup_theme', 'theme_slug_setup' );
Support should be added on the after_setup_theme or init action, but no later than that. It does not accept any further arguments.
What this do is, let WordPress choose the page title in header, without using hardcoded tags in header.php file.
your title will be displays as following format.
Page Title - Site Title
Normalmente,in WordPress,iltitolo dellapagina viene visualizzatonell'area del contenuto. Vorrei cheiltitolo dellapaginafosse visualizzatonell'area dell'intestazione. Sembra cheperfarlo,dovrei rimuoverlo dalla suaposizione correntein content-page.phpe posizionarloin header.php. Ma content-page.php viene chiamato dapage.php,che chiama lapagina di contenuto da un ciclo while (
while ( have_posts() ) : the_post(); ...
) - quindi Dovrei spostare o copiare anche questonell'intestazione,penso. Sembra un sacco diguai.Avrebbepiù senso spostareparte dell'html dell'intestazionenel contenuto dellapagina,in modo danon dovereseguireil ciclo whilepiù di una volta?
(Come strumento di apprendimento,sto ricreando un sito htmlesistente con WordPress,utilizzandoiltemainiziale _s.)
--- MODIFICA ---
Grazieper le risposte. Molto utile. Eccoi risultati di alcunitest,basati sulletue risposte. Datoil codice seguente,nell'intestazione (fuori da Loop):
Quando visualizzato dallamiapagina Chi siamo,ottengo:
Quando visualizzato dallamia homepage,ottengo:
E se visualizzato da unpost "Hello World",ottengo:
Conclusione:posso usarethe_title () o single_post_title () (wp_title restituiscepiùtesto di quanto voglio). Epossotestareis_page (...)per visualizzare unnome dipagina specifico quando visualizzo unpost.
Grazie!