- Get all pages in original multilingual section
- Get a page in destination multilingual section that has same collection path
- Make a relation
- Go to next page
<?php | |
defined('C5_EXECUTE') or die('Access Denied.'); | |
$app = \Concrete\Core\Support\Facade\Facade::getFacadeApplication(); | |
/** @var \Concrete\Core\User\User $u */ | |
$u = $app->make(\Concrete\Core\User\User::class); | |
$answered = 0; | |
if (isset($renderer) && is_object($renderer) && $u->isRegistered()) { | |
$context = $renderer->getContext(); | |
if (is_object($context)) { |
<?php | |
defined('C5_EXECUTE') or die("Access Denied."); | |
$c = Page::getCurrentPage(); | |
/** @var \Concrete\Core\Utility\Service\Text $th */ | |
$th = Core::make('helper/text'); | |
/** @var \Concrete\Core\Localization\Service\Date $dh */ | |
$dh = Core::make('helper/date'); |
<?php | |
// application/blocks/topic_list/templates/your_template_name.php | |
use Concrete\Core\Tree\Node\Node; | |
use Concrete\Core\Tree\Node\Type\Category; | |
use Concrete\Core\Tree\Type\Topic; | |
defined('C5_EXECUTE') or die("Access Denied."); | |
$json = []; |
<?php | |
// Tested on 8.5.2a1 | |
Events::addListener('on_before_render', function ($event) { | |
$view = $event->getArgument('view'); | |
if ($view->getViewPath() == '/page_not_found') { | |
$request = \Request::getInstance(); | |
if ($request->getPath() == '/foo' || $request->matches('/foo/*')) { | |
$view->setViewTheme('concrete'); |
<?xml version="1.0" encoding="UTF-8"?> | |
<concrete5-cif version="1.0"> | |
<groups> | |
<group name="Administrators" description="" path="/Administrators" package=""/> | |
<group name="Editors" description="" path="/Editors" package=""/> | |
<group name="Approvers" description="" path="/Approvers" package=""/> | |
</groups> | |
<users> | |
<user username="editor" email="[email protected]" language="ja_JP"> | |
<attributes> |
<?php | |
// application/src/Concrete/Url/MultilingualPageUrlResolver.php | |
namespace Application\Concrete\Url; | |
use Concrete\Core\Application\ApplicationAwareInterface; | |
use Concrete\Core\Application\ApplicationAwareTrait; | |
use Concrete\Core\Multilingual\Page\Section\Section; | |
use Concrete\Core\Page\Page; | |
use Concrete\Core\Url\Resolver\PageUrlResolver; | |
use Concrete\Core\Url\Resolver\UrlResolverInterface; |
<?php | |
// application/bootstrap/app.php | |
$dh = $app->make('helper/concrete/dashboard'); | |
$director = $app->make('director'); | |
$director->addListener('on_before_render', function ($event) use ($dh) { | |
/** @var \Concrete\Core\View\View $view */ | |
$view = $event->getArgument('view'); | |
$page = \Concrete\Core\Page\Page::getCurrentPage(); | |
$p = new \Concrete\Core\Permission\Checker($page); |
<?php | |
defined('C5_EXECUTE') or die("Access Denied."); | |
/** @var \Concrete\Core\Page\PageList $list */ | |
// Start Date is earlier than tomorrow | |
$tomorrow = \Carbon\Carbon::tomorrow(); | |
$list->filterByAttribute('start_date', $tomorrow->format('Y-m-d'), '<'); | |
// End Date is later than today | |
$today = \Carbon\Carbon::today(); | |
$list->filterByAttribute('end_date', $today->format('Y-m-d'), '>='); |
Whoops\Exception\ErrorException thrown with message "require(/path/to/concrete5/application/config/doctrine/proxies/__CG__ConcreteCoreEntityExpressEntity.php): failed to open stream: No such file or directory"
Add application/config/concrete.php
file (or modify it) like below: