Удалите теги 'p' вокруг коротких кодов и 'img'

У меня возникли проблемы с удалением тегов абзаца со шорткодов.

Я пробовал это решение без успеха. Как остановить html-редактор из тегов addig <p> для коротких кодов, изображений и т. Д., И этот – исправление короткого кода wordpress empty paragraph.

Мои короткие коды создаются для открытия и закрытия [div] — [end-div]. Я не уверен, что это важно. См. Пример кода ниже.

add_shortcode('div', 'be_div_shortcode'); function be_div_shortcode($atts) { extract(shortcode_atts(array('class' => '', 'id' => '' ), $atts)); $return = '<div'; if (!empty($class)) $return .= ' class="'.$class.'"'; if (!empty($id)) $return .= ' id="'.$id.'"'; $return .= '>'; return $return; } /* Close Div */ add_shortcode('end-div', 'be_end_div_shortcode'); function be_end_div_shortcode($atts) { return '</div>'; } 

Смотрите скриншот html: http://img.wordpressask.com/shortcode/code.png Смотрите скриншот редактора страницы: http://img.wordpressask.com/shortcode/builder.png

Solutions Collecting From Web of "Удалите теги 'p' вокруг коротких кодов и 'img'"

Во-первых, то, что вы пытаетесь сделать, это злоупотребление системой shorcode. Вы не должны использовать их для замены элементов html.

Это в стороне, p происходит от контента. Вам либо нужно использовать [div]....[/div] и вы получите контент в качестве второго параметра функции короткого кода, и вы можете отформатировать его в любом случае. Вот как работает первый короткий код в вашем примере.