4ответ(ов) в теме
(повтор)
Есть сайт на котором пользователи могут размещать свои записи. Есть потребность облегчить им этот процесс - а именно: не заставлять заполнять отдельное поле меток, а сделать так, чтоб заполняемые ими произвольные поля становились метками. И потом по этим меткам можно было сделать поиск для удобства тех же пользователей.
Например, есть обязательное произвольное поле с выпадающим списком "синий", "желтый", "красный". Человек выбирает цвет, публикует запись и потом можно делать выборку по метке (по выбранным цветам).
Есть ли возможность это реализовать?
Один из вариантов:
add_action('update_post_rcl','add_tags_without_postmeta',10,2);
function add_tags_without_postmeta($prod_id,$data){
//Перечисляем в массиве список произвольных полей,
//которые будем использовать для создания меток
$metas = array('meta_1,'meta_2','meta_3',...);
$tags = array();
foreach($metas as $meta){
if(!isset($_POST[$meta])) continue;
$tags[] = $_POST[$meta];
//Удаляем перечисленные произвольные поля у публикации
delete_post_meta($prod_id,$meta,$_POST[$meta]);
}
if(!$tags) return false;
//сохраняем метки для публикации
$args['tax_input'] = $tags;
$args['ID'] = $prod_id;
wp_update_post($args);
}
Тема закрыта. Публикация новых сообщений запрещена.