Hallo Ich möchte nur die übergeordnete Kategorie anzeigen, aber dieser Code zeigt auch Unterkategorie. kann die Unterkategorie nicht entfernen.Filter Unterkategorie in WordPress
und eine weitere Sache, wie ich nur ein Elternteil Kategorie mit der Subkategorie zeigen ..
<?php
class AQ_Portfolio_Block extends AQ_Block {
//set and create block
function __construct() {
$block_options = array(
'name' => 'Portfolio',
'size' => 'span12',
'resizable' => 0,
'block_description' => 'Add a feed of Portfolio posts to the page.',
'block_category' => 'feeds',
'block_icon' => '<i class="fa fa-fw fa-paint-brush"></i>'
);
parent::__construct('aq_portfolio_block', $block_options);
}//end construct
function form($instance) {
$defaults = array(
'type' => 'classic',
'pppage' => '999',
'filter' => 'all',
'show_filter' => 1
);
$instance = wp_parse_args($instance, $defaults);
extract($instance);
$args = array(
'orderby' => 'name',
'hide_empty' => 0,
'hierarchical' => 1,
'taxonomy' => 'portfolio_category'
);
$filter_options = get_categories($args);
$portfolio_types = array(
'classic' => 'Classic Masonry',
'masonry' => 'Fixed Masonry',
'full' => 'Full Width',
'classic-lightbox' => 'Classic Masonry Lightbox',
'masonry-lightbox' => 'Fixed Masonry Lightbox',
'full-lightbox' => 'Full Width Lightbox'
);
?>
und diese
<?php
}//end form
function block($instance) {
extract($instance);
/**
* Initial query args
*/
$query_args = array(
'post_type' => 'portfolio',
'posts_per_page' => $pppage
);
/**
* If we're choosing just 1 category, add more args.
* GRAB ALL THE ARGS!
*/
if (!($filter == 'all')) {
if(function_exists('icl_object_id')){
$filter = (int)icl_object_id($filter, 'portfolio_category', true);
}
$query_args['tax_query'] = array(
array(
'taxonomy' => 'portfolio_category',
'field' => 'id',
'terms' => $filter
)
);
}
/**
* Finally, here's the query.
*/
$block_query = new WP_Query($query_args);
/**
* Now let's grab categories for the animated portfolio filter buttons
*/
$cats = ($filter == 'all') ? get_categories('taxonomy=portfolio_category') : get_categories('taxonomy=portfolio_category&exclude='. $filter .'&child_of='. $filter);
if('classic' == $type) :
?>
und Ausgabe über dieses
if(1 == $show_filter)
echo ebor_portfolio_filters($cats);
help me out nur Hauptkategorie anzeigen!
tun ‚Eltern‘ => 0 zeigen noch alle Kategorie –
Ok, kannst du get_terms Funktionen anstelle von get_categories ausprobieren. –
Wenn parent => 0 immer noch nicht funktioniert, verwenden Sie childless => true parameter anstelle von parent => 0, für weitere Details von kinderlosen, überprüfen Sie diesen Link, der besagt 'kinderlos' (bool) True, um Ergebnisse zu begrenzen Begriffe, die keine Kinder haben. Dieser Parameter hat keine Auswirkungen auf nicht-hierarchische Taxonomien. Standard false.https: //developer.wordpress.org/reference/functions/get_terms/. –