русский + английский альфаиндекс (готовое грубое и простое решение)
(выводит два алфавита двумя рядами)в файле components/com_muscol/helpers/alphabets.php выбираем алфавит, который потом будем использовать в приложении.
к примеру,
custom.
заменяем массивы:
internal
$internal['custom'] = array("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27","28","29","30","31","32","33");
external
$external['custom'] = array("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","#","А","Б","В","Г","Д","Е","Ж","З","И","Й","К","Л","М","Н","О","П","Р","С","Т","У","Ф","Х","Ц","Ч","Ш","Щ","Ъ","Ы","Ь","Э","Ю","Я");
в файле components/com_muscol/helpers/helpers.php заменяем функцию
new_letter_navigationfunction new_letter_navigation($inicial){
require_once(JPATH_SITE.DS.'components'.DS.'com_muscol'.DS.'helpers'.DS.'alphabets.php');
$params = &JComponentHelper::getParams( 'com_muscol' );
$itemid = $params->get('itemid');
if($itemid != "") $itemid = "&Itemid=" . $itemid;
$characters = MusColAlphabets::get_characters();
$inicials = $characters['internal'] ;
$change = $characters['external'] ;
$width = count($change) ;
$width = round( 100 / $width, 1 );
for($i = 0, $n = count($inicials); $i<27; $i++){
$lletra = $inicials[$i] ;
if($lletra == $inicial) $class = "active" ;
else $class = "";
$lletra = $inicials[$i] ;
if($i == 0) $class .= " first";
if($i == ($n -1)){
$class .= " last";
}
$link = JRoute::_( 'index.php?option=com_muscol&view=artists&letter='. $lletra . $itemid);
$cadena = "<a href='".$link."'>".$change[$i]." </a>\n";
$return .= "<td class='".$class."' width='".$width."%'>".$cadena."</td>";
}
for($i = 27, $n = count($inicials); $i<$n; $i++){
$lletra = $inicials[$i] ;
if($lletra == $inicial) $class = "active" ;
else $class = "";
$lletra = $inicials[$i] ;
if($i == 0) $class .= " first";
if($i == ($n -1)){
$class .= " last";
}
$link = JRoute::_( 'index.php?option=com_muscol&view=artists&letter='. $lletra . $itemid);
$cadena = "<a href='".$link."'>".$change[$i]." </a>\n";
$return2 .= "<td class='".$class."' width='".$width."%'>".$cadena."</td>";
}
$return = "<table class='table_letterbar' width='100%' cellpadding='0' cellspacing='0' border='0'><tr align='right'>".$return."</tr><tr>".$return2."</tr></table>" ;
return $return ;
теперь заходим в базу данных: таблица jos_muscol_artists. необходимо полю
letter задать тип
varchar(2)вот и всё.
одно замечание: при создании исполнителя с русским названием - принудительно нужно выбирать букву. как сделать автоматически - разберусь позже.
по прежнему жду новый
mod_muscol_featured_albums 