Условный просмотр изображений в коротком коде

Появилась проблема с коротким кодом. I probebly не знает, где и как установить условие, чтобы он отображал правильное изображение в соответствии с темой / категорией toturial ..

Помощь Plz 🙂

function postInfoBoxSc( $atts ) { extract( shortcode_atts( array( 'subject' => 'Category type', 'difficulty' => 'User Types', 'completiontime' => 'completion Time' ), $atts ) ); // Set image acorring to guide type if ($subject == 'wordpress') { $subjectImg = '<img src="'.get_bloginfo('template_url').'/img/postInfoBox/wordpress.png" alt="מדריך וורדפרס" />'; } elseif ($subject == 'web design') { $subjectImg = '<img src="'.get_bloginfo('template_url').'/img/postInfoBox/webDesign.png" alt="מדריך בניית אתרים" />'; } elseif ($subject == 'facebook') { $subjectImg = '<img src="'.get_bloginfo('template_url').'/img/postInfoBox/facebook.png" alt="מדריך פייסבוק" />'; } elseif ($subject == 'RSS') { $subjectImg = '<img src="'.get_bloginfo('template_url').'/img/postInfoBox/rss.png" alt="מדריך RSS" />'; } return ' <br class="clear" /> <div class="postInfoBox"> '. $subjectImg .' <h5>Guide information:</h5> <ul> <li><strong>Category:</strong> '. $subject .'</li> <li><strong>User Lever:</strong> '. $difficulty .'</li> <li><strong>completion Time:</strong> '. $completiontime .'</li> </ul> </div> '; } add_shortcode( 'postInfoBox', 'postInfoBoxSc' ); 

Проблема По какой-то причине значение $ subject doesent обновляется как значения othere и не передается через короткий код, и изображение не изменяется из-за этого

Что я делаю не так ??

(просто добавлено для каждого запроса) это короткий код, который я читаю в редакторе wordpress при написании сообщения:

 [postInfoBox subject="somthing" difficulty="hard" completiontime="2-5 minuts"] 

Solutions Collecting From Web of "Условный просмотр изображений в коротком коде"

Я не смог точно реплицировать вашу проблему, но вот подсказка: включите поведение по умолчанию, если пользователь ставит плохое значение для объекта:

  // Set image acorring to guide type if ($subject == 'wordpress') { $subjectImg = '<img src="'.get_bloginfo('template_url').'/img/postInfoBox/wordpress.png" alt="מדריך וורדפרס" />'; } elseif ($subject == 'web design') { $subjectImg = '<img src="'.get_bloginfo('template_url').'/img/postInfoBox/webDesign.png" alt="מדריך בניית אתרים" />'; } elseif ($subject == 'facebook') { $subjectImg = '<img src="'.get_bloginfo('template_url').'/img/postInfoBox/facebook.png" alt="מדריך פייסבוק" />'; } elseif ($subject == 'RSS') { $subjectImg = '<img src="'.get_bloginfo('template_url').'/img/postInfoBox/rss.png" alt="מדריך RSS" />'; } else { // Add default case $subject = "Default here"; $subjectImg = '<img src="'.get_bloginfo('template_url').'/img/postInfoBox/default.png" alt="מדריך RSS" />'; } 

Таким образом, всегда будет изображение, даже если они дадут вам плохие данные.