The problem with your $item_info
is that the variable is not initialized before your try to append to it. $item_info .= 'String content';
is the exact same thing as $item_info = $item_info . 'String content';
, so all you need is to check whether or not this variable exists:
if (!isset($item_info)) {
$item_info = '';
}
$item_info .= '<div class="rustik_updated"><div class="mc_embed_signup_admin">
<form action="http://doublerainbowx.us6.list-manage2.com/subscribe/post?u=eac2b83a92633c39dae8a663b&id=334c60b856" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank" novalidate>
<label for="mce-EMAIL">Get e-mails about important updates and helpful tips on how to run your store by joining the Rustik newsletter.</label>
<input type="email" value="" name="EMAIL" class="email" id="mce-EMAIL" placeholder="email address" required>
<!-- real people should not fill this in and expect good things - do not remove this or risk form bot signups-->
<div style="position: absolute; left: -5000px;"><input type="text" name="b_eac2b83a92633c39dae8a663b_334c60b856" value=""></div>
<input type="submit" value="Subscribe" name="subscribe" id="mc-embedded-subscribe" class="button">
<span><a href="https://wordpress.stackexchange.com/questions/152506/?rustik_updates_nag_ignore=0">Hide Notice</a></span>
</form>
</div></div>';
Sometimes developers sell themes/plugins without testing them with warnings ON, that’s why you have this error.