How to translate SP Page Builder row
This article will explain how to translate sp page builder row title and subtitle, this is tested with sp page builder version 3.7.2 pro and translate for sp page builder version up to 2.11
Since SP PageBuilder 3.7.11 this change are no more necessary
The translation don't work by default with module you have to modify a file in sp page builder.
1) addon-parser for front-end translation
The file is components/com_sppagebuilder/parser/addon-parser.php
You have to change the file like this :
on the top of the file
defined ('_JEXEC') or die ('Restricted access');
use Joomla\CMS\Plugin\PluginHelper;//new
use Joomla\CMS\Factory;//new
jimport( 'joomla.filesystem.file' );
in the viewAddons function line (line 248-249 in the original file)
if($pageName == 'module') {
array_push( self::$module_css_content, $row_css );
} else {
array_push( self::$css_content, $row_css );
}
PluginHelper::importPlugin('system');//new
Factory::getApplication()->triggerEvent('onBeforeRowRender', [&$row] );//new
$output .= $layouts->row_start->render(array('options' => $row->settings));
2) edit.php for backend management
The file is administrator/components/com_sppagebuilder/views/page/tmpl/edit.php
You have to change the file like this line 57-66 add the tringer onBeforeRowConfigure.
foreach ( $addons_list as $key => &$addon ) {
$new_default_value = SpPgaeBuilderBase::getSettingsDefaultValue($addon['attr']);
$addon['default'] = array_merge($new_default_value['default'], $globalDefault['default']);
$results = $dispatcher->trigger( 'onBeforeAddonConfigure', array($key, &$addon) );
}
$dispatcher->trigger( 'onBeforeRowConfigure', array(&$rowSettings) );//new
$row_default_value = SpPgaeBuilderBase::getSettingsDefaultValue($rowSettings['attr']);
After this change the languages tab is available on the row options like this.