Прекрасный плагин WpForo, который позволяет владельцам сайтов на WordPress подключить собственный форум с обсуждениями или FAQ, по какой-то непонятной для меня причине не хочет отображать прикрепляемые в сообщение фотографии. И «выключателя» в настройках форума не существует. Но, прикрепленные изображения в сообщениях WpForo можно сделать отображаемыми.
Нам нужно добавить функционал в файл functions.php
Если вы не знаете, где он находится, вы можете найти его по адресу: вашсайт.ру/wp-content/themes/вашатема/functions.php
В конце темы добавьте комментарий, который позволит вам в дальнейшем ориентироваться в написанном вами коде. Затем добавьте следующий php-код, который позволит отображать прикрепленные изображения на вашем форуме:
add_filter('wpforo_content_after', 'wpforo_default_attachment_image_embed', 11); function wpforo_default_attachment_image_embed( $content ){ if( preg_match_all('|<a class=\"wpforo\-default\-attachment\" href\=\"([^\"\']+)\"[^><]*>.+?<\/a>|is', $content, $data, PREG_SET_ORDER) ){ foreach($data as $array){ if(isset($array[1])){ $file = $array[1]; $e = strtolower(substr(strrchr($file, '.'), 1)); if( $e == 'jpg' || $e == 'jpeg' || $e == 'png' || $e == 'gif' ){ $filename = explode('/', $file); $filename = end($filename); $html = '<a href="' . esc_url($file) . '" target="_blank"><img class="wpforo-default-image-attachment" src="' . esc_url($file) . '" alt="' . esc_attr($filename) . '" title="' . esc_attr($filename) . '" /></a>'; $content = str_replace($array[0], $html, $content); } } } } return $content; }
Должно получиться примерно вот так:
Теперь фотографии, которые вы прикрепляете в темах и сообщениях на WpForo будут нормально отображаться в конце вашего сообщения: