Изменения для Joomla версии 3.1.1:
\administrator\components\com_content\models\article.php со строки 318 прямо перед
//Arkadiy huck
// Get the dispatcher and load the content plugins.
$dispatcher = JDispatcher::getInstance();
JPluginHelper::importPlugin('content');
// Trigger the data preparation event.
$dispatcher->trigger('onContentPrepareData', array('com_content.article', $item));
//End of Arkadiy huck
\components\com_content\models\article.php после 233 строки перед
$this->_item[$pk] = $data;
//Arkadiy huck
// Get the dispatcher and load the content plugins.
$dispatcher = JDispatcher::getInstance();
JPluginHelper::importPlugin('content');
// Trigger the data preparation event.
$dispatcher->trigger('onContentPrepareData', array('com_content.article', &$data));
//End of Arkadiy huck
\components\com_content\models\form.php после 142 строки перед
//Arkadiy huck
// Get the dispatcher and load the content plugins.
$dispatcher = JDispatcher::getInstance();
JPluginHelper::importPlugin('content');
// Trigger the data preparation event.
$dispatcher->trigger('onContentPrepareData', array('com_content.article', &$value));
//End of Arkadiy huck
\components\com_content\views\form\tmpl\edit.php после строки 71 в список
<!-- Arkadiy huck -->
<?php
// Get the form fieldsets.
$fieldsets = $this->form->getFieldsets();
foreach ($fieldsets as $name => $fieldset) :
if (in_array($fieldset->name, array('image-intro', 'image-full'))) :
// this set has already been displayed
continue;
endif;
?>
<li><a href="#extrafield-<?php echo $name; ?>" data-toggle="tab"><?php echo JText::_($fieldset->label);?></a></li>
<?php endforeach;?>
<!-- End of Arkadiy huck -->
перед <div class="tab-pane" id="metadata"> в районе 320 строки
<!-- Arkadiy huck-->
<?php
// Get the form fieldsets.
$fieldsets = $this->form->getFieldsets();
foreach ($fieldsets as $name => $fieldset) :
if (in_array($fieldset->name, array('image-intro', 'image-full'))) :
// this set has already been displayed
continue;
endif;
?>
<div class="tab-pane" id="extrafield-<?php echo $name;?>">
<?php
foreach($this->form->getFieldset($fieldset->name) as $field): ?>
<?php if ($field->hidden): ?>
<?php echo $field->input; ?>
<?php else: ?>
<div class="control-group">
<div class="control-label">
<?php echo $field->label; ?>
</div>
<div class="controls">
<?php echo $field->input; ?>
</div>
</div>
<?php endif; ?>
<?php endforeach; ?>
</div>
<?php endforeach;?>
<!-- End of Arkadiy huck -->
\administrator\components\com_content\views\article\tmpl\edit.php
после 73 строки
<!-- Arkadiy huck -->
<ul class="nav nav-tabs">
<?php
// Get the form fieldsets.
$fieldsets = $this->form->getFieldsets();
foreach ($fieldsets as $name => $fieldset) :
if (in_array($fieldset->name, array('basic', 'editorConfig', 'basic-limited', 'attribs'))) :
// this set has already been displayed
continue;
endif;
?>
<li><a href="#extrafield-<?php echo $name; ?>" data-toggle="tab"><?php echo JText::_($fieldset->label);?></a></li>
<?php endforeach;?>
</ul>
<!-- End of Arkadiy huck -->
после 242 строки
//Arkadiy huck
// Get the form fieldsets.
$fieldsets = $this->form->getFieldsets();
foreach ($fieldsets as $name => $fieldset) :
if (in_array($fieldset->name, array('basic', 'editorConfig', 'basic-limited', 'attribs'))) :
// this set has already been displayed
continue;
endif;
?>
<div class="tab-pane" id="extrafield-<?php echo $name;?>">
<?php if (isset($fieldSet->description) && trim($fieldSet->description)) : ?>
<p class="tip"><?php echo $this->escape(JText::_($fieldSet->description));?></p>
<?php endif;
foreach($this->form->getFieldset($fieldset->name) as $field): ?>
<?php if ($field->hidden): ?>
<?php echo $field->input; ?>
<?php else: ?>
<div class="control-group">
<div class="control-label">
<?php echo $field->label; ?>
</div>
<div class="controls">
<?php echo $field->input; ?>
</div>
</div>
<?php endif; ?>
<?php endforeach; ?>
</div>
<?php endforeach;
//End of Arkadiy huck
На 3.1.1 не проверял, только сделал, скорее всего потребуется небольшая доработка там, где выводится HTML (форматирование панели управления изменилось).
Ну и поскольку плагин писался по мотивам статьи Adding custom fields to the article component Franz Korntner
http://docs.joomla.org/Adding_custom_fields_to_the_article_component, возможно он сделан не оптимально и все можно улучшить или упростить, в частности это касается вывода HTML в панель управения, возможно достаточно будет вывести туда какое-либо дополнительное свойство, которое плагин будет заполнять готовым HTML.