Configuring a theme vs item-metadata.php

I modified the item display of the theme I'm using through item-metadata.php, which is placed in the items folder for that theme.
But then I went into the Admin module and Configured the theme to only show a limited number of Dublin Core fields on the item page. I figured it would be easier than a bunch of if loops in item-metadata.php.
Alas, from what little I can glean from looking at the custom_show_item_metadata function in application/views/scripts/functions.php it seems that this now overrides the changes I've made to item-metadata.php.
So am I correct in thinking I can't configure the theme through the omeka admin module if I want to do other things with item-metadata.php?

Huh. I'm going to file this as an issue for us to fix. It looks like when you configure the theme to limit the Dublin Core fields, Omeka actually ignores item-metadata.php altogether and builds the html in a completely different way, but one that looks (mostly) the same. This is so the code can check whether the Dublin Core element should be displayed, but does have the effect of ignoring the changes you made to item-metadata.php

That said, this should be a fix:

1. In your new item-metadata.php file, add the following lines before the foreach loop begins:

<?php
        $dcFieldsList = get_theme_option('display_dublin_core_fields');
        $dcFields = explode(',', $dcFieldsList);
?>

2. In your items/show.php file, replace

<?php echo custom_show_item_metadata(); ?>

with

<?php echo show_item_metadata(); ?>

If you were passing any parameters to custom_show_item_metadata, pass the same ones to show_item_metadata.

Hope that helps

I put those lines in the two files and find that my item-metadata.php changes show up fine now, but my pages don't respond to changes I initiate through the Configure Theme form.