it-swarm.com.de

Neuen Status für Suchwerkzeugkomponente hinzufügen

Ich möchte dem Artikellistenfilter im Suchwerkzeug einen neuen Status hinzufügen. Die Dropdown-Liste enthält die Status "Veröffentlicht", "Nicht veröffentlicht", "Archiviert" usw.

Wie füge ich der Dropdown-Liste einen weiteren Status hinzu? Gibt es eine Datei, die ich ändern muss, um das zu erreichen?

Ich habe die datei gefunden filters.php in dem Weg layouts/joomla/searchtools/default.

Es hat aber nur ein Array mit den Filtern, aber woher kommen diese Werte?

$data = $displayData;

// Load the form filters
$filters = $data['view']->filterForm->getGroup('filter');
?>
<?php if ($filters) : ?>
    <?php foreach ($filters as $fieldName => $field) : ?>
        <?php if ($fieldName != 'filter_search') : ?>
            <div class="js-stools-field-filter">
                <?php echo $field->input; ?>
            </div>
        <?php endif; ?>
    <?php endforeach; ?>
<?php endif; ?>
1
rogcg

Die Werte stammen aus dem Feldtyp status in der Datei administrator/components/com_content/models/forms/filter_articles.xml.

Dieses Feld sieht so aus

<field
    name="published"
    type="status"
    label="COM_CONTENT_FILTER_PUBLISHED"
    description="COM_CONTENT_FILTER_PUBLISHED_DESC"
    onchange="this.form.submit();"
    >
    <option value="">JOPTION_SELECT_PUBLISHED</option>
</field>

Wenn Sie weitere option Tags hinzufügen, wird dies angezeigt. Da dies jedoch eine Kerndatei ist, wird dringend davon abgeraten, diese zu bearbeiten.

Sie sollten diese Datei sicher überschreiben. Wenn Sie also Joomla! Aktualisieren, wird sie nicht überschrieben.

Siehe Diskussion auf Joomla! -Forum: Formularfeld-XML überschreiben? .

Und Form XML Override Erweiterung sollte helfen.

Wenn Sie einen neuen Status hinzufügen, sollten Sie ihn auch zur Bearbeitungsansicht hinzufügen. Ansichtsformular bearbeiten XML befindet sich im selben Ordner: administrator/components/com_content/models/forms/article.xml.

Dieser Status wird im Datenbankfeldtyp tinyint(3) gespeichert, daher sollte Ihr option-Wert dies berücksichtigen.

1
Rene Korss