How to "freeze" a View at the time of publishing? I have a content type for publishing a node once a week (type A) - on Saturday night/Sunday morning - that needs to show, as an attachment, a list of some other nodes (type B) that go live daily during the week (one node a day)
I have a view that puts together nodes of type B for 6 days of week - Monday through Saturday, so I have a filter on Post Date between 'last Sunday' and 'now' and I limit the number of nodes to 6. Then I use Viewfield to show the view of nodes B on content type A - and it all seems to work, but! (there are always those 'buts', right??) - I want to 'freeze' the View's content at the time of publishing - so if somebody will click on the type A node two weeks from now, the list of the type B nodes should be relevant to the week the type A node was published on - so, I need to somehow filter the type B nodes view using an "external date" parameter 
How do I do that?
I thought about the relationship angle and couldn't find one but I have been known to be blind in the past to things in front of me and instead went the hook_views_pre_view() route...

function YOUR_CUSTOM_MODULE_views_pre_view(&amp;$view, &amp;$display_id, &amp;$args) {

  if ($view-&gt;name=='last_sunday_and_now') { // or whatever your View is named

    // see what we have to work with...

    $filters = $view-&gt;display_handler-&gt;get_option('filters');
    drupal_set_message('&lt;pre&gt;Before: ' . print_r($filters, TRUE) . '&lt;/pre&gt;');

    // here on my box it is 'date_filter' so let's change things up

    $filters['date_filter']['default_date'] = // set this to whatever you want instead of "Last Sunday"
    $filters['date_filter']['default_to_date'] = // set this to whatever you want instead of "now"

    $overrides = array();
    $overrides['filters'] = $filters;

    foreach ($overrides as $option =&gt; $value) {
      $view-&gt;display_handler-&gt;override_option($option, $value);
    }

    // let's see what we have...

    $filters = $view-&gt;display_handler-&gt;get_option('filters');
    drupal_set_message('&lt;pre&gt;After: ' . print_r($filters, TRUE) . '&lt;/pre&gt;');

  }

}


It's up to you to define the logic of what to set the dates to, but if this is sitting on a node, you can grab the post date of it via menu_get_object() pretty readily and then use any of the various date and time functions to create the dates.