diff --git a/Model/Behavior/TaggableBehavior.php b/Model/Behavior/TaggableBehavior.php index 9052b89..23f39dd 100644 --- a/Model/Behavior/TaggableBehavior.php +++ b/Model/Behavior/TaggableBehavior.php @@ -167,12 +167,13 @@ public function saveTags(Model $model, $string = null, $foreignKey = null, $upda extract($this->disassembleTags($model, $string, $this->settings[$model->alias]['separator'])); if (!empty($tags)) { - $conditions = array('OR' => array_map(function ($tag) use ($tagModel) { - return array( + $conditions = array(); + foreach ($tags as $tag) { + $conditions['OR'][] = array( $tagModel->alias . '.identifier' => $tag['identifier'], $tagModel->alias . '.keyname' => $tag['keyname'], ); - }, $tags)); + } $existingTags = $tagModel->find('all', array( 'contain' => array(), 'conditions' => $conditions,