Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Last revision Both sides next revision | ||
litespeed_wiki:cache:litemage:troubleshooting:uninitialized-php-vars-injected-block [2016/05/09 20:32] Long Hu |
litespeed_wiki:cache:litemage:troubleshooting:uninitialized-php-vars-injected-block [2017/05/03 21:35] Jackson Zhang |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== The footer failed to output for SNS themes ====== | + | ====== Footer fails to output for SNS themes , SM themes or other themes ====== |
- | **Problem**: The footer failed to output for SNS themes | + | **Problem**: The footer fails to output for SNS themes, SM themes or other themes |
- | **Cause**: The customized themes references user initialized global PHP variables in injected blocks. When those ESI blocks render, null pointer errors occurs as those variables has been initialized earlier but the injected block has no way of recognizing them. In SNS case here it is due to the variable "$var_snstheme" actually being initialized in the header block. | + | **Cause**: The customized theme references user initialized global PHP variables in injected blocks. When those ESI blocks render, null pointer errors occur as those variables have been initialized earlier but the injected block has no way of recognizing them. In SNS themes, this is due to the variable "$var_snstheme" being initialized in the header block. |
+ | |||
+ | **Solution**: Find the code where this variable is initialized and copy this logic to the template of the injected block, or to the top of the template. | ||
+ | |||
+ | For example, for SNS thems, adding the following 2 lines to the top of the template: | ||
- | **Solution**: Find the code where this variable is initialized, copy this logic to the template of the injected block. For example, adding the following 2 lines: | ||
<code> | <code> | ||
global $var_snstheme; | global $var_snstheme; | ||
Line 13: | Line 16: | ||
</code> | </code> | ||
- | Similarly, for SM themes (such as sm-maxshop yttheme): | + | Similarly, for SM themes (such as sm-maxshop yttheme), adding the following to the top of the template: |
<code> | <code> | ||
if (empty($var_yttheme)) { | if (empty($var_yttheme)) { | ||
Line 20: | Line 23: | ||
</code> | </code> | ||
- | **Alternative Solution**: You can remove footer block injection. This however will slow down page loading time as well as increase cache size and is hence not recommended. | + | **Alternative Solution**: Remove footer block injection. Doing this will slow down page load times and increase cache size, and as such is not recommended. |