Я бы хотел показывать в качестве связанных продуктов только те элементы, которые имеют одинаковое значение настраиваемого поля для текущего продукта.Пример: я создам настраиваемое поле с именем [animal].Затем я назначу животное для каждого продукта всех категорий.Если я нахожусь на странице, скажем, кружки для собак (мета-ключ «животное», мета-значение «собака»), я хотел бы показать в качестве сопутствующего продукта другие кружки для собак, а также футболки для собак, плакат для собак ивсе продукты, которые содержат собаку в пользовательском поле [animal].
Я пытался редактировать эту часть шаблона соответствующего продукта в моей теме:
//$related = $product->get_related( $posts_per_page );
$animal = get_post_meta( $product->get_id(), 'animal', true );
if ( sizeof( $related ) === 0 ) return;
$args = apply_filters( 'woocommerce_related_products_args', array(
'post_type' => 'product',
'ignore_sticky_posts' => 1,
'no_found_rows' => 1,
'posts_per_page' => $posts_per_page,
//'post__in' => $related,
'meta_query' => array(
array(
'key' => 'animal',
'value' => $animal,
'compare' =>'='
)
),
'post__not_in' => array( $product->get_id() )
) );
Но ничего не произошло, дажесообщение об ошибке.И я не уверен, что это лучший способ сделать это или лучше использовать метод add_action в файле функций.