Фільтр: esl/query/loop_object_id

Esl використовуватиме EslQuery::get_loop_object_id() для отримання ідентифікатора об’єкта ітерації циклу.

Ця статична функція використовується в багатьох місцях. Особливо при спробах розібрати динамічні дані. За замовчуванням Esl використовує ідентифікатор циклу, якщо об’єкт циклу є об’єктом WP_Post, WP_Term або WP_User. Цей фільтр дозволяє змінити ідентифікатор умовно.

// Змінити object_id, якщо тип запиту циклу - myCustomQueryTypeadd_filter( 'esl/query/loop_object_id', function( $object_id, $object, $query_id ) {$query_object_type = EslQuery::get_query_object_type( $query_id );if ( $query_object_type !== 'myCustomQueryType' ) {return $object_id;}// Встановити my loop_object_id$new_id = my_custom_function_to_transform_the_id( $object_id );return $new_id;}, 10, 3 );

Суміжні хуки:

  • esl/setup/control_options: Щоб додати власний тип запиту до керування запитами
  • esl/query/loop_object: Щоб керувати об’єктом на кожній ітерації циклу