学做网站培训课程介绍

当前位置:

WordPress 获取当前网页URL并自动跳转404页面

在很多的 WordPress 主题或者插件功能的开发中,我们总是需要获取到 WordPress程序给每个页面定义的 ID,不然也某些情况下是无法确定这是哪一个页面,针对于文章或者页面的 ID 获取基本可以使用 get_the_ID()这个函数来直接获取,但是在循环外该函数是无法获取到值的。

Wordpress 获取当前网页URL和网页ID

WordPress获取当前网页URL地址:

home_url(add_query_arg(array()));

但二级目录会出错,可用下面的代码来获取当前URL;

//放入FUNCTIONS 获取当前URL
function curPageURL() {
$pageURL = 'http://';
if ($_SERVER["HTTPS"] == "on") {
$pageURL= "https://";
}
if ($_SERVER["SERVER_PORT"] != "80") {
$pageURL = $pageURL.$_SERVER["SERVER_NAME"].
":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
} else {
$pageURL = $pageURL.$_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
}
return $pageURL;
}
<?php echo curPageURL();?>

通过URL获取文章页ID:

url_to_postid($current_url);

直接获取文章页ID:

global $post;
$id = $post -> ID;
echo $id;

通过ID获取网页链接地址:

get_permalink($pid);

通过URL获取分类页ID:

get_category_link( $category_id );

应用实例:通过ID获取URL,然后再判断URL里是否包含“?”,然后跳转404网页;

<?php
$current_url = home_url(add_query_arg(array()));
$pid = url_to_postid($current_url);
$link = get_permalink($pid);
if(strpos($current_url,'?') == false){
global $wp_query;
$wp_query->set_404();
status_header(404);
nocache_headers();
include( get_query_template( '404' ) );
die();
}
?>

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注

在线
客服
手机二维码 手机二维码
返回顶部 返回顶部

温馨提示

为防止临时会话收不到QQ信息,请加QQ好友咨询
论坛客服李欣蓉QQ:2289556365

或者使用微信扫码咨询

x

温馨提示

为防止临时会话收不到QQ信息,请加QQ好友咨询
论坛客服孙丽QQ:2399118408

或者使用微信扫码咨询

x

温馨提示

为防止临时会话收不到QQ信息,请加QQ好友咨询
论坛客服刘淼淼QQ:1135082670

或者使用微信扫码咨询

x

温馨提示

为防止临时会话收不到QQ信息,请加QQ好友咨询
论坛讲师张启亚QQ:2357852508

或者使用微信扫码咨询

x

温馨提示

为防止临时会话收不到QQ信息,请加QQ好友咨询
论坛讲师方重华QQ:1730401718

或者使用微信扫码咨询

x

温馨提示

为防止临时会话收不到QQ信息,请加QQ好友咨询
论坛讲师唐超QQ:909722045

或者使用微信扫码咨询

x

温馨提示

为防止临时会话收不到QQ信息,请加QQ好友咨询
论坛讲师赵鹏QQ:614862774

或者使用微信扫码咨询

x

微信咨询

可使用微信扫下方二维码加好友咨询。

x