Ottieni l'URL della pagina del blog impostato in Opzioni
5 risposta
- voti
-
- 2012-04-28
Per costruire sulla risposta di Sagive,ti consigliamo di racchiudere l'IDin get_permalink ()per ottenereil collegamentoeffettivo.
<a href="<?php echo get_permalink( get_option( 'page_for_posts' ) ); ?>">Our Blog</a>
To build on Sagive's answer, you'll want to wrap the ID in get_permalink() to get the actual link.
<a href="<?php echo get_permalink( get_option( 'page_for_posts' ) ); ?>">Our Blog</a>
-
- 2017-04-03
Apartire da WordPress 4.5puoi utilizzare:
get_post_type_archive_link( 'post' );
Questogestisce la logicaper ottenere l'URL correttoindipendentemente dalfatto chei post vengano visualizzati sulla homepage oin unapagina specifica.
As of WordPress 4.5 you can use:
get_post_type_archive_link( 'post' );
This handles the logic of getting the correct URL regardless of whether posts show up on the homepage or in a specified page.
-
- 2016-05-02
Ilmodomiglioreper controllare l'opzioneprima diimpostareilpermalink èil seguente:
if ( get_option( 'page_for_posts' ) ) { echo '<a href="'.esc_url(get_permalink( get_option( 'page_for_posts' ) )).'">'.esc_html__( 'Blog', 'textdomain' ).'</a>'; } else { echo '<a href="'.esc_url( home_url( '/' ) ).'">'.esc_html__( 'Blog', 'textdomain' ).'</a>'; }
Best way to check the option before setting the permalink is as follows:
if ( get_option( 'page_for_posts' ) ) { echo '<a href="'.esc_url(get_permalink( get_option( 'page_for_posts' ) )).'">'.esc_html__( 'Blog', 'textdomain' ).'</a>'; } else { echo '<a href="'.esc_url( home_url( '/' ) ).'">'.esc_html__( 'Blog', 'textdomain' ).'</a>'; }
-
- 2012-04-28
Puoi utilizzare
get_option
dipage_for_posts
per ottenere l'ID dellapaginaper assegnarlo a una variabile oper visualizzarlo comeeco se lo desideri.<?php $postsPageId = get_option('page_for_posts'); ?> <a href="index.php?p=<?php echo $postsPageId; ?>">Our Blog</a>
Per ulterioriinformazioni sull'opzioneget_optionpredefinita,visitare: Riferimento opzione
You can use
get_option
ofpage_for_posts
to get the page ID to either assign it to a variable or to echo it if you wish to do so.<?php $postsPageId = get_option('page_for_posts'); ?> <a href="index.php?p=<?php echo $postsPageId; ?>">Our Blog</a>
For additional information of the defualt get_option visit: Option Reference
-
- 2016-06-07
D'accordo con Hugh Man che èmeglio controllare l'opzioneprima difareeco al collegamento,ma èpossibileimpostare lapagina statica comeprimapaginae lasciare vuota lapagina deipost.In questo caso,il collegamentopunterà solo all'URL di casa.Un approcciomigliore èfornire unfallback allapagina di archivio deipost.Qualcosa di simile:
function slug_all_posts_link() { if ( 'page' == get_option( 'show_on_front' ) ) { if ( get_option( 'page_for_posts' ) ) { echo esc_url( get_permalink( get_option( 'page_for_posts' ) ) ); } else { echo esc_url( home_url( '/?post_type=post' ) ); } } else { echo esc_url( home_url( '/' ) ); } }
Agree with the Hugh Man that it is better to check the option before echoing the link, but it is possible to set the static page as a front page and leave the posts page empty. In this case, the link will just point to the home URL. A better approach is to provide a fallback to the posts archive page. Something like this:
function slug_all_posts_link() { if ( 'page' == get_option( 'show_on_front' ) ) { if ( get_option( 'page_for_posts' ) ) { echo esc_url( get_permalink( get_option( 'page_for_posts' ) ) ); } else { echo esc_url( home_url( '/?post_type=post' ) ); } } else { echo esc_url( home_url( '/' ) ); } }
-
Non devi usare `esc_url` lefunzioni`get_permalink`e `home_url`You don't have to `esc_url` the `get_permalink` and `home_url` functions
- 0
- 2017-04-07
- Tolea Bivol
Hoimpostatoilblogin modo che sia unapagina diversa dalla homepage.
Voglio avere un collegamento da single.php a questapagina delblog.
Esiste unafunzione cheestrae l'URL delblog?