コード例 #1
0
 * Build out menu, flush DB at first
 */
$core_path = $modx->getOption('menubuilder.core_path', null, $modx->getOption('core_path') . 'components/menubuilder/');
require_once $core_path . 'model/menubuilder/MenuBuilder.php';
$placeholder = $modx->getOption('placeholder', $scriptProperties, null);
$menuBuilder = new MenuBuilder($modx);
if ((bool) $modx->getOption('debug', $scriptProperties, false)) {
    $menuBuilder->setDebug();
}
$branch_parents = $modx->getParentIds($modx->resource->get('id'));
// @TODO set via context_key:
$site_start = (int) $modx->getOption('site_start', null, 1);
/**
 * Now get user options:
 */
$menuBuilder->setOption('startId', (int) $modx->getOption('startId', $scriptProperties, 0))->setOption('displayStart', (bool) $modx->getOption('displayStart', $scriptProperties, false))->setOption('resourceColumns', $modx->getOption('', $scriptProperties, null))->setOption('viewHidden', (bool) $modx->getOption('viewHidden', $scriptProperties, false))->setOption('viewUnpublished', (bool) $modx->getOption('viewUnpublished', $scriptProperties, false))->setOption('viewDeleted', (bool) $modx->getOption('viewDeleted', $scriptProperties, false))->setOption('templates', $modx->getOption('templates', $scriptProperties, null))->setOption('contexts', $modx->getOption('contexts', $scriptProperties, $modx->context->key))->setOption('limit', $modx->getOption('limit', $scriptProperties, 0))->setOption('offset', $modx->getOption('offset', $scriptProperties, 0))->setOption('scheme', $modx->getOption('scheme', $scriptProperties, $modx->getOption('link_tag_scheme')))->setOption('where', $modx->getOption('where', $scriptProperties, null))->setOption('debugSql', (bool) $modx->getOption('debugSql', $scriptProperties, false))->setOption('rawTvs', $modx->getOption('rawTvs', $scriptProperties, ''))->setOption('processTvs', $modx->getOption('processTvs', $scriptProperties, ''))->setOption('limitLevelItems', $modx->getOption('limitLevelItems', $scriptProperties, ''))->setIteratorType($modx->getOption('iterateType', $scriptProperties, 'getIterator'))->setOption('activeResource', $modx->resource->get('id'))->setOption('siteStart', $site_start)->setOption('branchParents', $branch_parents);
/**
* TODO
   includeDocs
   excludeDocs
   limitDepthItems
   sortBy
   TVs
*  Selected columns
*/
/**
 * Now set what chunks will be used:
 */
foreach ($scriptProperties as $property => $value) {
    switch ($property) {
        case 'chunkWrapper':