В базе данных WP обнаружил поле term_order в таблице wp_terms. Теперь я хочу добавить возможность изменять это поле через страницу редактирования таксономии текстовым полем. Знаю что это поле используют различные плагины для сортировки, но мне нужен именно описанный выше вариант. Как это можно реализовать через плагин или functions.php, не прибегая к редактированию самого WordPress? Буду рад любой помощи!
Сделал сам кое-как. Если кому нужно вот (ставим в functions.php либо в свой плагин):
// Adding a field to sort on the category edit page
add_action( 'product_cat_edit_form_fields', 'product_cat_edit_category', 5 );
function product_cat_edit_category( $term ) {
$term_order = get_term( $term->term_id, 'product_cat' );
?>
<tr>
<th scope="row"><label for="description">Сортировка</label></th>
<td><input type="text" name="term_order" value="<?php echo $term_order->term_order; ?>"></td>
</tr>
<?php
}
// Update term_order value when saving taxonomy
add_action( 'edit_product_cat', 'product_cat_save', 10, 1 );
function product_cat_save( $term_id ) {
global $wpdb;
if ( isset( $_POST['term_order'] ) ) {
$term_order = $_POST['term_order'];
$wpdb->query('UPDATE '.$wpdb->prefix.'terms SET term_order='.$term_order.' WHERE term_id='.$term_id);
wp_redirect( esc_url_raw( get_edit_term_link( $term_id, 'product_cat', 'product' ) ) );
}
В add_action где edit_product_cat
и product_cat_edit_form_fields
вместо product_cat должно быть название вашей таксономии. в моем случае это категории товаров в woocommerce.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Нужно вывести список товаров, применив фильтры
Поставил себе ubintu, в первый раз работаю с линуксом в графической оболочкеПодскажите пожалуйста, есть ли какие-то строенные локальные серверы...
В navigation drawer создаю два фрагмента обычный и с настройками, при переходе из фрагмента настроек на другой он накладывается