GET_PAGE_BY_TITLE()没有任何返回

时间:2012-07-17 作者:Dave Legassick

我想用get_page_by_title() 通过重力表单获取父自定义立柱类型的值。基本上,患者姓名存储在自定义贴子中,患者id是贴子标题,新的Gravity表单将填充他们的药物。

根据建议from the Types plugin forum, 我试图在一个隐藏字段中建立我的帖子类型的父级。基本操作正常,我可以向字段发送一个值,如下所示:

add_filter(\'gform_field_value_parent_id\', \'parent_id\');
function parent_id() {
    return "test";
}
这将使“测试”在现场进行得很好,但这没有任何作用:

add_filter(\'gform_field_value_parent_id\', \'parent_id\');
function parent_id() {
    $page = get_page_by_title(\'TESTID\', \'patient\');
    return $page;   
}
TESTID 是帖子的标题,帖子类型是耐心,我试过有没有帖子类型,但都没用。此代码在我的函数中。php,我确信我遗漏了一些明显的东西,但我就是看不到,有人能帮忙吗?

1 个回复
SO网友:Max Yudin

中缺少第二个参数get_page_by_title. 看见get_page_by_title() reference. 在没有明确指定的情况下进行测试时$output$post_type, 默认情况下,此函数返回类型为“page”的post对象。所以你必须回去$page->post_parent 对于患者的父页面ID:

add_filter(\'gform_field_value_parent_id\', \'parent_id\');
function parent_id() {
    // three parameters here
    $page = get_page_by_title(\'TESTID\', \'OBJECT\', \'patient\');
    // return patient\'s parent page ID
    if( !is_null($page) )
        return $page->post_parent;
}
附:这是一个很好的实践WP_DEBUG 在里面wp-config.php 在开发阶段查看所有错误和警告。通常,它有助于更快地理解瓶颈。

结束

相关推荐

<?PHP ECHO$TITLE?>与<?PHP ECHO esc_html($TITLE);?>WordPress安全

阅读这篇伟大的文章Data Validation and Sanitization in Wordpress 我在我的博客标题中注意到了这一点。php,我用过<?php echo $title ?> 在一对代码中。根据上述情况article, 为了保护数据安全,必须验证数据本身,因为未经验证的数据容易受到黑客的攻击。根据作者的建议,我更改了我的首字母<?php echo $title ?> 进入<?php echo esc_html( $title ); ?>. 这是更