मुझे कई नोड प्रकार मिले हैं जिनमें से प्रत्येक को अलग-अलग टैक्सोनॉमी शब्द शब्दावली के लिए संदर्भित किया गया है। श्रेणी दिखाने के लिए मैं taxonomy_display मॉड्यूल का उपयोग करता हूं।
उदाहरण के लिए, हमें दो श्रेणियां मिली हैं: cues और बिलियर्ड बॉल्स।
Cues में मूल्य, मूल्य से और लकड़ी के प्रकार के फिल्टर हैं। लेकिन गेंदों में कोई लकड़ी का प्रकार नहीं होता है।
इसलिए मुझे लकड़ी के प्रकार के फिल्टर को हटाने की जरूरत है अगर टैक्सोनॉमी_टर्म ने बिलियर्ड गेंदों की शब्दावली का उल्लेख किया है।
इस प्रकार, मुझे कई उजागर फिल्टर को प्रोग्रामेटिक रूप से हटाने की आवश्यकता है।
function modulename_views_pre_view(&$view, &$display_id, &$args) {
// Some custom logic wich field_info_instances checking ...
$filter_field = 'filter_id';
// Removes from everywhere where i can find filter or filters properties
unset($view->display[$view->current_display]->display_options['filters'][$filter_field]);
unset($view->display[$view->current_display]->handler->options['filters'][$filter_field]);
unset($view->display_handler->display->display_options['filters'][$filter_field]);
unset($view->display_handler->options['filters'][$filter_field]);
}
फ़िल्टर फ़ील्ड सफलतापूर्वक निकालता है, लेकिन मुझे php नोटिस मिला है:
Notice: Undefined index: field_wood_reference_tid in function views_handler_filter_term_node_tid->exposed_validate()
इसके अलावा मैं hook_pre_execute () में फ़ील्ड निकालने की कोशिश करता हूं, लेकिन उसी परिणाम के साथ:
function modulename_views_pre_execute(&$view) {
$filter_field = 'filter_id';
unset($view->display_handler->handlers['filter'][$filter_field]);
unset($view->filter[$filter_field]);
}
ओवरराइड_ओपेशन () विधि की तरह यहां भी प्रयास करें - http://groups.drupal.org/node/82219 , लेकिन इसका कोई परिणाम नहीं है।
कोई सुझाव? Pls मदद =)
उत्तर के लिए सभी को धन्यवाद, लेकिन मेरे पास अभी भी कोई जवाब नहीं है। शायद कुछ स्पष्ट नहीं है? = (
?filter_id=val
, दृश्य खाली प्रदर्शन या अवैध पसंद त्रुटि देता है ...