¿Es posible obtener el enlace permanente de una página solo con la babosa? Soy consciente de que puede obtener el enlace permanente de la página desde la ID usando get_page_link()
:
<a href="<?php echo get_page_link(40); ?>">Map</a>
Tengo curiosidad por saber si hay alguna manera de hacer lo mismo con la babosa de una página, como esta:
<a href="<?php echo get_page_link('map'); ?>">Map</a>
permalinks
pages
slug
Sampson
fuente
fuente
get_permalink(get_page_by_path('contact')->ID));
?get_page_by_path()
devuelve una matriz de toda la información de la página.get_permalink()
toma una ID de página como primer argumento. Pensé que tendría que pasar explícitamente el valor de ID.Creo que esto podría ser mejor:
siguiendo el patrón de "original"
get_page_by_title
de wordpress . (línea 3173)rgds
fuente
function get_page_by_slug($page_slug, $output = OBJECT, $post_type = 'page' ) { global $wpdb; $page = $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM $wpdb->posts WHERE post_name = %s AND post_type= %s AND post_status = 'publish'", $page_slug, $post_type ) ); if ( $page ) return get_page($page, $output); return null; }
\WP_Post
ella, y eso se resuelve directamente en todas las funciones de WordPress que verifican otros valores.\WP_Post
también proporciona métodos directamente para encontrar la mayoría de los datos relacionados con la publicación.Este es un método publicado por Tom McFarlin en su blog :
Funciona con tipos de publicación personalizados y tipos de publicación incorporados (como
post
ypage
).fuente
la respuesta aceptada es incorrecta porque las páginas jerárquicas no funcionan así. En pocas palabras, la babosa no siempre es la ruta de la página o publicación. Por ejemplo, su página tiene un hijo, etc., la ruta será
parent-slug/child-slug
yget_page_by_path
no se encontrará dechild-slug
esta manera. La solución adecuada es esta:fuente
Prueba esto:
get_page_by_path( 'path' )
devuelve el objeto de página / publicación que luego puede ser utilizadoget_page_link()
ya que acepta el objeto de publicación / página y devuelve el enlace permanente.fuente
Use esta función por
fuente