【问题标题】:Check User Page Permission with PageID Concrete5使用 PageID Concrete5 检查用户页面权限
【发布时间】:2017-08-28 11:16:24
【问题描述】:

我正在使用 $page->getCollectionChildrenArray(true) 从其子页面中的具体5 8.2.1 页面上填充内容,但问题是它输出的页面用户无权查看。如果登录的用户无权查看该页面,我想添加一个检查以停止输出内容。我在Checking Permissions Against Other Users or Groups 上找到了以下文档,但我似乎无法弄清楚如何让它适用于我的情况。我有示例代码中的 pageID,所以如果我可以使用它会很有帮助。

示例代码

<?php $curriculums = $page->getCollectionChildrenArray(true);
 if(count($curriculums) > 0 ) { ?>
<section class="display-box">
    <?php for ($x = 0; count($curriculums) > $x; $x++) {
            $curriculum = Page::getByID($curriculums[$x]); ?>
    <?php echo "<article><header><h2>".$curriculum->getCollectionName()."</h2></header>";
        $desc = $curriculum->getCollectionDescription();
        if ($desc){ ?>
        <main><?=$desc;?></main>
        <?php } echo "<a class='box-link' href='".$curriculum->getCollectionPath()."'>View ".$curriculum->getCollectionName()."&nbsp;&nbsp;<i class='fa fa-arrow-circle-right' aria-hidden='true'></i></a>";
            echo "</article>";
        } ?>
</section>
<?php } else {echo '<p class="no-message">There are no modules available for this curriculum at this time.</p>';} ?>

我是混凝土 5 的新手,因此我们将不胜感激。

【问题讨论】:

    标签: php permissions concrete5-8.x


    【解决方案1】:

    终于找到了有效的代码

    $curriculum = Page::getByID($curriculums[$x]);
    $curp = new Permissions($curriculum);
    if($curp->canViewPage()) {}
    

    【讨论】:

      猜你喜欢
      • 2012-11-17
      • 2014-09-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-02
      • 1970-01-01
      • 2014-04-27
      相关资源
      最近更新 更多