WordPress根据页面名称获取页面id方法
在制作企业主题时,我们通常需要在首页显示公司简介,而公司简介是一个单页面。要获得这个页面的内容并不难,代码如下:
<?php
$recent = new WP_Query('page_id=1');
while ( $recent->have_posts() ) : $recent->the_post(); ?>
<?php the_content(); ?>
<?php endwhile; ?>
这样就能输出ID为1的页面的内容。但是,当用户在使用该主题时,他的公司简介页面ID不一定是1,所以就需要修改源码中的页面ID。一些人性化点的主题提供了主题后台管理功能,那么用户在后台输入对应的ID号就OK了。但对于初级用户来说,可能还不知道怎么获取想要的页面ID。
那么,我们让主题更个性化一点吧!
让用户填写页面名称就能输出相应页面的内容,此时,我们需要根据用户提供的页面名称获得这个页面的ID才能输出用户想要的内容。
WordPress根据页面名称获取页面id代码如下:
function hui_get_page_ID($pageName) {
global $wpdb;
$pages = get_pages();
for($i = 0; $i < count($pages); $i++) {
if($pageName == $pages[$i]->post_title) $page_slug = $pages[$i]->post_name;//根据用户提供的页面名称获得页面别名
}
if($page_slug) {
//根据页面别名获得页面ID
$page_ID = $wpdb->get_var(“SELECT ID FROM $wpdb->posts WHERE post_name = ‘” . $page_slug . “‘ AND post_status = ‘publish’ AND post_type = ‘page’”);
return $page_ID;
} else {
return false;
}
}
把这段代码放到主题文件function.php中,
函数调用示例:
<?php hui_get_page_ID('联系我们'); ?>
以上代码将获得页面“联系我们”的ID。
- wordpress最新、热评和随机日志(文章)函数三体合一
最新日志、热评日志、随机日志这三个功能在函数上是很相近的,无非就是一个排序的不同,最新日志是按照发布时间排序,热评日志是按照评论数量排序, 随机日志则是随机排序。所以我索性就把这三个函数合并为一,一...
- WordPress 技巧:使用文件缓存侧边栏
下面的代码除了可以缓存侧边栏,也可以把你想要缓存的多数内容缓存。 几点说明: 1. 可以自己修改缓存时间,怎么修改,看下面代码的唯一的注释。 2. 一旦采用这样的缓存,在缓存时间内对 sidebar 做任何修改都...
- 实用的WordPress外链跳转代码
实用的WordPress外链跳转代码分享。来自张戈博客,备忘。 PHP版 <?php //防止 WordPress 遭受恶意 URL 请求。From:http://blog.wpjam.com/m/block-bad-queries/ if(strlen($_SERVER['REQUEST_URI']) > 38...
- wordpress直接跳转到外部链接代码
作用:点击文章标题直接跳转到外部网址链接。实现过程非常简单,利用了 wordpress 强大的自定义字段~ 首先,打开主题文件 functions.php,粘贴下面的代码到里面: function lxtx_post_link() { global $post; $t...
- 解决WordPress"要执行请求的操作,WordPress需要访问您网页服务器的权限"问题
解决WordPress"要执行请求的操作,WordPress需要访问您网页服务器的权限"问题 方法一、授权目录 chown -R www-data /home/wwwroot/html chown -R apache /home/wwwroot/html chmod -R 775 /home/wwwroo...
- 完美为网站全部页面添加canonical标签(wordpress)
完美为wordpress网站添加canonical标签代码分享。 什么是canonical标签 rel=”canonical” 这个标签已经推出很久了,canonical 是 Google、雅虎、微软等搜索引擎一起推出的一个标签,它的主要作用是用来解决由于网...
- WordPress 完美防垃圾评论技巧
WordPress 完美防垃圾评论技巧。使用AJAX 评论提交并清空或删除wp-comments-post.php一直是比较完美的防止垃圾评论的方法,但是这个方法有一个缺点,就是升级或者重装WordPress 必须对文件重新进行处理了,一定程...
- WordPress免插件生成完整站点地图(sitemap.xml)的php代码
WordPress免插件生成完整站点地图(sitemap.xml)的php代码,可以同时生成首页、文章、单页面、分类和标签的sitemap,又可以删除一个wordpress插件了! <?php require('./wp-blog-header.php'); header("C...