سلام
من يك پلاگين براي اضافه كردن محتواي صفحه Html به محتواي صفحه اصلي بوسيله Shortcode نوشته ام. اما پلاگين من كار نميكند و Widget خارج از محيطي كه تعريف كرده ام ظاهر ميشود. چه طور ميتوانم اين مشكل را حل كنم. كدي كه نوشته ام ضميمه است.
add_shortcode('page', 'load_page_shortcode_function');
function load_page_shortcode_function($attr){
$a='';
$string_first='';
$col_count=0;
$styleXML='';
$node='';
$id=1;
$pageName=$attr['pagename'];
$doc=new DOMDocument();
$xmlReadRows=new XMLReader();
$uri=WP_CONTENT_DIR."/plugins/.../.../$pageName.xml" ;
$xmlReadRows->open($uri);
$X= file_get_contents($uri);
if(file_get_contents($uri)==''){
//show some file stuff errors
}
else{
while ($xmlReadRows->read() && $xmlReadRows->name !=='mainrow' && $xmlReadRows->getAttribute('mainrowID') !=='#row'.$id);
$xx=$xmlReadRows->name ;
while ($xmlReadRows->name==='mainrow' ) {
$attrs=$xmlReadRows->getAttribute('mainrowID') ;
$styleXML= simplexml_import_dom($doc->importNode($xmlReadRows->expand(), true));
if($attrs=='#row'.$id) {
$tag='row-'.$id.'-row-content';
$string_first=$styleXML->$tag;
$finalString= $finalString .$string_first ;
$id+=1;
}
$xmlReadRows->next("mainrow");
}
$xmlReadRows->close();
$finalString= str_replace('twoCol-1-2','<div>'. the_widget('shsinglevideo gal1').'</div>', $finalString);
return $finalString ;
}
}