UPDATE:
Так что я хотел убедиться, что я был прав, так как это было немного, так как я использовал ZF. Следующее сработало у меня из коробки.
Создайте пользовательский YourNamespace_Application_Resource_View
в LIBRARY_PATH/YourNamespace/Application/Resource/View
с помощью метода 'setHelperPaths` - или как хотите, чтобы вызвать его в конфигурации.
class YourNamespace_Application_Resource_View extends Zend_Application_Resource_View
{
public function setHelperPaths($paths){
if(!empty($paths)){
$view = $this->getView();
foreach($paths as $ns => $path) {
$view->addHelperPath($path, $ns);
}
}
}
}
Тогда в вашей конфигурации сделайте что-то вроде:
all:
pluginPaths:
'YourNamespace_Application_Resource_': <?php echo LIBRARY_PATH ?>/YourNamespace/Application/Resource
resources:
view:
helperPaths:
'YourNamespace_View_Helper': <?php echo LIBRARY_PATH ?>/YourNamespace/View/Helper
Очевидно, что это не полностью заменяет все, что вы уже настроили ... в дополнение к. Также у меня есть генератор проектов в Zend_Tool, настроенный на использование YAML (с sfYaml) в качестве формата моей конфигурации, поэтому, если вы используете INI или XML, вам нужно будет соответствующим образом конвертировать.
Тогда вы просто создаете своего помощника по кутсу с тем же именем, что и тот, которого вы переопределяете. В своем тесте я использовал следующий пример:
<code>// File in LIBRARY_PATH/YourNamespace/View/Helper/FormText.php
class YourNamespace_View_Helper_FormText extends Zend_View_Helper_FormText
{
public function formText($name, $value = null, $attribs = null)
{
$xhtml = parent::formText($name, $value, $attribs);
$xhtml .= '<br /> <pre>'.__CLASS__.'
';
вернуть $ xhtml;
}
}
И тогда это сработало автоматически. Если это не работает для вас, возможно, в миксе есть что-то еще, что вызывает проблемы.
Почему бы вам просто не создать свою собственную реализацию в собственном «пространстве имен» (например, Someguy_View_Helper_FormText
), а затем загрузить ее? Если вы поместите его поверх стека вспомогательных путей, загрузчик плагинов будет использовать его вместо версии Zend автоматически .