Php is_page()不工作
好吧,我一直在想这个问题。我并不完全是一名PHP开发人员,但通常可以通过查看示例和Wordpress文档来了解情况。然而我在挣扎 我正在尝试向Wordpress模板文件添加一段“简单”的代码,但它不起作用。基本上我想在某些页面上显示内容,在其他页面上显示不同的内容。这就是我到目前为止所做的:Php is_page()不工作,php,wordpress,Php,Wordpress,好吧,我一直在想这个问题。我并不完全是一名PHP开发人员,但通常可以通过查看示例和Wordpress文档来了解情况。然而我在挣扎 我正在尝试向Wordpress模板文件添加一段“简单”的代码,但它不起作用。基本上我想在某些页面上显示内容,在其他页面上显示不同的内容。这就是我到目前为止所做的: <?php if(is_page('123')): ?> This text <?php endif; ?> <?php if(!is_page('123')): ?&
<?php if(is_page('123')): ?>
This text
<?php endif; ?>
<?php if(!is_page('123')): ?>
That text
<?php endif; ?>
本文
该文本
非常感谢您的帮助。您可以尝试以下方法:
global $post;
<?php if( $post->ID == 346) { ?>
<!-- do your stuff here -->
<?php } ?>
<?php if(is_page(123)): ?>
This text
<?php endif; ?>
<?php if(!is_page(123)): ?>
That text
<?php endif; ?>
global$post;
或
您可以尝试以下方法:
global $post;
<?php if( $post->ID == 346) { ?>
<!-- do your stuff here -->
<?php } ?>
<?php if(is_page(123)): ?>
This text
<?php endif; ?>
<?php if(!is_page(123)): ?>
That text
<?php endif; ?>
global$post;
或
您应该提供更多上下文。提供的代码反映了什么?虽然你认为它应该说“这段文字”,但它总是说“那段文字”吗 也许太明显了,但“123”是这篇文章的名字吗 如果要检查具有ID的帖子,请尝试以下操作:
global $post;
<?php if( $post->ID == 346) { ?>
<!-- do your stuff here -->
<?php } ?>
<?php if(is_page(123)): ?>
This text
<?php endif; ?>
<?php if(!is_page(123)): ?>
That text
<?php endif; ?>
本文
该文本
使用“123”使其成为一个字符串,并搜索带有标题的帖子或带有该字符串的slug。您应该提供更多上下文。提供的代码反映了什么?虽然你认为它应该说“这段文字”,但它总是说“那段文字”吗 也许太明显了,但“123”是这篇文章的名字吗 如果要检查具有ID的帖子,请尝试以下操作:
global $post;
<?php if( $post->ID == 346) { ?>
<!-- do your stuff here -->
<?php } ?>
<?php if(is_page(123)): ?>
This text
<?php endif; ?>
<?php if(!is_page(123)): ?>
That text
<?php endif; ?>
本文
该文本
使用“123”使其成为一个字符串,并使用该字符串搜索带有标题或段塞的帖子。您是否在WP循环中使用此选项?如果是,请注意: 由于某些全局变量在循环过程中被覆盖, is_page()将不起作用。为了在循环后调用它,必须 首先调用wp_reset_query() (发件人:)
另外,您不应该将页面ID加引号-它是一个整数。您是否在WP循环中使用它?如果是,请注意: 由于某些全局变量在循环过程中被覆盖, is_page()将不起作用。为了在循环后调用它,必须 首先调用wp_reset_query() (发件人:)
另外,您不应该将页面ID加引号-它是一个整数。您不应该在两个语句之间使用逻辑“Not”运算符。一个简单的
if/else
就足够了。也就是说:
如果没有为站点上的现有页面设置当前查询,则函数将返回false
可能的条件:
全局查询已被修改/覆盖。如果您在此代码之前使用-停止!配合使用
名为'123'
的记录实际上不是页面<代码>is_页面专门检查页面
帖子类型。考虑姐妹函数或
同样,您是否在寻找ID:123?如果是,请删除引号。ID应作为整数传递:123
您正在“循环”中使用此功能,它可能会产生意外的交互。相反,您需要使用另一个限定语句,例如if(get_the_ID()==123)){
或if($post->ID==123){
此代码过早地挂接到操作挂钩上,例如插件加载
,其中可能尚未设置全局查询和post对象
检查以确保这些条件是否适用,然后可以修改代码,使其更加简洁:
if( is_page( 123 ) ){
echo 'This is page ID 123';
} else {
echo 'This is NOT page ID 123';
}
或者更进一步
您不需要在两个语句之间使用逻辑“Not”运算符。一个简单的
if/else
就足够了。也就是说:
如果没有为站点上的现有页面设置当前查询,则函数将返回false
可能的条件:
全局查询已被修改/覆盖。如果在此代码之前使用-stop!请与一起使用
<> >名称>代码> 123 '/COD>实际上不是一个页面。<代码> iSpage 专门检查<代码>页面< /代码>帖子类型。考虑姐妹函数或
同样,您是否在寻找ID:123?如果是,请删除引号。ID应作为整数传递:123
您正在“循环”中使用此语句,它可能会产生意外的交互。您需要使用另一个限定语句,例如if(get_The_ID()==123)){
或if($post->ID==123){
此代码过早地挂接到操作挂钩上,例如插件加载
,其中可能尚未设置全局查询和post对象
检查以确保这些条件是否适用,然后可以修改代码,使其更加简洁:
if( is_page( 123 ) ){
echo 'This is page ID 123';
} else {
echo 'This is NOT page ID 123';
}
或者更进一步
是否应该有大于号“
对不起,不。是否应该有大于号“对不起,不。不”