2017-06-09 5 views
1

Ich habe den folgenden Code, der ein Dropdown-Menü auf meiner Wordpress-Site mit den Kategorien für Beiträge anzeigt und dann einen Beitrag anzeigt. Ich möchte eine Option für "Alle Kategorien" hinzufügen. Ich möchte nicht 'show_option_all' => 'All Categories', verwenden, da dies die Option an der Spitze und ich möchte es an der Unterseite, und das wird auch automatisch ausgewählt, wenn auf einer Seite, aber ich werde nicht darauf eingehen. Es genügt zu sagen, dass ich manuell eine Option am Ende meiner Liste einfügen möchte.Option zu wp_dropdown_categories hinzufügen

hier ist mein Code

<form id="category-select" class="category-select" action="<?php echo esc_url(home_url('/')); ?>" method="get"> 
    <?php 
     $args = array(
      'show_option_none' => __('Select Category'), 
      'show_option_all' => 'All Categorys', 
      'show_count'  => 1, 
      'orderby'   => 'name', 
      'echo'    => 0, 
    ); 
     $select = wp_dropdown_categories($args); 
     $replace = "<select$1 onchange='return this.form.submit()'>"; 
     $select = preg_replace('#<select([^>]*)>#', $replace, $select); 
     echo $select; 
    ?> 
    <noscript> 
     <input type="submit" value="View" /> 
    </noscript> 
</form> 

Dank.

Jede Hilfe wird geschätzt.

Ian

Antwort

1

Die beste Option ist get_terms() Funktion zu verwenden und die Kategorie Dropdown wie pro Ihre Anforderung erstellen.

$terms = get_terms([ 
 
    'taxonomy' => $taxonomy, 
 
    'hide_empty' => false, 
 
]); 
 
<select> 
 
foreach($terms as $cat) 
 
{ 
 
echo '<option value="'.$cat->term_id.'">$cat->name</option>'; 
 
} 
 
<option value="" selected="selected">All Categories</option> 
 
</select>

Verwandte Themen