Como eu estava trabalhando em um tema premium que enviarei ao ThemeForest na próxima semana, eu queria permitir que os usuários selecionassem sua página de portfólio (que é baseada em um modelo de página) em um menu suspenso no painel de administração para que ele mostrasse nas migalhas de pão dos posts de portfólio único. Algo que é ótimo para usabilidade e SEO, mas um pouco complicado de fazer.
Basicamente, tenho que armazenar todas as páginas do WordPress em uma matriz e permitir que o usuário selecione facilmente uma em um menu suspenso. O problema é que quando um usuário seleciona uma, a saída para essa opção se torna o título da página, não a URL, Slug ou ID. Então, fazendo uma pequena pesquisa no Google, me deparei com uma pequena função legal e modifiquei um pouco para permitir que você obtenha o link permanente de qualquer página com base apenas no título da página.
Obter link permanente da função de título da página do WordPress
Copie e cole a seguinte função em seu arquivo functions.php:
// obtém permalink por título
function get_page_permalink_from_name($page_name) {
global $post;
global $wpdb;
$pageid_name = $wpdb->get_var(“SELECT ID FROM $wpdb->posts WHERE post_title = ‘” . $page_name . “‘ LIMIT 0, 1”);
return get_permalink($pageid_name);
}
Agora use o seguinte método para ecoar o link permanente para o nome da página desejada:
<?php echo get_page_permalink_from_name(‘NOME DA SUA PÁGINA’); ?>