Я новичок в этом деле. веб-разработкой, и мне трудно определить, над какими файлами мне нужно работать, чтобы добиться этого. После некоторого возни я пришел к выводу, что это, возможно, придется сделать с помощью файла parser.php, но мне интересно, есть ли у кого-нибудь опыт работы с этим и может ли он предоставить дополнительные рекомендации и, в идеале, пример кода.
Это блок кода в файле parser.php, который, как я подозреваю, хотя бы частично задействован:
Код: Выделить всё
/**
* @param MediaHandler|false $handler
* @return array
*/
private function getImageParams( $handler ) {
if ( $handler ) {
$handlerClass = get_class( $handler );
} else {
$handlerClass = '';
}
if ( !isset( $this->mImageParams[$handlerClass] ) ) {
# Initialise static lists
static $internalParamNames = [
'horizAlign' => [ 'left', 'right', 'center', 'none' ],
'vertAlign' => [ 'baseline', 'sub', 'super', 'top', 'text-top', 'middle',
'bottom', 'text-bottom' ],
'frame' => [ 'thumbnail', 'manualthumb', 'framed', 'frameless',
'upright', 'border', 'link', 'alt', 'class' ],
];
static $internalParamMap;
if ( !$internalParamMap ) {
$internalParamMap = [];
foreach ( $internalParamNames as $type => $names ) {
foreach ( $names as $name ) {
// For grep: img_left, img_right, img_center, img_none,
// img_baseline, img_sub, img_super, img_top, img_text_top, img_middle,
// img_bottom, img_text_bottom,
// img_thumbnail, img_manualthumb, img_framed, img_frameless, img_upright,
// img_border, img_link, img_alt, img_class
$magicName = str_replace( '-', '_', "img_$name" );
$internalParamMap[$magicName] = [ $type, $name ];
}
}
}
# Add handler params
$paramMap = $internalParamMap;
if ( $handler ) {
$handlerParamMap = $handler->getParamMap();
foreach ( $handlerParamMap as $magic => $paramName ) {
$paramMap[$magic] = [ 'handler', $paramName ];
}
} else {
// Parse the size for non-existent files. See T273013
$paramMap[ 'img_width' ] = [ 'handler', 'width' ];
}
$this->mImageParams[$handlerClass] = $paramMap;
$this->mImageParamsMagicArray[$handlerClass] =
$this->magicWordFactory->newArray( array_keys( $paramMap ) );
}
return [ $this->mImageParams[$handlerClass], $this->mImageParamsMagicArray[$handlerClass] ];
}
Подробнее здесь: https://stackoverflow.com/questions/791 ... ng-options