/**
  * do shortcode
  * @return string
  * @example <hw:shortcode type="image" value="images/1.gif"/>
  */
 private function parse_shortcode()
 {
     $shortcodes = array('image' => 'hw_image', 'url' => 'hw_url');
     $atts = $this->getAttributes();
     if (!isset($shortcodes[$atts['type']])) {
         return;
     }
     $sc = $shortcodes[$atts['type']];
     unset($atts['type']);
     //remove shortcode tag from attr
     //$content = (string)$this->get();
     $content = $this->get()->nodeValue;
     //->textContent
     if (!$content && isset($atts['value'])) {
         $content = $atts['value'];
     }
     return do_shortcode('[' . $sc . ' ' . hwArray::array_to_attrs($atts) . ']' . $content . '[/' . $sc . ']');
 }