dtmm0148603
dtmm0148603
2018-12-03 12:13

WordPress自定义字段:types_render_field()没有以数组格式输出

已采纳

I am using the following code to get the output of types_render_field() in an array format.

$platforms = types_render_field('platforms-logo', array( 'raw' => true ));
 echo '<pre>';
  print_r( $platforms );
 echo '</pre>';

getting output:

http://mydomain/wp-content/uploads/2018/12/dot_net.png http://mydomain/wp-content/uploads/2018/12/dot_net-1.png

Expected Output:

array(
   [0]=> http://mydomain/wp-content/uploads/2018/12/dot_net.png,
   [1]=> http://mydomain/wp-content/uploads/2018/12/dot_net-1.png
)

Is there any way to get the expected output?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

2条回答

  • douqi5079 douqi5079 3年前

    I did it by using this solution link https://toolset.com/forums/topic/types_render_field-with-argument-output-raw-still-renders-does-shortcode/

    $platforms = get_post_meta(get_the_ID(), 'wpcf-platforms-logo', false);
    

    Note: The issue was that I was passing the custom field name platforms-logo without using the prefix wpcf-. When I used this custom field name wpcf-platforms-logo with the prefix wpcf-. It returns the required array as I was looking.

    点赞 评论 复制链接分享
  • dongshuiga2826 dongshuiga2826 3年前

    "raw" is used to get data in string so you might remove raw parameter or set it false.

    Something like this :

    $platforms = types_render_field('platforms-logo', array( 'raw' => false));
     echo '<pre>';
      print_r( $platforms );
     echo '</pre>';
    

    OR

    $platforms = types_render_field('platforms-logo', array());
     echo '<pre>';
      print_r( $platforms );
     echo '</pre>';
    
    点赞 评论 复制链接分享