dikey58
@dikey58
Самоучка - web-разработчик

Как убрать обертку только в необходимых мне формах?

С помощью такой записи можно убрать обертку в у всех элементов формы
add_filter('wpcf7_form_elements', 'wpcf7_remove_span_wrapper');
		function wpcf7_remove_span_wrapper($content) {
		    $content = preg_replace('/<(span).*?class="\s*(?:.*\s)?wpcf7-form-control-wrap(?:\s[^"]+)?\s*"[^\>]*>(.*)<\/\1>/i', '\2', $content);

		    $content = str_replace('<br />', '', $content);

		    return $content;
		};

Но как их убрать только у форм, например, под определенным id?
  • Вопрос задан
  • 36 просмотров
Решения вопроса 1
wppanda5
@wppanda5 Куратор тега WordPress
WordPress Mедведь
как нибудь так
Добавьте к эдементам тех форм где хотите такое сделать свой класс, например target-class, а дальше проверяйте его наличие и удаляйте, обертку
add_filter( 'wpcf7_form_elements', 'wpcf7_remove_span_wrapper' );
	function wpcf7_remove_span_wrapper( $content ) {
		$str_pos = strpos( $content, 'target-class' );
		if ( $str_pos !== false ) {
			$content = preg_replace( '/<(span).*?class="\s*(?:.*\s)?wpcf7-form-control-wrap(?:\s[^"]+)?\s*"[^\>]*>(.*)<\/\1>/i', '\2', $content );

			$content = str_replace( '<br />', '', $content );
		}

		return $content;
	}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы