WordPress: подсчитывать значения настраиваемых полей и отображать число

Некоторое время оглядывался и не мог найти решение. Итак, мой вопрос:

У меня есть настраиваемое поле (флажок), например: my_custom_field_checkbox, И у меня есть 5 сообщений, у которых установлен этот флажок. Мне нужно получить номер пять, чтобы использовать его в начале, например:

Администратор:

[checkbox] Я читаю эту книгу

Внешний интерфейс:

Люди, которые читают эту книгу (5)

Итак, как я мог это сделать? Спасибо!

РЕДАКТИРОВАТЬ:


Хорошо, я изучал этот вопрос и гуглил, и я придумал этот код, он работает, и он позволяет мне подсчитывать разные значения одного и того же настраиваемого поля:

$rbBuildCatsArray = array('cat_top_managers_args'=>__('Top management, managers','ibchrrb'),'cat_car_business_args'=>__('Car Business','ibchrrb'),'administrative_staff'=>__('Administrative staff','ibchrrb'),'banks_insurance_leasing'=>__('Banks, insurance, leasing','ibchrrb'),'safety_guard'=>__('Safety, guard','ibchrrb'),'accounting_finance_enterprise_economy'=>__('Accounting, finance, enterprise economy','ibchrrb'),'public_service_nonprofit_organizations'=>__('Public service, non-profit organizations','ibchrrb'),'design_art_entertainment'=>__('Design, art, entertainment','ibchrrb'),'home_staff_service'=>__('Home staff, service','ibchrrb'),'procurement_supply_fea'=>__('Procurement, supply, FEA','ibchrrb'),'internet_it_telecom_communication'=>__('Internet, IT, telecom, communication','ibchrrb'),'logistics_transport_storage'=>__('Logistics, transport, storage','ibchrrb'),'marketing_advertising_pr'=>__('Marketing, Advertising, PR','ibchrrb'),'healthcare_jobs'=>__('Healthcare Jobs','ibchrrb'),'science_education_consulting'=>__('Science, education, consulting','ibchrrb'),'hr_department_hr_training'=>__('HR department, HR, training','ibchrrb'),'part_time_seasonal_work'=>__('Part-time, seasonal work','ibchrrb'),'sales'=>__('Sales','ibchrrb'),'industry_agriculture'=>__('Industry, agriculture','ibchrrb'),'jobs_for_youth'=>__('Jobs for Youth','ibchrrb'),'workmen_laborers'=>__('Workmen, laborers','ibchrrb'),'restaurateurs_chefs_waiters'=>__('Restaurateurs, chefs, waiters','ibchrrb'),'retail_trade'=>__('Retail, trade','ibchrrb'),'media_publishing_printing'=>__('Media, publishing, printing','ibchrrb'),'sports_fitness_beauty_salons'=>__('Sports, fitness, beauty salons','ibchrrb'),'real_estate'=>__('Real estate','ibchrrb'),'tourism_hotels'=>__('Tourism, hotels','ibchrrb'),'services_repair_and_maintenance'=>__('Services, repair and maintenance','ibchrrb'),'jurisprudence'=>__('Jurisprudence','ibchrrb'));

foreach($rbBuildCatsArray as $category=>$label){
$unqCatVariable = '$cat_'.$category.'_args';
$unqCatVariableCount = '$cat_'.$category.'_count';

$unqCatVariable = array('post_type' => 'paibcresume','posts_per_page' => -1,'meta_query'=>array(),'meta_key' => '');
$unqCatVariable['meta_query'][] = array('key'=>'rbwwcategoryhidden','value'=>$label,'compare'=>'LIKE');
$unqCatVariableCount = new WP_Query($unqCatVariable);

echo '<div>' . $label . ' ' . $unqCatVariableCount->post_count . '</div>';
}

РЕДАКТИРОВАТЬ:


Вот скриншот того, о чем я говорил. У меня есть настраиваемое поле в моем типе сообщения. Я получаю значения этого настраиваемого поля и считаю их (розовая зона).

введите описание изображения здесь

0

Решение

Для этого вы можете использовать как встроенную функцию, так и прямой sql.

query_posts('meta_key=my-key-name&meta_value=my-meta-value');
echo $wp_query->found_posts;

или используйте SQL-запрос

$sql = "SELECT count(DISTINCT pmeta.post_id)
FROM $wpdb->postmeta pmeta
JOIN $wpdb->posts posts ON (posts.ID = pmeta.post_id)
WHERE pmeta.meta_key = 'my-meta-key'
AND pmeta.meta_value = 'my-meta-value'
AND posts.post_type = 'post'
AND posts.post_status = 'publish' ";

$count = $wpdb->get_var($sql);
echo $count;
1

Другие решения

Других решений пока нет …