Metadata() for $elementText

hi, I want to exclude some metadata fields from generating the element_texts table content, inspired by that discussion https://omeka.org/forums-legacy/topic/hiding-dublin-core-element-from-simple-search/

public function filterSearchElementTexts($elementTexts)
{

  foreach ($elementTexts as $index => $elementText) {

    $elementId = metadata($elementText, 'element_id');
    //check if the elementId is one of the ones
    //you want to clobber. Maybe get that directly from the table,
    //our use Omeka's functions to look them up
    $skipElementIds = array(50, 51); //dc title and type in my installation
    if (in_array($elementId, $skipElementIds)) {
        unset($elementTexts[$index]);
    }
  }
return $elementTexts;
}

one can find the element_id:

$elementId = metadata($elementText, ‘element_id’);

and there just remove the unwanted fields from the array. But does that code apply for elements other than Dublin Core (and used as Item Type Metadata)? How to get/check the id of the element outside the classic DC fields?

Have you tried the Hide Elements plugin?

This topic was automatically closed after 250 days. New replies are no longer allowed.