php facetwp添加分类型源

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php facetwp添加分类型源相关的知识,希望对你有一定的参考价值。

<?php

/**
 * add additional source to select as Taxonomy Types
 */
add_filter( 'facetwp_facet_sources', function( $sources ) {

	$sources['posts']['choices']['tax_type'] = 'Taxonomy Types';
	return $sources;

}, 10);

/**
 * Create custom row indexer
 */
add_filter( 'facetwp_indexer_row_data', function( $rows, $args ) {

    if ( 'tax_type' == $args['defaults']['facet_source'] ) {

        $taxes = get_post_taxonomies( $args['defaults']['post_id'] );

        if ( empty( $taxes ) ) {
            return false;
        }

	    $output = array();

	    foreach ( $taxes as $tax ) {

		    $terms = wp_get_post_terms( $args['defaults']['post_id'], $tax );

		    if ( is_wp_error( $terms ) || empty( $terms ) ) {
		        continue;
            }

            $tax_type = get_taxonomy( $tax );

		    if ( ! $tax_type->public ) {
		        continue;
            }

		    $params = $args['defaults'];
		    $params['facet_value'] = $tax;
		    $params['facet_display_value'] = esc_html( $tax_type->label );
		    $output[] = $params;
        }

        return $output;
    }

	return $rows;

}, 10, 2 );

以上是关于php facetwp添加分类型源的主要内容,如果未能解决你的问题,请参考以下文章

php facetwp索引附件并添加媒体类型数据源

php facetwp日期源转换为年份

php facetwp日期源转换为年份

php facetwp lat / long的自定义源

php facetwp lat / long的自定义源

php FacetWP的自定义分页