我新建了一个登录页面的模板,命名为login.php,并且后台已经有页面在使用这个模板了,那我就可以使用以下函数来获取使用login.php这个模板的页面id:
function get_page_id_from_template($template) { global $wpdb; // 多个页面使用同一个模板我就没辙了 $page_id = $wpdb->get_var($wpdb->prepare("SELECT `post_id` FROM `$wpdb->postmeta`, `$wpdb->posts` WHERE `post_id` = `ID` AND `post_status` = 'publish' AND `meta_key` = '_wp_page_template' AND `meta_value` = %s LIMIT 1;", $template)); return $page_id; }
很多人可能会问,获取页面id来干什么?通过id来获取登录页面的链接不行吗:
<a href="<?php echo get_permalink(get_page_id_from_template('login.php')) ?>>登录</a>
也有人会问,通过页面标题和别名不也可以获取到页面id吗?如果主题是给客户用了,你知道客户会用什么样的标题?强制客户用你指定的标题?那你太不人性化了吧!
标签:WordPress
相关阅读 >>
网易蜂巢的docker容器中架设或迁移wordpress的教程
文档格式转换大全:怎么把word文档转成pdf,wps文档转换成word
详解wordpress中分类函数wp_list_categories的使用
wordpress如何设置文章置顶以及区分置顶文章与普通文章
wordpress发布时链接地址依然指向本地而不是域名解决方法
使用cdn和ajax加速wordpress中jquery的加载
更多相关阅读请进入《wordpress》频道 >>