cakePHPでは、自動でXMLやJSONを出力してくれる機能があります。いくつかのファイルを設定を行うことで、アクションの後に「.xml」や「.json」をつけることにより出力をしてくれます。

// config/routes.php
Router::scope('/', function ($routes) {
$routes->setExtensions(['json','xml',]); // ← これを追加
});
// 出力するアクション 例:IndexController.php 内のindexアクション
public function index() {
$indexs = $this->Index->find()->order(["created" => "desc"])->all();
$this->set(["indexs" => $indexs]);
// 本来は以下を追加
$this->set('_serialize', 'indexs');
}

これでURLではアクションに拡張子として「.xml」や「.json」とつけると表示するわけですが、枠組みはcakePHPが用意されているものを選ばれるようです。
人によっては自分でカスタムしたいと思っているひとがいると思います。例えば、今回は私はcakePHPのデータをWordPressの投稿データとしてインポート用のxmlファイルを作成したいと思ったときです。

その場合、インポートデータとして認識してくれる形式でXMLファイルを作成する必要があると思いますが、cakePHPの自動のXMLは違うため、独自でViewファイルを用意し出力するとよいと思いますが、これがちょっと難癖があり中々ネットでは情報が出回っていませんでした。あまり利用しない機能なのかな?

色々と試行錯誤し作業して何とか上手くいった手順を以下に記録し残します。

アクション内の「_serialize」のsetを変更

$this->set('_serialize', false); // falseにする

テンプレートディレクトリのコントローラー名ディレクトリの中に「xml」ディレクトリを作成し、その中にアクション名のテンプレファイルを新規作成する

src/Template/Index/xml/index.ctp

コントローラーから渡された変数データをforeachで回して、xmlデータを作成する

<?php foreach ($indexs as $index): ?>
<item>
<title><![CDATA[<?php echo $index->title; ?>]]></title>
<pubdate><?php echo date("D\, d M Y H:i:s +0000", strtotime($index->created)); ?></pubdate> <dc:creator><![CDATA[admin]]></dc:creator>
<guid ispermalink="false">https://domain/?p=<?php echo $index->id; ?></guid>
<description></description>
<content:encoded><![CDATA[>?php echo $index->content ?>]]></content:encoded>
<excerpt:encoded></excerpt:encoded>
<wp:post_id><?php echo $index->id; ?></wp:post_id>
<wp:post_date><![CDATA[>?php echo date("Y-m-d H:i:s", strtotime($index->created)); ?>]]></wp:post_date>
<wp:post_date_gmt><![CDATA[>?php echo date("Y-m-d H:i:s", strtotime($index->created)); ?>]]></wp:post_date_gmt>
<wp:post_modified><![CDATA[>?php echo date("Y-m-d H:i:s", strtotime($index->modified)); ?>]]></wp:post_modified>
<wp:post_modified_gmt><![CDATA[>?php echo date("Y-m-d H:i:s", strtotime($index->modified)); ?>]]></wp:post_modified_gmt>
<wp:comment_status><![CDATA[closed]]></wp:comment_status>
<wp:ping_status><![CDATA[open]]></wp:ping_status>
<wp:post_name></wp:post_name>
<wp:status><![CDATA[publish]]></wp:status>
<wp:post_parent>0</wp:post_parent>
<wp:menu_order>0</wp:menu_order>
<wp:post_type><![CDATA[post]]></wp:post_type>
<wp:post_password></wp:post_password>
<wp:is_sticky>0</wp:is_sticky>
<category domain="category" nicename="category"><![CDATA[カテゴリ名]]></category>
<wp:postmeta>
<wp:meta_key><![CDATA[_edit_last]]></wp:meta_key>
<wp:meta_value><![CDATA[1]]></wp:meta_value>
</wp:postmeta>
</item>
<?php endforeach; ?>

予めWordPressからフォーマットとして投稿データをエクスポートしたXMLファイルに、ブラウザに表示したXMLデータを張り付けてWordPressでインポートすると無事追加できました。