2014-09-11 3 views
0

Существует способ, чтобы получить все проверенные флажки настраиваемого поля в Magento/Wordpress (с расширением Fishpig):Как фильтровать пользовательские поля в Fishpig?

$post->getCustomField($customfield) 

Я пытаюсь фильтровать сообщения по выбранным флажков, и я рассматриваю сравнить фильтры с сообщениями через цикл, но есть ли более эффективный способ фильтрации сообщений?

ответ

0

Вы можете создать пользовательскую коллекцию сообщений, которые фильтруются с помощью настраиваемого поля:

$posts = Mage::getResourceModel('wordpress/post_collection') 
    ->addIsViewableFilter() 
    ->addMetaFieldToFilter('custom_field_name', 'custom field value') 
    ->load(); 

Это будет возвращать все опубликованные сообщения, которые имеют значение «значения настраиваемого поля» для настраиваемого поля под названием «custom_field_name» ,

Если у вас есть пост модель, правильный способ для получения значения пользовательского поля является следующим:

$customFieldValue = $posts->getMetaValue('custom_field_name'); 
+0

Так что я могу получить сообщения или пользовательские сообщения, но когда я хочу, чтобы отфильтровать пользовательские сообщения "addMetaFieldToFilter ('custom_field_name', 'custom field value')" он возвращает нулевую коллекцию. Я учитывал строчные или прописные буквы, но я не могу получить сообщения с 'cell_type', которые имеют значение флажка 'RNA'. Я даже попробовал addMetaFieldToFilter ('cell_type, array (' RNA '=>' RNA ')), но все равно возвращает null. Как вы думаете? И благодарю вас! – blueseal

+0

Изменить -> load(); to -> load (true); и SQL будет напечатан на экране. Это должно помочь понять, что делает запрос. –

Смежные вопросы