2013-07-16 71 views
0

我有一個腳本,用於檢查站點的狀態並將結果寫入xml文檔。 XML是這樣的:Xml輸出不是我想要的地方

<?xml version="1.0" encoding="UTF-8"?> 
<xml> 
    <sites> 
    <site1>result of site1</site1> 
    <site2>result of site2</site2> 
    ... 
    </sites> 
</xml> 

然後,我有一個讓我爲每個站點與WordPress簡碼,像這樣的XML內容的功能:

<?php 
function CheckRemoteService($atts) { 
extract(shortcode_atts(array(
    'name' => 'txt', 
), $atts)); 

$xml = simplexml_load_file('my.xml'); 
echo $xml->sites->$name; 

} 
add_shortcode('checkmyurl','CheckRemoteService'); 
?> 

簡碼給我正確的輸出,但所有的結果都放置在頂部的同一條線上,就好像在那裏被阻擋一樣。我想將這些結果與其他數據一起插入表格中。這是一個XML限制或我犯了一些錯誤? 謝謝。

回答

0

你的函數不應該是echo什麼,它應該return它 - 代碼在Wordpress準備頁面時運行,而不是在輸出到瀏覽器時運行,所以任何直接輸出都將顯示在在「真實」輸出開始之前的頁面。

順便說一句,一旦你不使用的回聲,它可能是投了SimpleXML的明確反對一個字符串,只是爲了避免任何意外的行爲是個好主意:

return (string)$xml->sites->$name; 
+0

謝謝你,工作。 –

相關問題