Как разделить xml файл спомощью bat/cmd?
Если файл будет иметь именно такой вид, то это просто (при этом будут потеряны пустые строки, если они есть):
@echo off
setlocal enableextensions enabledelayedexpansion

:0
if "%~1" == "" (
	set /p in="Входной файл: "
	call :0 !in!
	exit /b
)

if not exist "%~1" (
	echo "%~f1" не найден.
	endlocal
	exit /b 1
)

set /a i = 0
for /f "usebackq skip=1 delims=" %%L in ("%~1") do  (
	if "%%L" == "<post>"  (
		set /a i += 1
		(echo ^<?xml version="1.0" encoding="UTF-8"?^>)>!i!.xml
	)
	(echo(%%L)>>!i!.xml
)
endlocal
— XML-формат не учитывается, идёт разделение по строкам <post>, которые должны начинаться с начала строки и не иметь пробелов в конце строки.
В батниках не реально обрабатывать xml, т.к. символы тегов, являются служебными для cmd, как только такая строка попадет в командную строку в батнике будет ошибка.
Так что этот вариант сразу отбросьте.

В винде есть и другие скриптовые языки из коробки, например power shell или jscript, используйте один из них.
На jscript помимо того, что можно просто обработать xml, как текстовый файл, можно использовать и xml парсер со всеми плюшками. На счет power shell я не в курсе, возможно то же есть что-то подобное.
Раз у вас wordpress используется, значит уже установлен PHP, можете его использовать.