The cart is empty

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

sp page builder module translation 1

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.

Translate Row in Sp page Builder