Site path not updating for Spanish translation of our English site

We have 2 sites, an English site and a Spanish localization of our English site. When on the English site, the $ value points to our English path (something like //Sites/English). However, when on the Spanish site, $ still resolves to the English site path.

Is there anything I can do to ensure that this updates appropriately? As part of our existing code, we bind the value of $ to a variable called $sitepath. Currently, the only solution I can think of is forcing a hard coded change based on the $sys.item.getProperty(“rx:sys_lang”).String. If it equals “en-us” (English) then let $ set $sitepath as usual, but if it equals “es-us” (Spanish) then force $sitepath to equal “//Sites/Spanish” etc… However, this seems like a solution fraught with many perils and really the wrong way to resolve this anyway.

In a related issue we’re experiencing an issue with one of our templates evaluating the $sys.item.getProperty(“rx:sys_lang”).String value to en-us (English) even when on the Spanish site.

Here’s the debugging code and output:

Parent Template

<!-- Parent Lang:  $sys.item.getProperty("rx:sys_lang").String -->
#slot("rffNav" "" "" "" "" "template=childTemplate")

Child Template

<!-- Child Lang:  $sys.item.getProperty("rx:sys_lang").String -->

When on the English site, the output is:

<!-- Parent Lang:  en-us -->
<!-- Child Lang:  en-us -->

When on the Spanish site, the output is:

<!-- Parent Lang:  es-us -->
<!-- Child Lang:  en-us -->

Would anyone know why the parent template would evaluate the current localized language correctly but the child template not do so (at least when on the Spanish site)?