我正在使用此功能将所有产品作为ID名称对,以将数据填充到选择框中。
function get_product_list_as_key_name(){
$args = array( 'post_type' => 'product','posts_per_page' => -1);
$products = get_posts( $args );
$products_list = array();
if(!empty($products)){
$i = 0;
foreach ($products as $value) {
$products_list[$i]['id'] = $value->ID;
$products_list[$i]['name'] = strlen($value->post_title) > 25 ? substr(strip_tags($value->post_title), 0, 25) . "..." : $value->post_title;
$i++;
}
}
return $products_list;
}
有没有更好的方法呢?(任何默认功能?)
答案 0 :(得分:0)
不,您必须手动执行此操作。或者您可以使用自定义查询
执行此操作 function get_product_list_as_key_name(){
global $wpdb;
$query = "SELECT ID,post_title FROM {$wpdb->prefix}posts where post_type='product' AND post_status='publish'";
$products_array = $wpdb->get_results( $wpdb->prepare( $query ) );
return $products_array;
}
这比你的更快。