@EVAL return $modx->runSnippet('listResourcesContext',array('setting_key' => 'site_references'));<?php
$contextKey = $modx->getOption('setting_key', $scriptProperties, 'default');
$document = $modx->getObject('modResource',$modx->resource->get("id"));
$key = $document->get('context_key');
$ctx = $modx->getContext($key);
$parent = $modx->getOption('parent',$scriptProperties,$ctx->getOption($contextKey));
$parentObj = $modx->getObject('modResource',$parent);
if (!($parentObj instanceof modResource)) { return ''; }
$resArray = $parentObj->getMany('Children');
$resources = array();
foreach($resArray as $res) {
if ($res instanceof modResource) {
$resources[] = $res->get('pagetitle') . '==' . $res->get('id');
}
}
$out = implode("||",$resources);
return $out;This question has been answered by donshakespeare. See the first response.
<?php
if(is_object($modx->resource)){ //<--check first if this is a resource before we start getting and giving anything
$document = $modx->getObject('modResource',$modx->resource->get("id"));
$contextKey = $modx->getOption('setting_key', $scriptProperties, 'default');
$key = $document->get('context_key');
$ctx = $modx->getContext($key);
$parent = $modx->getOption('parent',$scriptProperties,$ctx->getOption($contextKey));
$parentObj = $modx->getObject('modResource',$parent);
if (!($parentObj instanceof modResource)) { return ''; }
$resArray = $parentObj->getMany('Children');
$resources = array();
foreach($resArray as $res) {
if ($res instanceof modResource) {
$resources[] = $res->get('pagetitle') . '==' . $res->get('id');
}
}
$out = implode("||",$resources);
return $out;
}