我正在修改 Joomla/K2 中的自定义功能,但实际上只涉及 PHP。此功能无法通过任何模块或扩展获得,所以我真的需要弄清楚。
我正在输出 K2 文章并尝试按 K2 中的“额外字段”日期字段进行排序。它作为日期字符串存储在数据库中。我的排序功能有效,因为它改变了项目的顺序 - 但它不能让它们按正确的顺序排列。
function cmp($a, $b){
global $array;
return strcmp($array[$a][1], $array[$b][1]);
}
$limit = 3;
$limitstart = 0;
foreach($items as $key=>$item) {
$extraval = NULL;
foreach ($item->extra_fields as $extraField){
if($extraField->value != ''){
if($extraField->name == "Start Date"){
$extraval = strtotime($extra_field->value);
}
}
}
$extrasort[$key] = Array();
$extrasort[$key][0] = $item;
$extrasort[$key][1] = $extraval;
}
sort($extrasort, 'cmp');
$rows = Array();
$total = $limit + $limitstart;
for($i=$limitstart; $i<$total; $i++) {
if(!empty($extrasort[$i][0])) {
$rows[] = $extrasort[$i][0];
}
}
目前的输出是:
1381525200
1380834000
1386795600
这显然是不正确的(希望如此)。
任何建议或提示将不胜感激,我已经玩了几个小时了,总的来说我不确定 2D 阵列。
谢谢