Explode Content в определенном HTML-элементе

Я пытаюсь вставить некоторый рекламный код на сайт после X числа элементов. Базовый код, который я использую, – это использовать

теги (от: http://www.wpbeginner.com/wp-tutorials/how-to-insert-ads-within-your-post-content-in-wordpress/ ):

function prefix_insert_after_list_item( $insertion, $paragraph_id, $content ) { $closing_p = '</p>'; $paragraphs = explode( $closing_p, $content ); var_dump($paragraphs); foreach ($paragraphs as $index => $paragraph) { if ( trim( $paragraph ) ) { $paragraphs[$index] .= $closing_p; } if ( $paragraph_id == $index + 1 ) { $paragraphs[$index] .= $insertion; } } return implode( '', $paragraphs ); } 

Вместо абзацев я пытаюсь вставить их между определенными элементами. Вот моя структура HTML:

 <div class="listing"> <div class="list-item"> </div> <div class="list-item"> </div> <div class="list-item"> </div> <div class="list-item"> </div> </div> 

Я хотел бы вставить объявления между элементами списка. Замена $closing_p = '</p>'; с $closing_p = '<div class="list-item">'; похоже, не работает. Есть ли способ нацелиться на общий элемент $ content в WordPress, но тогда целевой в пределах родительского листинга? Или есть другой / лучший способ делать то, что я пытаюсь сделать?