From within a plugin, I’m trying to filter users by a custom field.

An external post request will supply a variable which I want to match the custom field to. I then want to respond to that request with other user custom fields as JSON.

For example the incoming post contains customHandle1=A, I then find all the users where customHandle1=A and return customHandle2 and customHandle3 data.

How would I do that?

  • OK, just saw your question edit... will answer... – Luke Holder Mar 9 '15 at 14:04

To get a user by a custom field, you would need to create a ElementCriteriaModel like this:

$criteria = craft()->elements->getCriteria(ElementType::User);
$criteria->fieldName = craft()->request->getPost('fieldName');

$users = $criteria->find();

you could then loop over $users and use getAttributes() to get the user data, and if you need the attribute names use attributeNames() if you need the users fields.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.