Leider existiert sowas nicht für die Artikel. Da ich aber Rubriken mit fast 600(!) Artikeln habe ist das Klicken durch mehrere Seiten echt nervig.
Aber glücklicherweise hatte mich ein Kunde mit einem sog. Artikelfilter beauftragt und stellt diesen auch der "ConPresso-Gemeinde" zur Verfügung.
In der Anlage ist die modifizierte articles.php.
Wer in dieser noch andere Änderungen vorgenommen hat, modifiziert diese von Hand folgendermaßen:
SUCHE (ab Zeile 800)
Code: Alles auswählen
$_q = "FROM ".CPO_NEWS." "
."WHERE artikel_archiv=0 "
."AND rubric_id='".addslashes($_SESSION['SID_rubric_id'])."' ";
Code: Alles auswählen
// Start Artikelfilter Teil 1 *****************
switch ($_REQUEST['action']) {
case 'togglefilter':
$_SESSION['filter_files']['enabled'] = !$_SESSION['filter_files']['enabled'];
break;
case 'setfilter':
$_SESSION['SID_pagers'][$pager] = 0;
$_SESSION['filter_files']['phrase'] = $_POST['phrase'];
break;
}
if (!$_SESSION['filter_files']['enabled']) {
$_SESSION['filter_files']['phrase'] = '';
}
$join_phrase = '';
$q_phrase = '';
if ($_SESSION['filter_files']['phrase']) {
$join_phrase .= "LEFT JOIN ".CPO_CONTENT_TEXT." t ON ".CPO_NEWS.".nr = t.article_id "
."LEFT JOIN ".CPO_CONTENT_HTML." h ON ".CPO_NEWS.".nr = h.article_id "
."LEFT JOIN ".CPO_CONTENT_URLS." u ON ".CPO_NEWS.".nr = u.article_id ";
$q_phrase .= "AND (titel LIKE '%".addslashes($_SESSION['filter_files']['phrase'])."%' "
."OR commentary LIKE '%".addslashes($_SESSION['filter_files']['phrase'])."%' "
."OR keywords LIKE '%".addslashes($_SESSION['filter_files']['phrase'])."%' "
."OR t.text LIKE '%".addslashes($_SESSION['filter_files']['phrase'])."%' "
."OR h.html LIKE '%".addslashes($_SESSION['filter_files']['phrase'])."%' "
."OR u.urltext LIKE '%".addslashes($_SESSION['filter_files']['phrase'])."%') "
."GROUP BY ".CPO_NEWS.".nr ";
}
$_q = "FROM ".CPO_NEWS." "
.$join_phrase
."WHERE artikel_archiv=0 "
."AND rubric_id='".addslashes($_SESSION['SID_rubric_id'])."' "
.$q_phrase;
// Ende Artikelfilter Teil 1 *****************
Code: Alles auswählen
printPageHeader(
__('Work on articles'),
__('In this view you can choose the article you want to manage.')
);
Code: Alles auswählen
// Start Artikelfilter Teil 2 *****************
if (!$_SESSION['filter_files']['enabled']) {
print('<table style="width: 100%;" class="colored filter"><thead>');
print('<tr>');
printf('<th><span><a href="%1$s">'
.'<img src="'.SKIN_URL.'sym_filteron.gif" width="13" height="13" style="vertical-align: text-bottom;" alt="%2$s" title="%2$s" ></a>'
.' <a href="%1$s">%2$s</a>'.help('').'</span></th>',
$_SERVER['PHP_SELF'].'?action=togglefilter',
htmlspecialchars(__('Enable filter')));
print('</tr></table>');
} else {
print('<table style="width: 100%;" class="colored"><thead>');
print('<tr>');
printf('<th colspan="3"><span><a href="%1$s">'
.'<img src="'.SKIN_URL.'sym_filteroff.gif" width="13" height="13" style="vertical-align: text-bottom;" alt="%2$s" title="%2$s" ></a>'
.' <a href="%1$s">%2$s</a>'.help('').'</span></th>',
$_SERVER['PHP_SELF'].'?action=togglefilter',
htmlspecialchars(__('Disable filter')));
print('</tr></thead><tbody><tr>');
print('<form method="post" action="'.$_SERVER["PHP_SELF"].' " name="newsentry">');
print('<td class="leftrow">');
print(__('Filter by phrase:').'</td><td>');
printf('<input type="text" name="%s" value="%s" class="inputwidth">'.help(''),
'phrase',
htmlspecialchars($_SESSION['filter_files']['phrase']));
print('</td></tr><td> </td><td>');
print('<input type="hidden" name="action" value="setfilter">');
print('<input type="submit" class="button" value="'.htmlspecialchars(__('Set filter parameters')).'">');
print('</td>');
print('</form>');
print('</tr></tbody></table>');
}
// Ende Artikelfilter Teil 2 *****************
Code: Alles auswählen
if ($_SESSION['SID_stufe2']==1 && $cpoRubricSettings['sorting']=='sort_id desc') {
Code: Alles auswählen
// Start Artikelfilter Teil 3 *****************
if ($_SESSION['SID_stufe2']==1 && $cpoRubricSettings['sorting']=='sort_id desc' && $_SESSION['filter_files']['phrase'] == '') {
// Ende Artikelfilter Teil 3 *****************
Code: Alles auswählen
if ($_SESSION['SID_stufe2']==1 && $cpoRubricSettings['sorting']=='sort_id desc') {
Code: Alles auswählen
// Start Artikelfilter Teil 4 *****************
if ($_SESSION['SID_stufe2']==1 && $cpoRubricSettings['sorting']=='sort_id desc' && $_SESSION['filter_files']['phrase'] == '') {
// Ende Artikelfilter Teil 4 *****************