My company takes many pictures at each work-site, the images are loaded with image meta-data (author and keywords are key). Each work-site has its own image directory with many hundreds of photos. How do I easily use this module to drag and drop a directory of photos and have each of the photos be SEPARATELY searchable by author and keywords. I can use the latest dev version of this module and the multi-image upload module and it works great, EXCEPT now I have one big object with many images and metadata (no one-to-one association of image with THAT image's metadata). I can search for a key word, but instead of getting the ONE image that is associated with this keyword I get ALL the images that were uploaded. Help.

Comments

JoeJava created an issue. See original summary.

jphautin’s picture

Hello,

For now, this is not possible without some little code.
The steps I can think of :

  1. create a vocabulary authors
  2. create a vocabulary keywords
  3. create a node content type with at least :
    • an image field limited to 1 photo
    • a field 'author' (limited to 1) linked to the correct metadata you are using for it. The type of the field must be a taxonomy term linked to the 'authors' vocabulary
    • a field 'keywords' (unlimited) linked to the correct metadata you are using (exif_keywords ?) for it. The type of the field must be a taxonomy term linked to the 'keywords' vocabulary
  4. activate the exif module on this content type
  5. if you need rights usage terms or any XMP value, you will have to use the exiftool version as php exif extension does not handle them.
  6. test your content with one image
  7. now the content type is working fine, this is where you will need some code. An example of a node creation module for drush is described on this blog. You will have to adapt the example to your content type and list photos in sub directory and create a node for each. Note that this part is plan to be added in the drush command of the exif module (as describe in the roadmap) but has not been implemented yet as it will need to be generic for all type on node handling exif metadata.
  8. last, you need to create a view to show all the nodes that correspond to a search in vocabulary 'author' and the same for 'keywords' or both. A very quick example is here. If all goes well, you have to fit the view to your need to show result as a list or cards or whatever. Same for the content type.
  9. You did not speak about it but I think you might need a map to show location of images/nodes. This is the same trick as the search result bu you need to use an openlayer module. take a look here

Hope it helps.

I'd love to get feedback on the solution you will use (this one or another)

jphautin’s picture

Component: Code » Documentation
Assigned: Unassigned » jphautin
jphautin’s picture

Hello,

The step 7 of the process is now possible without any code. The 8.x branch is now able to do it with drush command 'exif-import'.
I will try to backport to 7.x branch for nodes at least.

regards,

spgd01’s picture

To skip #7 use EXIF on the file entity fields so that we can use a single node for a image gallery with media module and then views to access the individual images and display each image's EXIF data in the view. I have everything set so far and am on to creating the views next. I will report how it works.

Tonton2’s picture

I created a [field_image] AND a [field_photo] (these are their machine name, both are an 'image' type of field').
I created some other fields, to display the exif values, which use the 'metadata from image' widget. Only [field_image] is offered as the source to retrieve data from.
I also tried with a 'file' field, but I couldn't get to use it as a reference either.
The 'file entity' module is installed.
Did I skip some step in the instructions?

Tonton2’s picture

I commented before I actually tried to add field to the 'file' type. Comment #5 works fine for me, thank you and sorry for asking a dumb question.

I keep on wondering, though…
I created an 'entity reference' field in my 'node' type, where I can pick my different files. Is there any way for the taxonomy terms attributed to the file to be attributed to the containing node as well

JoeJava’s picture

Original issue poster here.
Had everything working up to step six, then got pulled away to do other things.
Finally have time to return to solving this problem.
Updating to Drupal 8 is NOT an option.
Updated from 7.x-1.8+7-dev to 7.x-1.8 (no other changes made) and now I get ZERO meta-data extracted.
I updated using the built in update feature built into Drupal 7.
Any suggestions welcome.