如何修复此 "Undefined index: post_type" 错误?
How to fix this "Undefined index: post_type" error?
我收到这个错误:
Notice: Undefined index: post_type in /opt/bitnami/apps/wordpress/htdocs/wp-content/themes/porto-child/functions.php
on line 225
第 225 行对应于以下代码中的 switch ( $query->query_vars['post_type'] )
:
// Set Number of Custom Post Type Displayed Per Page
function set_posts_per_page_for_haivision_custom_post_type($query)
{
switch ( $query->query_vars['post_type'] )
{
case 'press_release':
$query->query_vars['posts_per_page'] = -1;
break;
case 'video_portal':
$query->query_vars['posts_per_page'] = -1;
break;
default:
break;
}
return $query;
}
if( !is_admin() )
{
add_filter( 'pre_get_posts', 'set_posts_per_page_for_haivision_custom_post_type' );
}
有人能帮忙吗?
post_type
并不总是在 WP 查询中使用,您可以将 switch
语句包装在 if
中以检查其存在:
function set_posts_per_page_for_haivision_custom_post_type($query)
{
if( isset( $query->query_vars['post_type'] ) )
{
switch ( $query->query_vars['post_type'] )
{
case 'press_release':
$query->query_vars['posts_per_page'] = -1;
break;
case 'video_portal':
$query->query_vars['posts_per_page'] = -1;
break;
default:
break;
}
}
return $query;
}
...但是,WP_Query
提供了2种方法来访问它的变量:get
and set
,前者已经检查了你正在寻找的变量是否因为存在,所以你不必自己做:
function set_posts_per_page_for_haivision_custom_post_type($query)
{
switch ( $query->get('post_type') )
{
case 'press_release':
$query->set('posts_per_page', -1);
break;
case 'video_portal':
$query->set('posts_per_page', -1);
break;
default:
break;
}
return $query;
}
我收到这个错误:
Notice: Undefined index: post_type in /opt/bitnami/apps/wordpress/htdocs/wp-content/themes/porto-child/functions.php on line 225
第 225 行对应于以下代码中的 switch ( $query->query_vars['post_type'] )
:
// Set Number of Custom Post Type Displayed Per Page
function set_posts_per_page_for_haivision_custom_post_type($query)
{
switch ( $query->query_vars['post_type'] )
{
case 'press_release':
$query->query_vars['posts_per_page'] = -1;
break;
case 'video_portal':
$query->query_vars['posts_per_page'] = -1;
break;
default:
break;
}
return $query;
}
if( !is_admin() )
{
add_filter( 'pre_get_posts', 'set_posts_per_page_for_haivision_custom_post_type' );
}
有人能帮忙吗?
post_type
并不总是在 WP 查询中使用,您可以将 switch
语句包装在 if
中以检查其存在:
function set_posts_per_page_for_haivision_custom_post_type($query)
{
if( isset( $query->query_vars['post_type'] ) )
{
switch ( $query->query_vars['post_type'] )
{
case 'press_release':
$query->query_vars['posts_per_page'] = -1;
break;
case 'video_portal':
$query->query_vars['posts_per_page'] = -1;
break;
default:
break;
}
}
return $query;
}
...但是,WP_Query
提供了2种方法来访问它的变量:get
and set
,前者已经检查了你正在寻找的变量是否因为存在,所以你不必自己做:
function set_posts_per_page_for_haivision_custom_post_type($query)
{
switch ( $query->get('post_type') )
{
case 'press_release':
$query->set('posts_per_page', -1);
break;
case 'video_portal':
$query->set('posts_per_page', -1);
break;
default:
break;
}
return $query;
}