从函数.php获取自定义字段值

时间:2020-07-30 作者:Dennis

我需要在函数中具有自定义字段的值。php文件。这就是我已经拥有的。我可以在页面模板上获取该值,但在这种情况下,函数中需要该值。php文件,因为我需要facewp函数中的该值。

add_filter( \'facetwp_preload_url_vars\', function( $url_vars ) {
    $offer_id = get_field(\'offer_type\'); // need this value from the current page

    $term = get_term( $offer_id, \'offer\' ); // offer = tax slug
    $slug = $term->slug;
    
    if ( empty( $url_vars[\'offer_type\'] ) ) {
        $url_vars[\'offer_type\'] = [$slug];
    }
    return $url_vars;
} );
我怎样才能做到这一点?现在我得到一个空变量。

1 个回复
SO网友:Dennis

Found a solution:

add_filter( \'facetwp_preload_url_vars\', function( $url_vars ) {
        //get the id of the current page
        $url = \'http://\' . $_SERVER[ \'HTTP_HOST\' ] . $_SERVER[ \'REQUEST_URI\' ];
        $current_post_id = url_to_postid( $url );

        //get the offer_type (custom field) from the current page id
        $offer_id = get_field(\'offer_type\', $current_post_id); //returns an id
        
        //get the taxonomy slug from the offer_id
        $term = get_term( $offer_id, $taxonomy );
        $slug = $term->slug;

        //preselect the offer_type facet
        if ( empty( $url_vars[\'offer_type\'] ) ) {
            if($slug) {
                $url_vars[\'offer_type\'] = [$slug];
            }
        }
        return $url_vars;
} );

相关推荐

本地主机上的WordPress(LAMP)-无法登录,只能重定向到wp-login.php

我在我的新笔记本电脑上安装了一个LAMP服务器,并从实时服务器下载了一个网站到我的本地机器。一切似乎都正常,但当我转到时,我无法登录http://localhost/mysite/wp-login.php并输入正确的详细信息,它只会重定向回wp登录。没有实际登录的php。我在本地机器上安装了一个新的WordPress,所以它是一个新的wp配置文件。我确保了wp\\u选项中的站点URL是正确的,我确保了用户名和密码是正确的,我尝试下载了。htaccess文件,我尝试在WP配置中定义WP\\u HOME和WP