pseudo visitor
Participant
6 years ago #6840
Here is a piece of code using WPSOLR’s filter https://www.wpsolr.com/guide/actions-and-filters/index-modify-a-document/.
Modify and copy the following code into your theme’s functions.php, or in a new small plugin.
use wpsolr\core\classes\WPSOLR_Events;
use wpsolr\core\classes\WpSolrSchema;
add_action( 'after_setup_theme', function () {
add_filter( WPSOLR_Events::WPSOLR_FILTER_SOLARIUM_DOCUMENT_FOR_UPDATE, 'wpsolr_filter_solarium_document_for_update', 10, 5 );
} );
/**
*
* @param array $document_for_update
* @param $solr_indexing_options
* @param $post
* @param $attachment_body
* @param WPSOLR_AbstractIndexClient $search_engine_client
*
* @return array Document updated with fields
*/
function wpsolr_filter_solarium_document_for_update( array $document_for_update, $solr_indexing_options, $post, $attachment_body, WPSOLR_AbstractIndexClient $search_engine_client ) {
$solr_dynamic_type = WpSolrSchema::_SOLR_DYNAMIC_TYPE_STRING; // Depends on the type selected on your field on screen 2.2
$document_for_update[ 'my_field_name' . $solr_dynamic_type] = 'whatever';
return $document_for_update;
}